Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The bleeding edge of Android Development

The bleeding edge of Android Development

Hyped by that new library? Do you want to follow the trend and implement a new technology because of reasons?

With this talk I try to show a different point of view of all this trends regarding new technologies and the price of using them without proper thinking.

Alberto Ballano

October 14, 2016
Tweet

More Decks by Alberto Ballano

Other Decks in Programming

Transcript

  1. A common sickness among developers Hail to acclaim enthusiastically Idealize

    to regard as perfect Prejudice to form an opinion before enough info is available
  2. A common sickness among developers Hail to acclaim enthusiastically Idealize

    to regard as perfect Prejudice to form an opinion before enough info is available Sacrifice to stop having something good in order to achieve something
  3. A common sickness among developers Hail to acclaim enthusiastically Idealize

    to regard as perfect Prejudice to form an opinion before enough info is available Sacrifice to stop having something good in order to achieve something Tear to move or behave with force, violent haste, or energy
  4. A common sickness among developers Hail to acclaim enthusiastically Idealize

    to regard as perfect Prejudice to form an opinion before enough info is available Sacrifice to stop having something good in order to achieve something Tear to move or behave with force, violent haste, or energy Early adopt to be one of the first to start using a new product
  5. A common sickness among developers H I P S T

    E R Hail to acclaim enthusiastically Idealize to regard as perfect Prejudice to form an opinion before enough info is available Sacrifice to stop having something good in order to achieve something Tear to move or behave with force, violent haste, or energy Early adopt to be one of the first to start using a new product Reject to refuse to accept or agree with something
  6. A common sickness among developers H I P S T

    E R Hail to acclaim enthusiastically Idealize to regard as perfect Prejudice to form an opinion before enough info is available Sacrifice to stop having something good in order to achieve something Tear to move or behave with force, violent haste, or energy Early adopt to be one of the first to start using a new product Reject to refuse to accept or agree with something
  7. How to identify if you are "infected" Do you… •

    Try to avoid getting hyped by technology trends?
  8. How to identify if you are "infected" Do you… •

    Try to avoid getting hyped by technology trends? • Consider the pros and cons of including new technology in a project?
  9. How to identify if you are "infected" Do you… •

    Try to avoid getting hyped by technology trends? • Consider the pros and cons of including new technology in a project? • Evaluate your needs and the project needs to select the best technology?
  10. How to identify if you are "infected" Do you… •

    Try to avoid getting hyped by technology trends? • Consider the pros and cons of including new technology in a project? • Evaluate your needs and the project needs to select the best technology? • Admit when some trendy technology doesn't fit and drop it?
  11. How to identify if you are "infected" Do you… •

    Try to avoid getting hyped by technology trends? • Consider the pros and cons of including new technology in a project? • Evaluate your needs and the project needs to select the best technology? • Admit when some trendy technology doesn't fit and drop it? Hint: If you answer is NO to any of those, you are partially infected ;)
  12. The opposite extreme: Old School Dev • Time investment is

    bigger • Value (for the company) could be bigger
  13. The opposite extreme: Old School Dev • Time investment is

    bigger • Value (for the company) could be bigger • Risk is much higher
  14. How? Sum up Regarding new technology(libs/patterns/frameworks/languages): • Implementation and maintenance

    always comes with a cost, don’t just include them because of the “trend” (Time investment). • They provide solutions for problems, consider using them when they solve one or when the benefit is bigger than the cost (Value). ◦ ButterKnife ◦ Kotlin ◦ Rxjava • Think about how complicated is the implementation (+is it a big change?). Plus check how well maintained is the lib (+do you understand it?) (Risk)