The last time I wrote memory-mapped screen graphics was… actually never. I wrote a very small amount of assembly, and was glad not to do it again. My formation for both — I like your Formation / Deformation dyad — however was complete. I debugged screen UI failures that landed in the memory-mapped domain, and I learned register manipulation, instruction stack dynamics, and bitwise arithmetic to a degree that enable me to understand and spot a class of bugs I wouldn’t otherwise recognize.
So why do we, as modern developers, not even notice those domains anymore, and also not suffer for the missing “formations?”
I propose it’s because those low-level systems work. Every time. They’re low-level, they were solved thousands of times over decades, and were eventually packaged en toto, and faded into the backdrop of ubiquity. The folks who packaged and embedded that functionality knew what they were doing - they had the Formation and embedded it.
I suspect I’m glossing a class of errors during the transition period when the embedding was not complete or not rock solid. But the engineers doing the work were literally “doing the work” and solidified the implementations.
Contrast that with what you’re identifying as proper skill loss. I’ve seen the paradigm pendulum swing too many times to be glib, but this transition really does feel different in kind, not degree.
The LLM tools don’t work in the way our historic low-level underpinnings “just work”. They’re not reliable. That’s one reason we can’t take our eye off the exercise quite yet.
The other main difference is the pressure to take our eye off the exercise. We’re not embedding tried and true solutions based on decades of experience, even though it may feel like that’s the value we (Seniors) bring to the exercise. What we’re actually doing is struggling to create the same or better outcomes, faster, at a decidedly non-deterministic, non-low level granularity with tools that alter their behavior on a pace that keeps us in a perpetual novice state.
It’s not obvious to me that this transition to a new state of craft or practice is comparable to historic phase changes. First, we — devs — are not driving it, not really. And second, we’re being asked (forced? lulled?) to abandon skills before the alternative has demonstrated its ability to replace and assume those skills. All while retaining responsibility for the failures.




