Daily Thought - 2024-10-20
< back to listI try my absolute best to never solve a general problem. This has been a painful lesson I had to learn over and over. Not only is a general problem much harder to solve than a specific one, it's also much easier to get the solution wrong. Because I can never fully grasp the full scope of what I'm trying to do.
So how do I manage to work on a programming language? I do my best to be very clear on what I want to do right now, and then I solve a specific problem that arises from that. Once that's done, I make sure that I still know what I want, then I solve the next problem.
At some point, one of those problems leads me back to an earlier solution, that is now a bit too specific. So I expand it to solve my new problem, while trying not to un-solve the previous one. Doing this, I slowly approach a more general solution incrementally. And I like that much more. Because at every step, it's very clear whether I'm done, or if there's more work to do.