Hacker News new | ask | show | jobs
by cryptica 2307 days ago
Sometimes it requires a lot of thinking to come up with simple solutions.

Usually you need to consider a lot of alternative solutions in order to come up with the simplest solution and that takes time and a lot of thinking and a deep understanding of the requirements.

When I start a new complex project, in the early stages, there are entire days where I'm just thinking about stuff without writing any code. Then as the project moves forward, I spend less and less time thinking about things until I get to a point where it feels like the code pretty much writes itself because the design is aligned with my original goals.

You just have to be very clear about what your big goals are and where you're going to need flexibility from the beginning.

3 comments

Came here to validate that.

"Overthink it' first, and then smooth it down to its essential simplicity" is usually the process.

FYI the reason I don't like the musical analogy is because in that scenario, the tooling can easily overwhelm the creative process. You get caught up in the tools and literally never think about the problem.

I suppose a software analogy be might be using 1000x various frameworks to try to do something: you'd never get past the frameworks.

> Sometimes it requires a lot of thinking to come up with simple solutions.

Author here - I should have tweeted that instead of writing a blog post

Same here. Making things simple actually takes quite a lot of practice.