I miss thinking hard.
Before you read this post, ask yourself a question: When was the last time you truly thought hard?
By âthinking hard,â I mean encountering a specific, difficult problem and spending multiple days just sitting with it to overcome it.
a) All the time. b) Never. c) Somewhere in between.
If your answer is (a) or (b), this post isn't for you. But if, like me, your response is (c), you might get something out of this, if only the feeling that you aren't alone.
First, a disclaimer: this post has no answers, not even suggestions. It is simply a way to vent something I've been feeling for the last few months.
The Builder and The Thinker
I believe my personality is built on two primary traits:
The Builder (The desire to create, ship, and be pragmatic).
The Thinker (The need for deep, prolonged mental struggle).
The builder is pretty self explanatory, itâs motivated by velocity and utility. It is the part of me that craves the transition from âideaâ to âreality.â It loves the dopamine hit of a successful deploy, the satisfaction of building systems to solve real problems, and the knowledge that someone, somewhere, is using my tool.
To explain the Thinker , I need to go back to my university days studying physics. Every now and then, we would get homework problems that were significantly harder than average. Even if you had a decent grasp of the subject, just coming up with an approach was difficult.
I observed that students fell into three categories when facing these problems (well, four, if you count the 1% of geniuses for whom no problem was too hard).
Type 1: The majority. After a few tries, they gave up and went to the professor or a TA for help.
Type 2: The Researchers. They went to the library to look for similar problems or insights to make the problem approachable. They usually succeeded.
Type 3: The Thinkers.
I fell into the third category, which, in my experience, was almost as rare as the genius 1%. My method was simply to think. To think hard and long. Often for several days or weeks, all my non-I/O brain time was relentlessly chewing on possible ways to solve the problem, even while I was asleep.
This method never failed me. I always felt that deep prolonged thinking was my superpower. I might not be as fast or naturally gifted as the top 1%, but given enough time, I was confident I could solve anything. I felt a deep satisfaction in that process.
The Conflict with AI
That satisfaction is why software engineering was initially so gratifying. It hit the right balance. It satisfied The Builder (feeling productive and pragmatic by creating useful things) and The Thinker (solving really hard problems). Thinking back, the projects where I grew the most as an engineer were always the ones with a good number of really hard problems that needed creative solutions.
But recently, the number of times I truly ponder a problem for more than a couple of hours has decreased tremendously.
Yes, I blame AI for this.
I am currently writing much more, and more complicated software than ever, yet I feel I am not growing as an engineer at all. When I started meditating on why I felt âstuck,â I realized I am starving The Thinker.
âVibe codingâ satisfies the Builder. It feels great to see to pass from idea to reality in a fraction of a time that would take otherwise. But it has drastically cut the times I need to came up with creative solutions for technical problems. I know many people who are purely Builders, for them this era is the best thing that ever happened. But for me, something is missing.
The Trap of Pragmatism
I know what you might be thinking: "If you can âvibe codeâ your way through it, the problem wasnât actually hard."
I think that misses the point. Itâs not that AI is good for hard problems, itâs not even that good for easy problems. Iâm confident that my third manual rewrite of a module would be much better than anything the AI can output. But I am also a pragmatist.
If I can get a solution that is âclose enoughâ in a fraction of the time and effort, it is irrational not to take the AI route. And that is the real problem: I cannot simply turn off my pragmatism.
At the end of the day, I am a Builder. I like building things. The faster I build, the better. Even if I wanted to reject AI and go back to the days where the Thinker's needs were met by coding, the Builder in me would struggle with the inefficiency.
Even though the AI almost certainly won't come up with a 100% satisfying solution, the 70% solution it achieves usually hits the âgood enoughâ mark.
So, what now?
To be honest, I donât know. I am still figuring it out.
I'm not sure if my two halves can be satisfied by coding anymore. You can always aim for harder projects, hoping to find problems where AI fails completely. I still encounter those occasionally, but the number of problems requiring deep creative solutions feels like it is diminishing rapidly.
I have tried to get that feeling of mental growth outside of coding. I tried getting back in touch with physics, reading old textbooks. But that wasnât successful either. It is hard to justify spending time and mental effort solving physics problems that arenât relevant or state-of-the-art when I know I could be building things.
My Builder side wonât let me just sit and think about unsolved problems, and my Thinker side is starving while I vibe-code. I am not sure if there will ever be a time again when both needs can be met at once.
- Philipp Mainländer