$30 off During Our Annual Pro Sale. View Details »

Minimum Viable Development

Minimum Viable Development

Slides for the Minimum Viable Development talk given at Kotlin ∪ Android on March 14th, 2016.

Donn Felker

March 15, 2016

More Decks by Donn Felker

Other Decks in Programming


  1. Minimum Viable Development Get stuff done, ship on time, and

    stop fussing with analysis paralysis @donnfelker
  2. Donn Felker » Fragmented Podcast w/ Kaushik Gopal » Teaching

    #AndroidDev Caster.IO » #AndroidDev Digest (androiddevdigest.com) » AndroidJobs.IO » 4x Android Author » Consultant / Intl. Speaker
  3. How this talk is organized 1. Soft Skills 2. Tactics

  4. Paradigm Shift The majority of getting things done is mental

  5. Minimum Viable Development

  6. Using the minimum amount of effort & time to accomplish

    a development task to move the business forward.
  7. Isn't that what we all do anyway?

  8. Perfectionism and maybe a little bit of FOMO

  9. Perfectionism Example The Insurance company

  10. Analysis Paralysis

  11. #AndroidDev Examples

  12. Should I use Fragments or custom views or something like

    Flow and Mortar?
  13. Should I re-write my entire app to use RX?

  14. Should I use this new MVP FRAMEWORK?

  15. how do you keep analysis paralysis at arms length?

  16. Before you make any new dev decision, ask yourself this

  17. Is this going to enable me to ship faster?

  18. Does this enable the code to be maintainable?

  19. But ... is shipping faster really the only goal?

  20. An early stage startup with a short runway needs to

    prove a market faster than an established Fortune 500 company.
  21. The type of business determines how you should develop

  22. Think like a business owner

  23. Everything is an Experiment

  24. Ok, Stop. Story Time

  25. Everything is an Experiment

  26. Let go of the emotional attachment to code. The code

    is not your identity
  27. "But, my Code is art, man..."

  28. Your code is art. But its art that's sold to

    someone else. Once it's done, let got of it.
  29. Tactics to Ship On Time

  30. Timeboxing

  31. Example: A new, difficult, uncharted task - Give it 30

    minutes to see how far you can get. Or 1 hour. Maybe 2. Then re-evaluate.
  32. Location Oriented Development

  33. Meetings are no longer than 15 minutes

  34. Place all meetings at end or beginning of work day.

    Makers Schedule, Managers Schedule - Paul Graham
  35. Get Creative Think outside of the box

  36. An Example

  37. None
  38. None
  39. Use what works. Use what you know.

  40. Android Libs that Help me move faster

  41. Dagger Butterknife RxJava Retrofit Timber Realm

  42. So, Should you use Retrolambda, RxJava, MVP and Flow and

  43. It Depends. Just ask yourself ...

  44. Does it enable me to ship faster with maintainable code?

  45. Thank You