“Now, when coding, I try to think: ‘how can I write this such that if people saw my code, they’d be amazed at how little there is and how little it does’.”
golden. i’ve been trying to pound this concept into my head lately, and this is a very well-stated version of it.
“Perfection is achieved, not when there is nothing left to add, but when there is nothing left to take away.”
The first point hit home big time. When you’re doing a startup you feel like every day is precious and the tide of change is racing along impossibly fast. It’s healthy to remember that the world doesn’t reinvent itself every month. The problem you’re working on now will probably still be relevant in 1-2 years.
It’s true that you rarely have to work fast because the world will leave you behind otherwise (though that has occasionally been the case with startups we’ve funded). The reason you have to work fast is that your initial idea is probably wrong, and you have to iterate till you get it right.
How slowly things change.
depends on the context. for huge macro level projects e.g. iPhone reshaping cell phone industry or FB having Google size revenue, ebay’s network effects being broken, that all takes time.
but in the same time period (past 2.5 years) a lot of things have completely changed. FB platform has gone from launch to supporting companies that could IPO (and made a whole load of single developers v rich). social gaming has gone from scrabulous to now posing a credible threat to the entire console gaming industry. the wii destroyed the xbox and ps3 within its first year of launch and now sells more than both of them combined.
i’d argue that it’s the faster moving trends that impact startups and startup opportunities more than the slower moving macro trends.
Tied to this, the realization that a good product is so much more important than first mover advantage. Obvious, but keeps surprising me. Facebook, the iPhone, Dropbox, Skype, etc., have an amazing array of failed predecessors.