So, yes, I do feel like I've lost some of that very low-level skill. But maybe I've also been able to spend more time on a higher level skill? Maybe the doctors got worse with the images but had more cognitive resources to think about the patient's context?
Not sure.
But yes, I can't physically get myself to write code without an AI anymore. It feels so much slower, almost painful.
When I was in design school, as much of our work was in physical media — graphite, cut paper, paint, vine charcoal — as was practicing great kerning and getting experience with the digital tools. Even though you still had to make the individual strokes and choose appropriate tools in the digital realm, there was still a perception of the process that was obviously lacking among those that came from strictly digital backgrounds. It’s similar to seeing someone who’s only worked with photo references try life drawing — there’s an entire part of the cognitive process not being used when you’re drawing something that’s already 2D. Sure, they can learn, but unless they’re forced to, they’ll probably just keep taking a picture and drawing that. But image generating, even with extremely granular inpainting and such, is so different it’s not even comparable. I’d hesitate to say that someone with a lot of experience doing very advanced image generation would be dramatically further along than a complete beginner if they learned to draw which is not true of the photo reference artist, and even less true of a purely digital artist that did life drawing on a tablet.
Kind of like how millennials, many of whom always had access to technology, but also experienced dial-up-era computer use, are generally more technically savvy than the your stereotypical “iPad kid” that can’t even traverse a directory structure.
The code they submit for review no longer represents their thinking or their skill. The feedback loop for beginners is a bit broken.
What is their skill now? How is it displayed? How and where do we provide valuable feedback? I find myself just approving large PRs because I don't have the time to read it all.
I feel like I've let down a lot of developers this year.
I think the industry has, and we don’t get much out of individualizing it. Let’s not forget that this progression is a series of deliberate choices made by a handful of very influential people that couldn’t give a teaspoon of shit about developers beyond what their subscriptions bring in.
It’s not a super well-received opinion around here, but I think the economics of the large-scale services will mean on-device models are going to be where this all goes sooner or later. My gut says setting up a local LLM coding assistant will be more like choosing and setting up an ide. I don’t have a crystal ball though.
* There's meaning in all the little marks. Drawings are potentially layered with meaning. I was drawing a stick I found in the park, and thinking: this is the extent and the way in which the stick is straight or curved, and the specific way and form that it's knobbly, and that's all explained by how it grew; this green on it is the peculiar blue-green of lichen; it's a oak stick, I like oak; my drawing is just a stick, good, I might frame it, call it anti-art maybe. Some or all of that is expressed in the marks, though this becomes more apparent if I tell you that it is.
* So, an AI - diffusion - could undoubtedly draw a stick in an arty way. But to draw one that fits the above meanings, it has to be prompted with the meaning. The AI can't prompt itself, so there's a role for artist-as-prompt-writer. Whoopee, right, what fun. These prompts, if about graphical matters and a sort of meditation on the stick, would be essentially lies, because no such exploration of the form and significance of the stick would have really taken place without trying to draw it. It can't prompt itself or be honest.
* So to come up with the above words that might do as a prompt, I had to draw a stick. I had to learn by drawing a stick, even though I've been drawing for decades. Experience isn't the whole deal, otherwise the artist is only churning out filler material, which would be like AI art. Instead the artist has to explore all the time, while leaning on experience. The viewers are into that, they sense the excitement of exploration. They want to see an artist. Well, not exactly, most artists are unrewarding to look at (Brian Froud for instance), but they want to see creativity unfolding, over several pictures.
You can have non-graphical (non-mark-making) prompt-art, a bit like collage or photography, sure, but that's its own thing. Like you're saying, you can't just fake the craft forever, and even faking it once is less than ideal, unless you're narrowly focussed on output that meets targets, instead of meaning.
With programming, this might be different, since hitting targets and getting functionality might be all that's wanted, but I'm sure it depends.
Diffusion models basically record, classify, and amalgamate those decisions, which is why it’s so dang difficult to get generated art to look like something distinct. Not distinct like an existing artist, but genuinely unique.
The workflow of the prompter is very similar to an existing workflow in the art world: someone commissioning art. There’s often a discussion where the customer gives the artist a textual description, back-and-forth with sketches and preliminary versions, and sometimes revisions if the proposed final product isn’t what they wanted. Commissioning a piece of art is a creative process, but it’s not the same thing as being the artist. Even an art director who has extremely granular control over what they commission would never claim to be the artist. They’d get run out of town. I believe creating a collection though juxtaposition or even curation could be art, but you’d still never be the author of the contained pieces.
I am not convinced that there are tasks, like project management or architecture, that the Ai is inherently worse at.
I think you can also see the vague outlines that someone is going to have to be in charge of token cost.
10-20 years ago we had such high hopes for data and IoT, but it’s still just banal and mildly useful, full of walled gardens and property formats. General purpose AI may end up similar. My company has like 10 different MCPs to enterprise software we use that has context, but AI still needs lots of guidance.
You will have to write code to understand deeply what goes on at the low level. Without a solid understanding of the low level, you won’t truly know what optimal solutions look like on a high level. You will be flying by the seat of your pants, churning out code that works but has bad low level quirks sprinkled through the code base. The AI will say it’s fine, but you’re just building up shitty software. Feels like shit, run likes shit.
Once someone new comes along who has worked with the language manually and can get AI to produce effective high quality code, you’ve lost competitive advantage. They can build way better versions of whatever you do. You’re finished. You’re a low quality engineer.
The lack of attention does reduce the overall correctness of the system.
But, and unfortunately, in most situations the loss of correctness is more than made up for by the speed gains.
Unless you're building software that could kill someone, it's hard to reject the improved speed. The cost of delay is usually more damaging than the cost of incorrectness.
If that doesn’t apply, you are just writing toy apps or front ends that are of no real significance, so yes you could carry on with incorrect code in those cases, but it’s not much of a career either.
Welcome to the future, where we can create buggy, broken software at a higher velocity than ever before!
I've seen many bad developers become awful architects whose plans are completely impossible to put in practice. How do you know your higher level skills are actually any good?
More focused, better at reasoning about context.
Maybe good architects learn by starting as awful architects? Consider giving them more time.
Is 6 years enough to think they won't improve?
That's not the way the economics behind this work.
Supposing the AI priests are right (they aren't) and using AI creates a thought surplus on the user, freeing cognitive capacity to think of higher things. What do you think will said user's boss want to do with that surplus? Let the user develop higher-level cognitive abilities? I don't think so.
The doctors in the article performed worse post-AI: suppose AI saved them so much time that they did 100 exams in the time they used to take doing 10 exams. What will their employers do with that freed up labour time? They'll of course have the doctors do more exams and perhaps fire some now-redundant doctors that are no longer needed. The surviving doctors are left deskilled, doing the same or more work, and society gets worse quality medical care. But hey, its not all bad - the employer gets to save on labour, and shareholders will be happy.