Am I the only software engineer greatly worried and disturbed by AI ?

https://lemm.ee/post/22823497

Am I the only software engineer greatly worried and disturbed by AI ? - lemm.ee

Ok let’s give a little bit of context. I will turn 40 yo in a couple of months and I’m a c++ software developer for more than 18 years. I enjoy to code, I enjoy to write “good” code, readable and so. However since a few months, I become really afraid of the future of the job I like with the progress of artificial intelligence. Very often I don’t sleep at night because of this. I fear that my job, while not completely disappearing, become a very boring job consisting in debugging code generated automatically, or that the job disappear. For now, I’m not using AI, I have a few colleagues that do it but I do not want to because one, it remove a part of the coding I like and two I have the feeling that using it is cutting the branch I’m sit on, if you see what I mean. I fear that in a near future, ppl not using it will be fired because seen by the management as less productive… Am I the only one feeling this way? I have the feeling all tech people are enthusiastic about AI.

Uncle Bob - The Long Reach of Code, Automating Programming, and Developing Coding Talent

YouTube
He has a good point. That is the actual difficult part and won't be done properly by this current LLM system since it's creating something new and requires actual thought and understanding.

You’re certainly not the only software developer worried about this. Many people across many fields are losing sleep thinking that machine learning is coming for their jobs. Realistically automation is going to eliminate the need for a ton of labor in the coming decades and software is included in that.

However, I am quite skeptical that neural nets are going to be reading and writing meaningful code at large scales in the near future. If they did they we would have much bigger fish to fry because that’s the type of thing that could very well lead to the singularity.

I think you should spend more time using AI programming tools. That would let you see how primitive they really are in their current state and learn how to leverage them for yourself. It’s reasonable to be concerned that employees will need to use these tools in the near future. That’s because these are new, useful tools and software developers are generally expected to use all tooling that improves their productivity.

If they did we would have much bigger fish to fry because that’s the type of thing that could very well lead to the singularity.

Bingo

I won't say it won't happen soon. And it seems fairly likely to happen at some point. But at that point, so much of the world will have changed because of the other impacts of having AI, as it was developing to be able to automate thousands of things that are easier than programming, that "will I still have my programming job" may well not be the most pressing issue.

For the short term, the primary concern is programmers who can work much faster with AI replacing those that can't. SOCIAL DARWINISM FIGHT LET'S GO

I have a huge amount of the and super seniors that love AI work. It’s unfortunate because the code quality is pretty bad right now.

I think you should spend more time using AI programming tools. That would let you see how primitive they really are in their current state and learn how to leverage them for yourself.

I agree, sosodev. I think it would be wise to at least be aware of modern A.I.'s current capabilities and inadequacies, because honestly, you gotta know what you're dealing with.

If you ignore and avoid A.I. outright, every new iteration will come as a complete surprise, leaving you demoralized and feeling like shit. More importantly, there will be less time for you to adapt because you've been ignoring it when you could've been observing and planning. A.I. currently does not have that advantage, OP. You do.

There’s a massive amount of hype right now, much like everything was blockchains for a while.

AI/ML is not able to replace a programmer, especially not a senior engineer. Right now I’d advise you do your job well and hang tight for a couple of years to see how things shake out.

(me = ~50 years old DevOps person)

I’m only on my very first year of DevOps, and already I have dive years worth of AI giving me hilarious, sad and ruinous answers regarding the field.

I needed Ansible ONCE, and it managed to lie about Ansible to me TWICE

Well, technically “expert system” is a type of AI from a couple of decades ago that was based on rules.

I think all jobs that are pure mental labor are under threat to a certain extent from AI.

It's not really certain when real AGI is going to start to become real, but it certainly seems possible that it'll be real soon, and if you can pay $20/month to replace a six figure software developer then a lot of people are in trouble yes. Like a lot of other revolutions like this that have happened, not all of it will be "AI replaces engineer"; some of it will be "engineer who can work with the AI and complement it to be produtive will replace engineer who can't."

