Startup checklist

The past few months I’ve worked with a few startups and it’s made me realize that it’s super easy to forget very basic, but crucial things when developing web software. The following is a big brain dump of everything I could think of.

  • Source code management (git, svn, mercurial)
  • Branches in scm for development and production
  • Separate test and prod server
  • Deployment scripts/tools
  • DB upgrade scripts
  • Some sort of framework (Django, Rails, CodeIgniter, anything)
  • CSS reset
  • HTML5 doctype
  • Follow yslow rules
  • Bug tracking software
  • Specs!
  • Feature list
  • Roadmap
  • Schedule
  • QA
  • Code review
  • Monitoring – nagios, munin
  • Print out scm revision/changeset in comment at bottom of webpage
  • Print out server name in comment at bottom of webpages
  • Coding standards/guidelines
  • Automated benchmarking/profiling, SLAs

What else?