Hypothesis driven development

Every startup goes through phases of limbo. Often, when a dev founder finds herself in this situation, she tries to squeeze out of it by more programming. Writing code gives us programmers a sense of doing something (even though it may not be useful). 

I'm making myself a framework to combat this. It involves the following steps:

  1. Start with a hypothesis. Something like "People will use this for X", or "People will prefer this instead of Y" etc. Define who "people" are. Define the test. What will tell me that the hypothesis is true? A good hypothesis is narrow (regarding its audience as well as what's being tested ). Coming up with a testable hypothesis is the most important step. 
  2. Decide what needs to be built to test this hypothesis. Chuck everything that does not do this - it's extraneous. Estimate time required to build this
  3. Build it. In more or less the estimated time. 
  4. Run the test. This usually means showing it to some users. Become better at interviewing users. Focus on questions that test the hypothesis

At the end of every such cycle, articulate what you learnt. Repeat.