Of course that's cold comfort once it reaches the point that AI can do it all. If it makes you feel any better, real engineering is much more difficult than a lot of other pure-mental-labor jobs. It'll probably be one of the last to fall, after marketing, accounting, law, business strategy, and a ton of other white-collar jobs. The world will change a lot. Again, I'm not saying this will happen real soon. But it certainly could.

I think we're right up against the cold reality that a lot of the systems that currently run the world don't really care if people are taken care of and have what they need in order to live. A lot of people who aren't blessed with education and the right setup in life have been struggling really badly for quite a long time no matter how hard they work. People like you and me who made it well into adulthood just being able to go to work and that be enough to be okay are, relatively speaking, lucky in the modern world.

I would say you're right to be concerned about this stuff. I think starting to agitate for a better, more just world for all concerned is probably the best thing you can do about it. Trying to hold back the tide of change that's coming doesn't seem real doable without that part changing.

It’s not really certain when real AGI is going to start to become real, but it certainly seems possible that it’ll be real soon

What makes you say that? The entire field of AI has not made any progress towards AGI since its inception and if anything the pretty bad results from language models today seem to suggest that it is a long way off.

You would describe "recognizing handwritten digits some of the time" -> "GPT-4 and Midjourney" as no progress in the direction of AGI?

It hasn't reached AGI or any reasonable facsimile yet, no. But up until a few years ago something like ChatGPT seemed completely impossible, and then a few big key breakthroughs happened, and now the impossible is possible. It seems by no means out of the question that a few more big breakthroughs could happen with AGI, especially with as much attention and effort is going into the field now.

It’s not that machine learning isn’t making progress, it’s just many people speculate that AGI will require a different way of looking at AI. Deep Learning, while powerful, doesn’t seem like it can be adapted to something that would resemble AGI.

You mean, it would take some sort of breakthrough?

(For what it's worth, my guess about how it works is to generally agree with you in terms of real sentience -- just that I think (a) neither one of us really knows that for sure (b) AGI doesn't require sentience; a sufficiently capable fakery which still has limitations can still upend the world quite a bit).

Yes, and most likely more of a paradigm shift. The way deep learning models work is largely around static statistical models. The main issue here isn’t the statistical side, but the static nature. For AGI this is a significant hurdle because as the world evolves, or simply these models run into new circumstances, the models will fail.

Its largely the reason why autonomous vehicles have sorta hit a standstill. It’s the last 1% (what if an intersection is out, what if the road is poorly maintained, etc.) that are so hard for these models as they require “thought” and not just input/output.

LLMs have shown that large quantities of data seem to approach some sort of generalized knowledge, but researchers don’t necessarily agree on that arxiv.org/abs/2206.07682. So if we can’t get to more emergent abilities, it’s unlikely AGI is on the way. But as you said, combining and interweaving these systems may get something close.

Emergent Abilities of Large Language Models

Scaling up language models has been shown to predictably improve performance and sample efficiency on a wide range of downstream tasks. This paper instead discusses an unpredictable phenomenon that we refer to as emergent abilities of large language models. We consider an ability to be emergent if it is not present in smaller models but is present in larger models. Thus, emergent abilities cannot be predicted simply by extrapolating the performance of smaller models. The existence of such emergence implies that additional scaling could further expand the range of capabilities of language models.

arXiv.org

a sufficiently capable fakery which still has limitations can still upend the world quite a bit

Maybe but we are essentially throwing petabyte sized models and lots of compute power at it and the results are somewhere on the level where a three year old would do better in not giving away that they don’t understand what they are talking about.

Don’t get me wrong, LLMs and the other recent developments in generative AI models are very impressive but it is becoming increasingly clear that the approach is maybe barely useful if we throw about as many computing resources at it as we can afford, severely limiting its potential applications. And even at that level the results are still so bad that you essentially can’t trust anything that falls out.

This is very far from being sufficient to fake AGI and has absolutely nothing to do with real AGI.

