It boggles me we completely forgot that the world operated like this just 4 years ago
It boggles me we completely forgot that the world operated like this just 4 years ago
And I don't think it was ever necessary to go to the point where people just gave up authorship. These were choices made by adopting the "I'll do everything for you" agentic "harness" model that shipped with Claude Code but it was never inevitable.
e.g. we completely dropped fill-in-the-middle completion OG CoPilot auto completion model. That combined AI authorship with a human always in the mix and I actually really enjoyed it. It's just that the models involved were pretty stupid. We totally could have had IDE / shell / tooling integration that kept people in the driver's seat while automating parts of the drudgery away. Instead what we got was a simple chat loop with "oh, whatever, you go do it" being the ultimate result. Cuz, you'll totally review everything after and understand it, right?
The things should end by quizzing you on what was just made and if you don't pass, just throw it away. That'd be funny to watch.
One is:
1) Complex IDE integration where our AI model is called to assist users in making decisions, assisting them to do the things they already intended to do. It appears more as a function of the IDE rather than something separate. It shows off the intelligence of the model but doesn't show off any autonomy.
2) A separate tool that can be branded Anthropic. It takes over completely. It advances the narrative that we've already been spreading that AI is going to make some human jobs obsolete. It looks to employers (the actual people who spend money) like it replaces an expensive developer even if at first it requires one. It has minimal to no integration point.
Which do you think they'll approve. I think it has less to do with the user motivation and more with the producer's.
You can still write anything by doing it either small steps, or at once followed by a lot of refactors while skimming over code and asking tons of questions / making refinements via prompts, guidelines, test guardrails. A team can still reason and whitepaper about the same things. Devs who were previously shy to ask some specific details (to not seem dumb) can now confidently survey big codebases and get insights in whatever style they can swallow.
The bigger problem I see is that all this requires a lot of communication, and most importantly writing skills, something that disappears in thin air in the last decades.
Folks break everything all the time and looking at their PRs and messages are clearly just having the AI respond to everything for them and actually have no idea what they're doing.
And then other people doing the same thing approve their work (presumably not reading or understanding any of it) because then the other person will do the same for theirs.
Hopefully my experience is an anomaly though :)
The issue of course is that if you do invest the time, then you're no longer saving time by using AI. You're just spending it reading and trying to understand something you didn't write. And that can be unpleasant in its own way.
My hot take is that for parts of a system that can be considered its core, forming a deep understanding is almost always important, and so is knowing how the different business domains integrate and where the connection points are. For many others, a high level understanding is sufficient. The difference is that now, with AI, you can make that choice. Before, you had to write everything yourself, and for any sufficiently complex and long-lived system it became impossible to hold all of it in your head.
I believe that this is the most important thing... and something that people are afraid of. I've got dozens of personal projects and more than a few branches in my employers repo of things that didn't work... things that I tried, figured out it wasn't going anywhere and went to try some other approach.
I suspect that there's a bit of sunk cost fallacy going on elsewhere. "If I don't know how to do it, I'm not even going to try" and "I got this far, I'll keep doing it despite it being wrong."
As a programmer, I am often disappointed at the lack of curiosity in the language and how things could be done. My example would be people writing Java code as if it was still Java 7 - no streams, no Optionals... The fear of having to go back and do it again if using something new doesn't work they'll be in a worse position than if they did it the old way and not realizing that learning what doesn't work or seeing how things that didn't work in this situation may be the right thing for some other future problem.
> capacity to reason about it (during critical downtime) and communicate it
That's one of the things that's put into limelight in that talk.
I personally think that most of "Web Scale" software is inconsequential (inconsequential for its creators, not for users) - as there are no consequences for bugs and outages at all. A data breach -> slap on a wrist. Reputational damage because on an outage/data loss amidst general public? - almost impossible (clownstrike, anyone?)
The funny thing is that web scale software that's consequential is often in an ethically grey zone - but at least you won't be surrounded by colleagues who don't give a shit.
Unfortunately I learned that not everybody thinks this way. Some orgs do imperfectly fine without good engineering discipline, and that has been the case before AI... AI has only made it easier to give the appearance of good engineering, which is exactly the pre-AI goal of many orgs
I'd think that's what they call paradigm shift, and this probably repeated across generations from the introduction of the printing press, PC, the wheel, the internet to stochastic parrots that reduced what we still stubbornly insist require our special neurons to mere statistical modelling that can be aggressively scaled.
Now in the age of AI... we adopted another system from a team and when we asked for knowledge sharing to prep for the handover the answer we got was "do we still do that? Just ask Claude".
It's now been a few months. We've shipped features in this new system. I still have no idea how it works. Okay I kind of know, but only at a very shallow level.
AI is the worst thing to happen to our industry.