Senko Rašić pushes back on the AI-era dismissal that “LLMs may be good at coding, but software was never the hard part.” He argues it insults programmers, then turns the same skeptical lens on the opposite cliché — that deciding what to build is the real difficulty.
If coding is easy, why were programmers in high demand and well paid even before ZIRP? Why the 10x rockstar hunts, leetcode gauntlets, burnout, and doorstoppers like Clean Code, The Pragmatic Programmer, and The Art of Computer Programming? “If coding is easy, why is software so damn buggy?”
- The “figuring out what to build is the hard part” claim fails the same test: if it were true, product managers would be paid more and interviewed more rigorously than developers
- “Most work is stakeholder communication” misdescribes the median programmer, who mostly wants clear priorities that don’t change every two days
- Both extremes are cope: “code is easy” and “code is sacred unautomatable art” are ways of burying your head in the sand
- What doesn’t change: software gets more complex, bit-rot and entropy are facts of life, users want more and spend less
- What changes: the specific technologies — punch cards, COBOL, C memory bugs, mysql_real_escape_string — all become obsolete
The advice is practical on both sides of the career ladder. Seniors should invest in adjacent fields — UX, customer interviews, business strategy. Juniors should deepen fundamentals like pointers, recursion, memory hierarchy, and HTTP even if their daily stack never touches them.
The essay ends with the point that matters most: don’t outsource your understanding, judgement, empathy, or taste to AI — whether you think code is trivial or sacred, the work of deciding what is worth building and how stays yours.