Nobody knows if and when programming will be automated in a meaningful way. But once we have the tech to do it, we can automate pretty much all work. So I think this will not be a problem for programmers until it’s a problem for everyone.
Betteridge's law of headlines: No.
The trough of disillusionment is my favorite.
Currently at the crossroads between trough of disillusionment and slope of enlightenment
Kind of nice to see NFTs breaking through the floor at the trough of disillusionment, never to return.
If your job truly is in danger, then not touching AI tools isn’t going to change that. The best you can do for yourself is to explore what these tools can do for you and figure out if they can help you become more productive so that you’re not first on the chopping block. Maybe in doing so, you’ll find other aspects of programming that you enjoy just as much and don’t yet get automated away with these tools.

To answer your question directly: The debate has been going on in the broader public since ChatGPT 3 dropped

To answer how you’re feeling: that’s valid, because a lot of big pockets seem to not care at all about the ethical considerations.

Man, it’s a tool. It will change things for us, it is very powerful; but still a tool. It does not “know” anything, there’s no true intelligence in the things we now call “AI”. For now, is really useful as a rubber duck, it can make interesting suggestions, make you explore big code bases faster, and even be useful for creating boilerplate. But the code it generates usually is not very trustworthy and have lower quality.

The reality is not that we will lose our jobs to it, but that companies will expect more productivity from us using these tools. I recommend you to try ChatGPT (the best in class for now), and try to understand it’s strengths and limitations.

Remember: this is just an autocomplete on steroids, that do more the the regular version, but that get the same type of errors.

AI assistance is leading to lower code quality, claim researchers • DEVCLASS

AI software development has grown rapidly in popularity, but how is code quality impacted? Not well, according to […]

DEVCLASS

I’m both unenthusiastic about A.I. and unafraid of it.

Programming is a lot more than writing code. A programmer needs to setup a reliable deployment pipeline, or write a secure web-facing interface, or make a useable and accessible user interface, or correctly configure logging, or identity and access, or a million other nuanced, pain-in-the-ass tasks. I’ve heard some programmers occasionally decrypt what the hell the client actually wanted, but I think that’s a myth.

The history of automation is somebody finds a shortcut - we all embrace it - we all discover it doesn’t really work - someone works their ass off on a real solution - we all pay a premium for it - a bunch of us collaborate on an open shared solution - we all migrate and focus more on one of the 10,000 other remaining pain-in-the-ass challenges.

A.I. will get better, but it isn’t going to be a serious viable replacement for any of the real work in programming for a very long time. Once it is, Murphy’s law and history teaches us that there’ll be plenty of problems it still sucks at.

As an example:

Salesforce has been trying to replace developers with "easy to use tools" for a decade now.

They're no closer than when they started. Yes the new, improved flow builder and omni studio look great initially for the simple little preplanned demos they make. But theyre very slow, unsafe to use and generally are impossible to debug.

As an example: a common use case is: sales guy wants to create an opportunity with a product. They go on how omni studio let's an admin create a set of independently loading pages that let them:
• create the opportunity record, associating it with an existing account number.
• add a selection of products to it.

But what if the account number doesn't exist? It fails. It can't create the account for you, nor prompt you to do it in a modal. The opportunity page only works with the opportunity object.

Also, if the user tries to go back, it doesn't allow them to delete products already added to the opportunity.

Once we get actual AIs that can do context and planning, then our field is in danger. But so long as we're going down the glorified chatbot route, that's not in danger.

As an example:

Salesforce has been trying to replace developers with "easy to use tools" for a decade now.

They're no closer than when they started. Yes the new, improved flow builder and omni studio look great initially for the simple little preplanned demos they make. But theyre very slow, unsafe to use and generally are impossible to debug.

As an example: a common use case is: sales guy wants to create an opportunity with a product. They go on how omni studio let's an admin create a set of independently loading pages that let them:
• create the opportunity record, associating it with an existing account number.
• add a selection of products to it.

But what if the account number doesn't exist? It fails. It can't create the account for you, nor prompt you to do it in a modal. The opportunity page only works with the opportunity object.

