Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Minimum Viable Development
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Donn Felker
March 15, 2016
Programming
9.7k
4
Share
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
See All by Donn Felker
Testing for Success in the Real World
donnfelker
3
420
Realm - Droidcon 2016
donnfelker
7
410
Realm - NY Android Meetup
donnfelker
1
540
Realm - a New, Easy to Use Mobile Database & Object Framework
donnfelker
8
350
Understanding Build Variants
donnfelker
3
180
Android From The Trenches
donnfelker
11
920
Starting and Growing Your Career as a Freelancer/Consultant
donnfelker
6
330
Building Web APIs with Hapi.js and MongoDB (Mongoose)
donnfelker
11
6.8k
Approaches to Managing Genomic (DNA) Data
donnfelker
0
110
Other Decks in Programming
See All in Programming
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
150
Running Swift without an OS
kishikawakatsumi
0
850
[RubyKaigi 2026] Require Hooks
palkan
1
240
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
290
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
3
700
GoogleCloudとterraform完全に理解した
terisuke
1
160
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
190
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
事業会社でのセキュリティ長期インターンについて
masachikaura
1
270
Kingdom of the Machine
yui_knk
2
960
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
1.1k
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
220
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
HDC tutorial
michielstock
2
640
The untapped power of vector embeddings
frankvandijk
2
1.7k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
160
It's Worth the Effort
3n
188
29k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
200
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
200
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Exploring anti-patterns in Rails
aemeredith
3
330
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
170
Transcript
Minimum Viable Development Get stuff done, ship on time, and
stop fussing with analysis paralysis @donnfelker
Donn Felker » Fragmented Podcast w/ Kaushik Gopal » Teaching
#AndroidDev Caster.IO » #AndroidDev Digest (androiddevdigest.com) » AndroidJobs.IO » 4x Android Author » Consultant / Intl. Speaker
How this talk is organized 1. Soft Skills 2. Tactics
Paradigm Shift The majority of getting things done is mental
Minimum Viable Development
Using the minimum amount of effort & time to accomplish
a development task to move the business forward.
Isn't that what we all do anyway?
Perfectionism and maybe a little bit of FOMO
Perfectionism Example The Insurance company
Analysis Paralysis
#AndroidDev Examples
Should I use Fragments or custom views or something like
Flow and Mortar?
Should I re-write my entire app to use RX?
Should I use this new MVP FRAMEWORK?
how do you keep analysis paralysis at arms length?
Before you make any new dev decision, ask yourself this
-
Is this going to enable me to ship faster?
Does this enable the code to be maintainable?
But ... is shipping faster really the only goal?
An early stage startup with a short runway needs to
prove a market faster than an established Fortune 500 company.
The type of business determines how you should develop
Think like a business owner
Everything is an Experiment
Ok, Stop. Story Time
Everything is an Experiment
Let go of the emotional attachment to code. The code
is not your identity
"But, my Code is art, man..."
Your code is art. But its art that's sold to
someone else. Once it's done, let got of it.
Tactics to Ship On Time
Timeboxing
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.
Location Oriented Development
Meetings are no longer than 15 minutes
Place all meetings at end or beginning of work day.
Makers Schedule, Managers Schedule - Paul Graham
Get Creative Think outside of the box
An Example
None
None
Use what works. Use what you know.
Android Libs that Help me move faster
Dagger Butterknife RxJava Retrofit Timber Realm
So, Should you use Retrolambda, RxJava, MVP and Flow and
Mortar?
It Depends. Just ask yourself ...
Does it enable me to ship faster with maintainable code?
Thank You