Why Programming Is Both Captivating and Agonizing
Why is programming so captivating, yet so agonizing?

I explore why programming remains a paradoxical craft that is both deeply joyful and incredibly difficult. Drawing on Frederick P. Brooks Jr.'s concept of the 'Tar Pit,' I explain how complex systems trap teams in interacting problems. I also highlight the intrinsic joys of creation and the harsh realities of perfectionism, showing why turning a simple program into a useful product is so costly.
Programming is fun because it gratifies creative longings built deep within us, and taps into sensibilities we all share.
- pelagicAustral
I only find it to be painful when done for the corporate world... when I go home, even after 7 hours at the office, I find it therapeutic to push to main, not have a CI, not write tests, test in production, commit with one-liners like I'm asking someone if they want a beer, and overall just code any random idea that crosses my mind... even more so now with AI, because now I can get my ideas out there faster, and believe me, this is serious crapware, but who cares? I don't...
- faangguyindia
Programming doesn't cause me pain or feel like work. I build projects in my free time because I enjoy solving problems.
One thing I love about programming is that it forces me to understand ideas at a much deeper level than simply reading about them. Writing code requires both step by step reasoning and high-level abstraction. That combination often leads to better solutions and a clearer understanding of the problem.
I often ask myself, "Would I still do this if I weren't getting paid?" The answer is usually yes. That's why many of my projects are completely free, with no ads or subscriptions.
- bodge5000
Aside from the human side of it which is often nothing to do with programming itself, I'd say anything that is captivating is only so because its agonizing. If you have a problem to solve and instantly know the solution, there was no problem, just manual labour left not done (using that in the most technical sense). Solving problems is captivating, but it has to be hard or there'd be no problem at all.
- meerita
I think what is agonizing is either the process imposed by the company or the architecture you are working with. Both can lead to immense frustration. When you have good architecture and a good development process, things become much less frustrating. I wanted to add one more thing: if you work on any idea you don't like, it doesn't matter the language, the platform, the architecture or the process. In the end you will feel the pain and frustration.
- juancn
This is one of my favorite quotes from Brooks:
"In practice, actual (as opposed to formal) authority is acquired from the very momentum of accomplishment."
Was this AI paraphrased?
From the article:
"In practice, real authority comes not from titles but from influence built through consistently delivering results."
Same meaning, different wording.
Full book: https://web.eecs.umich.edu/~weimerw/2018-481/readings/mythic...