Also, if the user tries to go back, it doesn't allow them to delete products already added to the opportunity.

Once we get actual AIs that can do context and planning, then our field is in danger. But so long as we're going down the glorified chatbot route, that's not in danger.

They haven’t replaced me with cheaper non-artifical intelligence yet and that’s leaps and bounds better than AI.
Yeah, the real danger is probably that it will be harder for junior developers to be considered worth the investment.

Your job is automating electrons, and now some automated electrons are threatening your job.

I have to imagine this is similar to how farmers felt when large-scale machinery became widely available.

Huge need mbers of people migrated to cities to find work when this happened. Super 👍 interesting part of history!

Don’t worry, if you got even a quarter as much experience as you say, your job is safe or you can find another not working for an idiotic company that would invest into ai instead of engineers, let them fail.

Anyway have a look what ai can do for you and see just how secure your job is. Pointless worry

I'm in a similar place to you career-wise. Personally, I'm not concerned about becoming just a "debugger." What I'm expecting this job to look like in a few years is to be more like "the same as now, except I've got a completely free team of "interns" that do all the menial stuff for me. Every human programmer will become a lead programmer, deciding what stuff our AIs do for us and putting it all together into the finished product.

Maybe a few years further along the AI assistants will be good enough to handle that stuff better than we do as well. At that point we stop being lead programmers and we all become programming directors.

So think of it like a promotion, perhaps.

Why would there be a team of AIs in this scenario under the human, instead of just one AI entity.
The role of the human is to tell the AI what it's supposed to do. If you're worried about AI that's sophisticated enough to be completely self-directed then you're worrying about AGI, which will be so world-changing that piddly little concerns such as "what about my job?" Are pretty trivial.
No, I meant keeping the human directing things but they could do it with one AI under them

Well yes, then. That's what I said. You'd be a programmer who had free underlings doing whatever grunt work you directed them to.

Or are you questioning my use of the term "team" for the AIs? LLMs are specialized in various ways, you'd likely want to have multiple ones that handle different tasks.

Yeah I meant the team part. Learnt something new, I thought all AI was more or less equal!

I don’t think you are disturbed by AI, but y Capitalism doing anything they can to pay you as little as possible. From a pure value* perspective assuming your niche skills in c++ are useful*, you have nothing to worry about. You should be paid the same regardless. But in our society, if you being replaced by someone “good enough”, will work for the business then yes you should be worried. But AI isn’t the thing you should be upset by.

*This is obviously subjective, but the existence of AI with you troubleshooting vs fully replacing you is out of scope here.

This is a real danger in a long term. If advancement of AI and robotics reaches a certain level, it can detach big portion of lower and middle classes from the societys flow of wealth and disrupt structures that have existed since the early industrial revolutions. Educated common man stops being an asset. Whole world becomes a banana republic where only Industry and government are needed and there is unpassable gap between common people and the uncaring elite.
Right. I agree that in our current society, AI is net-loss for most of us. There will be a few lucky ones that will almost certainly be paid more then they are now, but that will be at the cost of everyone else, and even they will certainly be paid less then the share-holders and executives. The end result is a much lower quality of life for basically everyone. Remember what the Luddites were actually protesting and you’ll see how AI is no different.

This is exactly what I see as the risk. However, the elites running industry are, on average, fucking idiots. So, we have been seeing frequent cases of them trying to replace people whose jobs they don’t understand, with technology that even leading scientists don’t fully understand, in order to keep those wages for themselves, all in-spite of those who do understand the jobs saying that it is a bad idea.

Don’t underestimate the willingness of upper management to gamble on things and inflict the consequences of failure on the workforce. Nor their willingness to switch to a worse solution, not because it is better or even cheaper but because it means giving less to employees, if they think that they can get away with it.

White collar never should have been getting paid so much more than blue collar and I welcome seeing the Shift balance out, so everyone wants to eat the rich.
Rich will have weapons and technology. I see 1984 + hunger games scenario more likely.

