django mvp
How to launch an MVP
with django
by yourself
http://slid.es/kyen99/django-mvp
Kai Yen
CTO, JWT INSIDE
kai.yen@jwt.com
Kai Yen
Founder, programmer
http://careermat.ch
@kyen99
Why MVP?
(minimum viable product)
Validate your hypothesis
with early adopters
Why Django?
(it's fast to develop in)
Why so fast? (IMHO)
- MVC+ORM+Templating = super fast dev
-
Loose coupling
- easier to plug in third-party apps
- Explicit (over implicit) - less overriding/convention
- Batteries included - less time spent reinventing
- Large community - many tools, apps and docs
- Documentation - excellent code docs
My Experience
One weekend researching platforms
One weekend learning Django
Six weeks (only nights + weekends)
to MVP launch
Don't get
Distracted
Partial list of distractions
- Scalability
- Security ratholes
- Replacements for built-ins
- Social integrations
- Ajax
- Refactoring
- System administration
- Continuous integration
- Cross-browser testing
Write it down
(so you can do to it later)
- Trello
- #TODO:
Plan to
iterate
Things to do with "hello world"
-
Check it into git
- Set up south
- Set up boto/storages
- Write django tests
- Deploy NOW
Don't
Forget
About your users
- Design matters
-
User Experience
- User feedback
- Phone/tablet/TV
Be Smart-Lazy
Assume...
- Every service you need already exists in the cloud
- Every functionality you need already exists in a module
- Every algorithm you need has already been written
- Every problem you come across has already been solved
- Django is the glue
Live
Demo
(I hope)
Why Heroku?
- Fast to deploy and iterate
- Excellent Django support
- Lots of useful add ons
- First "dyno" of every site free
- Easily scalable later
How heroku works
(as far as we're concerned)
$ git push heroku master
[ attempt bootstrap
django project and
deploy to heroku ]
[ Attempt south migration ]
Free and
Cheap tools
Planning and support
- Trello
- LucidCharts
- Dropbox
- Google Drive
Development
- H5BP
- Cloud9
- CDNJS
- Bootstrap/Gumby
- Compass
- Git flow
Deployment
- Heroku, dotCloud, Google AppEngine
- Amazon S3
- CDNJS
CareerMat.ch
Django stuff
- Django contrib (admin, auth, humanize)
- Bootstrap_toolkit
- South (migrations)
- Boto/storages (static storage)
- djangovoice (user feedback)
- zinnia (blog)
- registration, invitation, impersonate
- voting, gravatar, tagging, mptt
Total cost: $0
Deployment
- Heroku (1 dyno)
- Heroku SSL endpoint - $20/mo
- Heroku addons (postgresql, mailgun)
- CDNJS (library hosting)
- DNSimple (dns alias record) - $2/mo
- S3 (static asset hosting) < $1/mo
Total cost: $23/mo
Misc
- Dropbox (repo storage)
- Trello (todo list)
- LucidCharts (diagrams)
- Google Fonts
- Google Analytics
- Quantcast (analytics)
Total cost: $0
django mvp
By kyen99
django mvp
- 1,720