Hearing the feelings in this rant, which does touch a nerve, I can’t help think about how different the developer community reaction to the LLM push might be if the focus were on quality instead of efficiency.
-
@inthehands I suggested that when one asks an LLM to, say, write an OAuth flow, what it could do is instead of next-token-predicting a vaguely OAuth-shaped program, it could take an OAuth flow from an open-source context library which is actively maintained, translate that into whatever your language and framework is, and then run a series of tests (also open-source and actively maintained) outside of the LLM context to validate that it does what it needs to do.
@inthehands His response was "why do you need all that? The AI can validate itself" and I was like "did you not read what I had just said". But it also made me realise we're thinking about what LLMs do in very different ways: I see them as tools for language modelling, with limitations arising from the way they work, while my coworker sees it as the path towards an actual thinking machine
-
@janeishly @inthehands Also, as in many other contexts, proven technology already exists to *assist* translators.
@annehargreaves This really bugs me (and makes me infinitely sad), because we *had* good automation tools, concordance tools, terminology tools – a whole bunch of tools that were actually useful and made human translators faster, more consistent and so on, without compromising their own inherent style or flattening the voice of the text. And now, instead, we have shit. @janeishly @inthehands
-
@inthehands His response was "why do you need all that? The AI can validate itself" and I was like "did you not read what I had just said". But it also made me realise we're thinking about what LLMs do in very different ways: I see them as tools for language modelling, with limitations arising from the way they work, while my coworker sees it as the path towards an actual thinking machine
@jmopp @inthehands It drives me crazy. I understand why non-technical people 1) don't understand how LLMs work and 2) have never experienced any other text-based automation interface, and therefore don't understand what can be done trivially and deterministically without an LLM, but when supposedly competent people in tech are like this it's like finding out that a grown-ass adult unironically believes in Santa Claus. And is basing important life decisions on the assumption that Santa Claus is going to bring them a Ferrari.
It has been a very frustrating couple of years. I work in academia, and I've partially been shielded from this, but it has started leaking in at an accelerated rate, to the point where it is negatively affecting my work life almost daily.
-
But that’s me; I don’t think my ethical concerns are shared widely enough for companies to have to be ramming AI down developers’ throats the way they are. The token quotas etc are a symptom of something large and deep.
Maybe that post about MTBF vs MTTR helps explain it.
/end
@inthehands It seems most people just don't want to think about these things at all? I have close friends — lovely, caring people, who just don't want to discuss these topics. They'll use Uber, AirBnB and a whole host of LLMs because they're so convenient, and any mention of ethics gets a "yeah, I know" and then they continue buying tiny bottles of tap water to drink.
I want to somehow shake them awake without losing them as friends, and I have no idea how. Show them it doesn't have to be this way, when there are alternatives.
The em-dash in this toot was put there entirely by human hands.
-
The “efficiency” pitch I’m describing upthread isn’t really “go faster;” it feels more like “making good things doesn’t matter, what you cared all along about doesn’t really matter, and we don’t think •you• matter.
We always just wanted to built absolute shit, and you always tried to stop us. But now at long last we can.”
9/
@inthehands Great thread, Paul! I also shared a similar sentiment about this yesterday: https://mastodon.thi.ng/@toxi/116578081965134185
-
Why? The common explanation is that software devs are worried about job security and don’t want to be replaced. And…maybe? But again: past technologies promising greatly improved dev speed we’ve embraced headlong with no regard to large-scale employment effects.
I wonder if this quality vs efficiency thing upthread isn’t a big part of the explanation here.
8/
@inthehands "software devs are worried about job security and don’t want to be replaced."
If this was ever the case then they would have formed unions. That so many don't is indicative that job security is not the primary issue (or are more dev unions forming recently? Perhaps they are and I've not noticed).
-
I’m kind of speculating here. I get off the LLM coding bus at several earlier stops:
⁃ The energy and water usage are an environmental disaster (so I mostly avoid it for the same reasons I try to reduce my driving).
⁃ The data sourcing is an ethical disaster (so I prefer to avoid it for the same reasons I try to buy fair trade products).
⁃ The people who profit from it at the top are largely horrible (so I’m about as interesting in debating its pros and cons at length as am I debating the work capacity of a Cybertruck).
10/
The energy and water usage used to be a problem for mainframes. Watt's separate condenser in 1765 was essentially a water-cooled heat exchanger — the whole efficiency gain came from using cold water to condense steam without cooling the cylinder itself.
So the water usage argument has been around a while longer.
Data sourcing? You're trying to sort out which little calf and piglet went into your Weisswurst. Copyright in its current form has ruined the music industry, so let's spread the joy around
The problem with AI is the same as the Mirror Test for animal cognition. Y'all can stop screaming at the mirror - it's just you in there.
-
I can’t think of another time when software devs had to be •forced• en masse to use a new technology that was supposed to help them. Usually we’re kind of stupid for the shiny new things: jamming them in when they solve nothing, doing unnecessary rewrites just to use the new hotness because it’s so cool and fun. Usually we’re the one trying to shove it down mgmt’s throat (or sneak it by them) rather than the reverse.
But not this time.
7/
Java?
-
But that’s me; I don’t think my ethical concerns are shared widely enough for companies to have to be ramming AI down developers’ throats the way they are. The token quotas etc are a symptom of something large and deep.
Maybe that post about MTBF vs MTTR helps explain it.
/end
@inthehands that's a very well put thread, thank you for it.
-
@annehargreaves This really bugs me (and makes me infinitely sad), because we *had* good automation tools, concordance tools, terminology tools – a whole bunch of tools that were actually useful and made human translators faster, more consistent and so on, without compromising their own inherent style or flattening the voice of the text. And now, instead, we have shit. @janeishly @inthehands
@herzleid @janeishly @inthehands Yep. Gutted. Gutted to have lost my work after so long.
-
This is, if I understand it correctly, the same contrast that the OP’s distinction between MTBF and MTTR points to:
MTBF = quality (It rarely breaks)
MTTR = efficiency (It breaks all the time but we recover so fast!)
6/
@inthehands Another thing the cloud broke was the idea that MTTR has to be super fast. There are a lot of systems that are resilient and downtime is not a big deal. (Email, for example).
So the reality is that we have some systems that are mission critical and MTBF is the right approach. We can’t recover from failure because failure is unrecoverable. Then there’s a whole spectrum of MTTR where failures can be withstood and repairs have varying levels of urgency. MTTR doesn’t have to be instant for everything, in systems where MTTR is the right approach.
Getting whole generations to think about a problem a certain way is a soft form of monopoly. Look at the push to get LLMs into schools and they’re trying desperately to run the same playbook on LLMs. Raise a generation who know no better.
-
@inthehands His response was "why do you need all that? The AI can validate itself" and I was like "did you not read what I had just said". But it also made me realise we're thinking about what LLMs do in very different ways: I see them as tools for language modelling, with limitations arising from the way they work, while my coworker sees it as the path towards an actual thinking machine
@jmopp @inthehands that OAuth example is particularly apt. As it happens, I used gen AI to help with a fairly complex OAuth integration, and it made plenty of understandable but fatal mistakes - confusing different types of Auth tokens, recommending overly broad scope, etc. to the extent that I'm reasonably sure it would have been quicker to just read the OAuth spec properly.
-
I can’t think of another time when software devs had to be •forced• en masse to use a new technology that was supposed to help them. Usually we’re kind of stupid for the shiny new things: jamming them in when they solve nothing, doing unnecessary rewrites just to use the new hotness because it’s so cool and fun. Usually we’re the one trying to shove it down mgmt’s throat (or sneak it by them) rather than the reverse.
But not this time.
7/
@inthehands You can’t think of another? Microsoft Teams. Microsoft Office. Microsoft exchange. Oracle database. We only use ABC cloud service, etc.
Think of any time executives show enterprise software brand loyalty and you’ll find lots of tools that devs and engineers are forced to use. Where ostensibly it’s the “right tool for the job” but, in actuality, some commercial aspect drove the choice.
-
@herzleid @janeishly @inthehands Yep. Gutted. Gutted to have lost my work after so long.
@annehargreaves
It's so bleak. I'm still clinging on like a fool, but Q1 this year was a disaster so I've had to start looking for other avenues for income as well. -
I can’t think of another time when software devs had to be •forced• en masse to use a new technology that was supposed to help them. Usually we’re kind of stupid for the shiny new things: jamming them in when they solve nothing, doing unnecessary rewrites just to use the new hotness because it’s so cool and fun. Usually we’re the one trying to shove it down mgmt’s throat (or sneak it by them) rather than the reverse.
But not this time.
7/
@inthehands I felt forced to use Windows and internet explorer against my will quite a lot.
You're right though. Everyone else seemed to love it.
-
I can’t think of another time when software devs had to be •forced• en masse to use a new technology that was supposed to help them. Usually we’re kind of stupid for the shiny new things: jamming them in when they solve nothing, doing unnecessary rewrites just to use the new hotness because it’s so cool and fun. Usually we’re the one trying to shove it down mgmt’s throat (or sneak it by them) rather than the reverse.
But not this time.
7/
@inthehands oh come on are we pretending agile development and blockchains didn't happen?
-
I can image a developer parallel to the first, too: the human still using all their skills and experience, but with the machine catching mistakes, providing context and validation and vigilance that is •orthogonal to• testing and type checking and code crafting and — the big one! — actually •thinking• about the problem.
That’s a regime I imagine developers would feel a lot better about. And I know there are people out there pursuing it! But they’re not the ones dominating the conversation.
4/
@inthehands This is the way I get to operate at work, and it's *incredibly* satisfying to have a context aware autocomplete that's mostly helpful (it feels like the good parts of pair programming). Alas, "better code autocompletion" is not the world shattering impact being pitched to investors and CxOs, and the models available (at least from MS) are still the usual moral & ethical tire fires rather than the rare responsibly trained ones.
-
RE: https://hachyderm.io/@mitchellh/116580433508108130
Hearing the feelings in this rant, which does touch a nerve, I can’t help think about how different the developer community reaction to the LLM push might be if the focus were on quality instead of efficiency.
1/
@inthehands this. I am a manual software tester, not even a developer. And the push to go faster all the time is so exhausting. I am seriously consodering leaving tech. I have loved being a tester. But this is getting ridiculous.
-
I can image a developer parallel to the first, too: the human still using all their skills and experience, but with the machine catching mistakes, providing context and validation and vigilance that is •orthogonal to• testing and type checking and code crafting and — the big one! — actually •thinking• about the problem.
That’s a regime I imagine developers would feel a lot better about. And I know there are people out there pursuing it! But they’re not the ones dominating the conversation.
4/
@inthehands I think you'll find the reason centaur programmers don't dominate the conversation is that they self censor, because otherwise they get lynched by the "all AI is inherently evil" voices.
The moderate voice is never terribly loud, but in this space there's just no upside to being the one saying "actually there's a way to use this tool that isn't utterly shit"
-
@jmopp @inthehands that OAuth example is particularly apt. As it happens, I used gen AI to help with a fairly complex OAuth integration, and it made plenty of understandable but fatal mistakes - confusing different types of Auth tokens, recommending overly broad scope, etc. to the extent that I'm reasonably sure it would have been quicker to just read the OAuth spec properly.
@jmopp @inthehands this being said, I did get to something kinda working relatively quickly, which maybe made me more likely to stick with it until I got to where I needed to be.
So, on the one hand, is maybe a short path to a sunk cost trap, on the other, a short cut to 60% of the way there?