White collar never should have been getting paid so much more than blue collar

Actually I see that the other way around. Blue collar should have never been paid so much less than white collar.

As a fellow C++ developer, I get the sense that ours is a community with a lot of specialization that may be a bit more difficult to automate out of existence than web designers or what have you? There’s just not as large a sample base to train AIs on. My C++ projects have ranged from scientific modelling to my current task of writing drivers for custom instrumentation we’re building at work. If an AI could interface with the OS I wrote from scratch for said instrumentation, I would be rather surprised? Of course, the flip side to job security through obscurity is that you may make yourself unemployable by becoming overly specialized? So there’s that.
Honestly, if I was still working in C++ I would be more worried about the language being replaced than about AI.

I got started in C, worked for years in professional C++ development, and after having worked in other languages for a while I tried to go back to it for something just recently, and this was about my reaction.

.first and .second
const
OO constructs but manual memory management
Templates

Dude just get me the fuck out

Best clips of Grand Poo World 2 Part 2

YouTube
Ironically, it is in understanding the nuances of language semantics and library usage where AI can help a fair bit.
It won’t replace coders as such. There will be devs who use AI to help them be more productive, and there will be unemployed devs.

I am om the product side of things and have created some basic proof of concept tools with AI that my bosses wanted to sell off. No way no how will I be able to sevrice or maintain them. It's incredibly impressive that I could even get this output.

I am not saying it won't become possible, but I lack the fundamental knowledge and understanding to make anything beyond the most minor adjustments and AI is still wuite bad at only addressing specific issues or, good forbid, expanding code, without fully rewriting the whole thing and breaking everything else.

For our devs I see it as a much improved and less snide stackoverflow and Google. The direct conversational nature really speeds things up with boilerplate code and since they actually know what they are doing, it's amazing. Not only that but we had devs copy paste from online searches withoout fully understanding the snippets. Now the AI can explain it in context.

AI is a really bad term for what we are all talking about. These sophisticated chatbots are just cool tools that make coding easier and faster, and for me, more enjoyable.

What the calculator is to math, LLM’s are to coding, nothing more. Actual sci-fi style AI, like self aware code, would be scary if it was ever demonstrated to even be possible, which it has not.

If you ever have a chance to use these programs to help you speed up writing code, you will see that they absolutely do not live up to the hype attributed to them. People shouting the end is nigh are seemingly exclusively people who don’t understand the technology.

I’ve never had to double check the results of my calculator by redoing the problem manually, either.

AI is the correct term. It’s the name of the field of study and anything that mimics intelligence is an AI.

Neural networks are a perfect example of an AI. What you actually code is very simple. A bunch of nodes that pass numbers forward through the system applying weights to the values. Their capabilities once trained far outstretch the simple code they run and seem intelligent.

What you are referring to is general AI.

It’s a misnomer, but if you want to pass off LLMs as “artificial intelligence” on technicality of definition, you’d also have to include

advanced web search engines (e.g., Google Search), recommendation systems (used by YouTube, Amazon, and Netflix)

etc.

Artificial intelligence - Wikipedia

Yes those are also examples of AI, see relevant Wikipedia article:

AI is whatever hasn’t been done yet

We need better terms to specify exactly what we mean, e.g. a numeric scale of intelligence or maybe even something more complex like a radar chart.

AI effect - Wikipedia

Yeah, this is the thing that always bothers me. Due to the very nature of them being large language models, they can generate convincing language. Also image “ai” can generate convincing images. Calling it AI is both a PR move for branding, and an attempt to conceal the fact that it’s all just regurgitating bits of stolen copywritten content.

Everyone talks about AI “getting smarter”, but by the very nature of how these types of algorithms work, they can’t “get smarter”. Yes, you can make them work better, but they will still only be either interpolating or extrapolating from the training set.

Haven’t we started using AGI, or artificial general intelligence, as the term to describe the kind of AI you are referring to? That self aware intelligent software?

Now AI just means reactive coding designed to mimic certain behaviours, or even self learning algorithms.