This is 180 degrees from how to think about it.
The more thinking you do as ratio to less toil, the better. The more time to apply your intellect with the better machine execution to back that up, the more profit.
The Renaissance grand masters used ateliers of apprentices and journeymen while the grand masters conceived, directed, critiqued, and integrated their work into commissioned art; at the end signing their name: https://smarthistory.org/workshop-italian-renaissance-art/
This is how to leverage the machine. It's your own atelier in a box. Go be Leonardo.
Granted, that's not everywhere. There are absolutely places where you will be recognized for doing amazing work. But I think many feel pressured to use AI to produce high volumes of sub-par work instead of small volumes of great work
> see Bill Gate's famous quote about hiring lazy people
I think this is part of why all this is so contentious. There's been a huge culture shift over the last decade and AI is really just a catalyst to it. We went from managers needing to stop engineers from using too much abstraction and optimizing what doesn't need to be optimized to the engineers themselves attacking abstraction. Just look how people turn Knuth's "premature optimization is the root of evil" went from "get a profiler before you optimize" to "optimization? Are you crazy?"Fewer and fewer people I know are actually passionate about programming and it's not uncommon to see people be burned out and just want to do their 9-5. And I see a strong correlation with these people embracing AI. It makes sense if you don't care and are just trying to get the job done. I don't think it's surprising things are getting buggier and innovation slowed. We killed the passion and tried to turn it into a mechanical endeavor. It's a negative feedback loop
When was the last time you rebooted your OS, or even restarted your browser?
Software has never been as high quality as it is now.
The last 5 years have been a drastic change for me. For over a decade I've used a Linux desktop and a laptop with various OSes. But in the last 5 years we went from my Linux desktop (Arch of all things!) from having "typical Linux issues" to my macbook having 10x more (and my arch machine being incredibly stable).
Yes, big picture stuff everything is stable and general purpose computers have blurred the line with servers.
BUT there's also a lot of frustrating day to day bugs that did not exist even a year ago. This Apple keyboard bug [0]? Infuriating! I personally hit a similar issue multiple times a day where, despite auto correct being disabled, it will change the word previous to the one I'm typing, even though it was already correct. Worse, pressing backspace delete two words. I'm with this user from years ago... "Am I getting older or is it becoming unbearable?"[1]
Many of the big picture things? Fine. But that doesn't mean I'm not being killed by a million little cuts. That's the problem. They're everywhere and when you complain about any single instance it is easy to brush off. But it isn't a single instance. It is eating hours of my day in 5 sec intervals. That's "buggy as shit"
Not everyone is capable of being Leonardo
And even if everyone all of a sudden starts having ideas, only a handful will be useful and successful, and all the other ideas, and people who now have their future riding on them aren’t going to do well.
If everyone was Leonardo, what does the world look like? They can’t all be the greatest polymath of the age
LLM capabilities are tied to their model, and won't improve on their own. You learn the quirks of prompting them, but they have fixed levels of skill. They don't lie, because they don't understand concepts such as truth or deception, but that means they'll spout bullshit and it's up to you to review everything with a skeptical eye.
In this analogy, you aren't the master, you're one part client demanding work, one part the janitor cleaning up after their mistakes.
More often their master simply pointing out what they did wrong and instructing them to fix or improve it.
So well put. 100% agree. Paraphrasing Steve Jobs I think of it as a mech suit for the mind.
I'm a professional developer, and nothing interesting is happening to the field. The people doing AI coding were already the weakest participants, and have not gained anything from it, except maybe optics.
The thing that's suffocating is the economics. The entire economy has turned its back on actual value in pursuit of silicon valley smoke.
As an engineer that's lead multiple teams including one at a world leading SaaS company, I don't consider myself one of the weakest participants in the field and neither do my peers generally. I'm long on agents for coding, and have started investing heavily in making our working environment productive not only for humans, but now for agents too.
Like for instance we have a task runner in our project that provides a central point to do all manner of things like linting, building, testing, local deployment etc. The build, lint and test tasks are shared between local development and CI. The test tasks run the tests, take the TRX files and use a library to parse it to produce a report. So the agent can easily get access to the same info as CI is putting out about test failures. The various different test suites output reports under a consistent folder structure, they also write logs to disk under a consistent folder structure too. On failure the test tasks output a message to look at the detailed test reports and cross-reference that with the logs to debug the issue. Where possible the test reports contain correlation IDs inlined into the report.
With the above system when the agent is working through implementing something and the tests don't pass, it naturally winds up inspecting the test reports, cross referencing that with the logs, and solving the problems at a higher rate than compared to just taking a wild guess at how to run the tests and then do something random.
Getting it to write it's own guardrails by creating Roslyn Analyzers to make the build fail when it deviates from the project architecture and conventions has been another big win.
Tonnes of small things like that start to add up.
Next on my list is getting a debug MCP server, so it can set breakpoints and step through code etc.
In my spare time I write some algorithmic C, you can check that stuff out on github (https://github.com/DelusionalLogic) if you're curious.
I was an early adoter of LLM's. I used to lurk in the old EleutherAI discord and monitor their progress in reconstructing GPT-2 (I recall it being called GPT-J). I also played around a bunch with image generation. At this point nobody really tried applying them to code. We were just fascinated that it wrote back at all.
I have tried most of the modern models for development. I find then to generate a lot of nonsensical and unexplainable code. I've had no success (in the 30 or so times I've tried) at getting any of the models to debug or develop even small features. They usually get lost in some "best practice" and start looping on that forever. They're also constantly breaking style and violating module boundaries.
If i use them to generate documentation I find it to be surface level and repetitive. It'll make a lot of text about structures that are obvious to me just glancing at the code, but will (obviously) not have any context about the thought process that created that code, which is the only part I care about. I can read the code just fine myself. This is the same problem I find in commit messages generated with AI tools.
For the reversing I also do, I find the models to be too imprecise. It'll take large logical leaps that ruin understanding of the code I'm trying to understand. This is the only place I actually believe a properly trained (not a chatbot) model could actually succeed past the state of the art.
I don't really use stackoverflow either, I don't trust its accuracy, and it's easy to get cargo culted in software. I generally try to find my answers in official documentation, and if I can't get that I'll read the source code. If that's unavailable I'll take a guess, or reverse the thing If it's really important to me.
It lets me concentrate on the parts I'm good at and ignore things I don't care about. Claude is a lot better at React than I am and I don't care.
Those are just not realistic numbers.
In the last 2 months I’ve built 3 end-to-end micro-SAAS apps.
It would easily take me a year to do that in the past because I hated some parts so much I'd just avoid working on them.
Now it's literally "bite down for and evening and it's done" whereas it could be 6 months or more before.
If anything 100 times is underestimating how much more I'm doing.
They trick the reptilian part of your brain that you're dealing with something resembling a human being, but if they were one, they'd be described as a pathological liar and gaslighter. You can't go off on them for it, because they don't give a shit, and you shouldn't go off on them for it, because making a habit of that will make you a spiteful, unpleasant piece of shit for your coworkers to be around.
It's one thing when a machine or a tool doesn't function in the way you intend it to. It's another when this soulless, shameless homunculus does.
People are absolutely torn. It seems that ai usage starts as a clutch, then it becomes an essential tool and finally it takes over the essence of the profession itself. Not using it feels like a waste of time. There’s a sense of dread that comes from realizing that it’s not useful to “do work” anymore. That in order to thrive now, we need to outsource as much of your thinking to GPT as possible. If your sense of identity comes from “pure” intellectual pursuits, you are gonna have a bad time. The optimists will say “you will be able to do 10x the amount of work”. That might be true, but the nature of the work will be completely different. Managing a farm is not the same as planting a seed.