The behaviour of the good programmers is in my experience very "spread": some embrace strongly embrace LLMs for programming, some strongly reject LLMs for programming, with everything in-between.
The explanatory variables that I rather think are good predictors whether a good programmer will embrace or reject LLMs for coding are rather the following ones:
1. Is the programmer biased towards the "artisan" side of programming, or does he see the code as a means to an end?
2. Is the programmer either
- in love,
- interested in, or
- does the programmer have to work with
more obscure programming languages and/or the abstractions and mental models that these programming languages are based on? If this is the case, using an AI is often more of a hindrance than help because there exists much less training data, and/or the programmer will much more often be confronted with the observation that the AI model simply does not "get" what he wants, and will very often get annoyed by bad AI code hallucinations.
They constantly are poking at the requirements to understand what's the purpose and they find a better, simpler or sometimes hackier (for temporary stuff) solution, but they are on time, they solutions work and they get shit done.
I've seen some really crafty "artisanal" ones that debate for hours and rewrite 10 time the release scripts... Not the most efficient way to spend their time.
What other enjoyable things do you think we can automate, so that the people that hate doing them can cheaply replace the people who enjoy doing them?
Do you think we'll leave any work that people enjoy?
(I'm using mostly Scala as a language in a large microservices environment)
You're comfortably ensconced within a powerful economic inequality machine, and you're fighting for your right... to party? It's a bit gauche.
At least I tell myself I'm keeping the lights on for many families.
Can you truly be happy while billions suffer unnecessarily?
And, yes, the resulting software also sucks, and I'd pay extra to avoid it. There's been a noticeable drop in software quality over the last year or two.
In a free market economy, you get from the butcher the meat only if you can give the butcher something in return. It might be cleaning the store, or throwing out the smelly bloody stuff out.
It's not pretty, but life is not pretty.
It is great to find a way to swap for other's needs what you're good at and enjoy, and sometimes it's possible.
However, since you need to solve another's person problem to barter with from something, it's by default not something you like, but something the other person needs. And this frequently is not what you would like to do at the moment.
So basically, this is life, sometimes we can write beautiful code, sometimes we need to fix a messy code our client uses every day.
And sometime we don't have the pleasure to work on the computer at all, because AI took our job away, and we end up cleaning the store.
Got it.
If you can do something for your client, then you get to eat what you both voluntary agreed the deal is worth.
Does a plumber work for Altman, or for himself? Why this need to have a boss and not live by the direct fruits of your own labor?
I mean in my case i'd be absolutely fine doing work that sucks infinitely if that means that my users are happy. It really drives me crazy all the discourse I've seen over the years about devs that care about their own quality of life/job. Like, no, the only thing that should matter to you is your users, no matter the job. If what makes them genuinely happy is for you to take dirt out of a hole and put it back, and on top of this you get paid, we live in completely different planets if you don't rush to the nearest shovel.
We all know the real purpose of Big Tech.
When y'all talk about these LLM programmers, what are they programming? The next startup Typescript website, a new OS, a C++ firmware for a fridge or a control system for cancer treatment machines?
Good point. :-)