Ask HN: What's best for hacking, to build fast or to think hard?

6 points by read ↗ HN

6 comments

[ 6.6 ms ] story [ 30.3 ms ] thread
Think hard, then build fast. Nobody said you can't do both. There's a balance though: think too much, and your "perfect" system never gets built. Hack too fast and you're going to have to rebuild when you realize you did it completely wrong.

I think it can be personal too. I tend to be more slow and thoughtful. Once I get a really great idea, my fingers start flying, but until I get to that point, it's a lot of slow prototyping and trying to think of better ways to do it (to a point).

Find what balance works for you.

I wish there was a way to tell, preferably sooner than later, whether thinking hard or building fast is better than the other. How would you know if you're doing the right thing?
Practice, my friend! Pick a project and start working on it. A year later, you'll look back and chuckle at how obvious the flaws in the project were. Rinse and repeat. After a while, you just get a sense for "am I sitting around thinking too much?" or "hmm maybe I should plan this one out before jumping in."

One thing that took me years to learn is that the devil's in the details, especially if you're in uncharted territory. Thinking is what uncovers those details before you're forced to do a rewrite.

> How would you know if you're doing the right thing?

Does it work? Can you look over the code and think "I did this twice as well as my last piece of work?" Those are probably the best metrics.

  while (1) {
     Think() && Build() && GetFeedback()
     Exercise("1h")
     Sleep("8h")
  }
What's best for warfare, to move fast or strike hard?
germany and japan moved fast, the US and the USSR struck hard...