Likely the most valuable thing I’ve done working at a startup over the past few months is writing the simplest possible code, pushing it to it’s limits, and then rewriting a better version with improved knowledge.
It’s a simple workflow:
- Write the simplest thing that works.
- Push it to its limits, until it’s uncomfortable to use, then replace it with the simplest refactor that solves the problems which came up in the real world.
Compared to implementing a big project from the start, this lets you work and continue to deliver results with minimal downtime. It’s also more likely to end up with code that’s useful since you’re solving actual problems and not fictional ones.
Simple and works, very much the Facebook ethos.