DEV Community

Cover image for AI is a fad and programming is dead
Andrew Schmelyun
Andrew Schmelyun

Posted on • Originally published at aschmelyun.com

AI is a fad and programming is dead

These are the two prevailing point of views that I’ve seen spread the most on social media.

On one hand, you have people saying that programming as a future career is essentially dead, and it’ll be a couple of years before humans writing code is made obsolete. Then there are those who think that LLMs like ChatGPT and LLaMA are party tricks, nothing more than a fun little experiment that provides minimal value to those building software.

I think the reality is more nuanced than that, and both points above can be harmful or anxiety-inducing to people who just started in the software engineering field or are interested in it as a career path. I’d like to take a little time and go over what I think AI will change in this landscape over the coming years.

If you’d like a quick breakdown or tl;dr of what’s going to be in this article, the main points are:

  • AI will continue to improve, probably in an S-curve fashion, but we don’t know where on the curve we currently sit.
  • LLMs are unlikely to take jobs away from software engineers, but they will enable teams and individual contributors to be more efficient, and get more done with less time and resources.
  • Tools like ChatGPT usually require you to give detailed instructions in a logical format to yield good code results, this is essentially the role of a programmer just in a new, esoteric language.
  • If AI improves to the point that humans are removed completely from the software process then we have made it pretty much to AGI, at which point we have much bigger problems to worry about based on our current societal structure.

Still interested? Let’s continue!

AI improvement and the S-Curve

AI has improved drastically over the course of the last year or so. We’ve gone from some basic sketches and drawings to full-fledged generated movies based on images, text, and speech a la Midjourney and others. OpenAI’s improvements to the GPT model has shown incredible promise in generating text and code. There are AutoGPT experiments, where talented developers have been running processes that spawn LLM entities and have them loop over and perform actions to finish complex multi-step assignments.

All of these might make it seem like we are advancing at an exponential pace in this field, but that might not be the case.

Technological advancements have historically been shown to happen on something called successive S-curves. A technology will slowly advance and then rapidly take off, before slowly plateauing out for a while. A new iteration happens that starts the same cycle over again, but this time at an overall higher level. Zooming out, the graph appears linear but is instead made up of multiple iterations of these curves.

It’s not a bold assumption that AI might follow the same path (at least for now), so the question becomes “where are we on the current curve?”. Maybe toward the bottom, right before accelerating exponentially up, or towards the top with little room to advance at the moment.

If I had to bet on a particular point in the line, I’d say that we’re right before the plateau.

I think we have a small amount of advancement to go with LLMs and the technology that currently surrounds them and AI in general, but I think that we’re missing something that will take time to fully provide.

As more and more AI generated content comes out (video, speech, code, images), more and more people can recognize it for its uncanny-valley-ness. Like most projects, I believe that the missing 10% will take 90% of the time and effort to perfect.

How long until we hit that next curve though, and exponential improvement begins again? That’s difficult to say, and no one person should be able to answer that.

LLMs are the next step in IDE advancement

Getting back on track about programming though, we have seen a drastic improvement and adaptation of models like OpenAI’s GPT in the coding world. Tools like ChatGPT, GitHub Copilot, and now Copilot X have improved the efficiency of developers around the globe.

But, they’re not replacing programmers, they’re tools in a utility belt enabling programmers to work better.

The first time I went from a text editor like Sublime to a full-fledged JetBrains IDE was insane. My productivity skyrocketed as I suddenly had access to auto-completion, automated refactoring, integrated testing, and deeper connections to my project’s dependencies. I was able to produce cleaner code at a dramatically faster rate.

These AI tools are just the next logical step in that same improvement process.

I’ve been using Copilot and ChatGPT in my personal projects since the start of the year, and I have noticed a similar efficiency improvement.

A lot of work done in new projects are tasks I don’t have to put a lot of thought or effort into, but that take up time. Creating automated tests, frontend templates, new classes, or formatting data outputs, I can complete these items 10x faster now that I have the help of these tools. They just understand what I’m trying to do, and scaffold out the code necessary in my project to accomplish it.

Going deeper, there have been times where I need to create a complicated function body or work with a library that I’m not super familiar with. I can type in a basic comment for what I’m trying to build in that instant, and the AI spits out a code block that’s usually helpful in satisfying the requirements I’m after.

For an example, I was recently in a PHP application and wanted to work with a popular FFMpeg library with pretty complicated documentation. Instead, I just wrote the following:

public function formatVideo($video)
{
    // use ffmpeg to convert the video to a gif
}
Enter fullscreen mode Exit fullscreen mode

Hitting enter after I made that comment produced succinct code that I could use in the rest of the project, with a few minor tweaks.

But the fact of the matter is that it saved me a ton of time. If I had known the exact details of the library, sure, a minute or two might have been shaved off. But because I was in this realm between knowing the language but not a particular library, I knew exactly what I could ask and could use the code given to me immediately. All without having to take time poring over documentation, Stack Overflow questions, or trial and error.

This is where these tools and AI for programming really shine, it enables you to work better.

Two things though.

  1. It’s over-confident. There have been multiple times where the AI has hallucinated arguments or functions that don’t exist in my project or a library I’m using. I might be able to nudge it in the right direction after a few retries, but sometimes it goes completely off the rails and writes code that straight up does not accomplish what I wanted it to. This has been pretty rare, though.
  2. It’s not connected. ChatGPT and Copilot are great at creating snippets of code that perform a specific function from given input. An entire application is still a bit out of reach. First, there’s a barrier for the amount of text, as even GPT-4 is limited by 8K tokens (around ~6k words). Second, even with the use of vector databases and AutoGPT, the models have a hard time sticking to a single development style or accomplishing an overall directive in a program that’s just above moderately complex. Ask them to create a todo app and it’s likely to be fully functional. Ask for something like a CRM to handle leads for a barbershop and it’s more likely to start on the right track, but end up with missing functionality or ineffectual code.

That last part in particular brings us squarely to our next section.

Programmers are translators for a logic language

If you ask a lot of people what their definition of a programmer is, you’ll likely get a lot of responses that boil down to “someone who writes code”. And while this isn’t incorrect, it’s also missing a huge part. A programmer, software engineer, developer, or whatever title you choose, is a translator for a language that deals in logic.

Your goal as a programmer is to take a concept, an idea, or a workflow in a language that you can understand, and translate that to a language that a computer can understand. This programming language is designed to prevent ambiguous statements and deal in pure logic.

Let’s take the sentence “When the button is pressed, change the background to red”.

If you’re a person in a meeting with other people from your team, you all might intuitively know exactly what is meant by that.

But if you’re a computer, you have a ton of missing information. What button? What background? What shade of red? What if it’s pressed again?

We can redefine our sentence again to try to remove ambiguity. “When the button with the ID of ‘clicky’ is pressed, change the background of that same button to a color with the hex value #FF0000”

Written in JavaScript it looks like this:

document.getElementById('clicky').addEventListener('click', function() {
    this.style.backgroundColor = "#FF0000"
})
Enter fullscreen mode Exit fullscreen mode

If you’re familiar with this programming language, and you were given the code above and asked to explain what it does, you might produce a sentence similar to the second one above.

You’ve translated JavaScript into your native language.

This is the heart and essence of programming, and is one of the biggest reasons I believe that the profession will be around for quite a while, even in the face of advancing AI tools.

There’s hundreds and thousands of threads online where people ask “Why isn’t ChatGPT producing the code I want it to?” and inevitably the answer comes down to:

“You need to know how to talk to it.”

Well, if I need to use a specific language to talk to this tool and get back accurate data every time, then I’m just programming with a natural language. This isn’t a new concept, it’s just that with the breadth and complexity that LLMs offer, the barrier for entry is lower.

Even if building an application has been reduced down to typing in prompts in a tool like ChatGPT, if you have to use a specific language to get it to create a reliable output that works every time, you’re in essence still programming.

Looking at the present, trying to build an application with an LLM with the current limitations of the models means that you’re likely going to have to put some of the pieces together yourself. This still constitutes programming, and you’ll need to know some basics about what the language is that it produced code for you in and where to put the pieces it gave you.

But let’s say that things advance to the point where that’s trivial or useless, because the AI will do it for you anyway. You say “Alright, compile these assets and publish them on example.com”. At that point, why even have a programming language? Let the AI be the layer between your data and your result, skipping the middle step entirely.

Well at that point, we’re basically at AGI.

AGI replaces everything

Let’s say that everything above has been perfected and there needs to be almost zero human intervention needed. You can simply have a prompt attached to a database (also managed by an AI) where you can simply ask for any dashboard, result set, or functionality that you could from a program. What then?

If AI is powerful enough to remove human intervention and oversight from the programming realm, then it has gotten to the point that it can replace almost every creative and knowledge worker profession in existence. This would likely lead to a worldwide economic downturn as more than 60% of the labor force is no longer required.

At the very least, we’d need UBI, or taken to an extreme, FALC.

This of course implies that every business, everywhere, would hop on this technology immediately. While most companies are always looking to maximize profits and increase efficiency, a lot of the business world turns at a slower pace than the technology realm likes to believe.

I know teams that are just now picking up tools like Docker, or working with frameworks like React. The enterprise world moves at a very slow pace, and even if a tool was provided that could perform 90% of a team’s job developing new products, maintaining legacy software and complex inter-dependent systems will still need to be done during, or even after, an adaptation of an AI system.

The software engineering profession has some ~100k open positions in the US alone, even if complete automation was made available today, there would be a large amount of time before full adaptation was reached.

Wrapping up

This piece was mostly written as a way of getting a bunch of different thoughts I’ve had about AI and the programming profession out of my brain. It’s not a secret that I’m a very anxious person, and I won’t lie and say that I’m not nervous about my future as a software engineer.

However, I’m excited for the tools that are being created to increase my productivity and allow me to be a better programmer. I encourage anyone out there interested in this career, or just starting out, to keep learning and utilizing the tools and techniques available to you.

I think that we’re going to see a lot of interesting advancements in both AI and the software development world over the next few years, and it’s an exciting time to be in the field. I also believe that given the current trejectory, this profession is not a dead end.

Developers may become a lot more efficient over time, leading to smaller team sizes and available company roles. However, startups and smaller enterprises can utilize the same technology and low barrier of entry to launch new products and services that before, would have taken more time and effort.

If I’m completely wrong about the above and programming is obsolete in a few years, well then it’s been a fun ride and you can catch me in a cabin in the woods gardening and making cabinetry.

Top comments (41)

Collapse
 
ccarcaci profile image
ccarcaci

Those that say that "software engineers will be obsolete" are the ones that think that software programmers write code 100% of their time like Matrix console.

Actually writing code is 20% decreasing to 5% of the time as a programmer gets more seniority. And it's actually the easier part.

Actually software engineers strive to have an automated tool that will ease the tasks done in the remaining 80% to 95% of the time.

Anyway, as any other technology we'll use it to be more efficient. And, as any other technology, the world will need tech savvy people that can master it.

The difficult part is: how to guarantee reliability and observability of something that, by design, we cannot check and inspect in depth?

Collapse
 
malikshehzad952 profile image
Shahzad malik

I appreciate the perspective presented in this article, although I respectfully disagree with the notion that AI is a fad and programming is dead. While it's true that AI has garnered significant attention and hype in recent years, dismissing it as a passing trend overlooks the transformative impact it has had and continues to have across various industries.

Programming, as a skill, remains as vital as ever, even in the era of AI. While AI may automate certain aspects of coding and streamline certain processes, human developers still play a crucial role in designing, implementing, and maintaining these AI systems. Furthermore, programming extends far beyond just AI, with applications in web development, software engineering, data science, and more.

To gain a more comprehensive understanding of the evolving relationship between AI and programming, I invite readers to explore another insightful article at readmorr.com/is-it-worth-learning-.... It provides a balanced perspective on the value of coding skills and how they intersect with emerging technologies like AI.

Rather than viewing AI as a threat to programming, I believe it offers exciting opportunities for developers to leverage its capabilities and push the boundaries of what's possible. By embracing new technologies and continuously honing our skills, we can adapt and thrive in this ever-changing technological landscape.

Collapse
 
yay profile image
Vitaly Kravchenko

I have 20 years of experience in software development and writing code is still the majority of my day. Thinking about the problem is considered "writing code" if you ask me. Also, expressing it in a programming language, so that it's both performant enough and has a nice interface (I build software libraries/frameworks for other engineers to use), scales well as the project gets bigger and harder to maintain, is not an easy task in any language.

The author of the above post probably talks in the context of web development. But there are many more difficult parts than that.

Collapse
 
kyleljohnson profile image
Kyle Johnson

BTW, You are making a good argument to lower salaries of developers. LOL

Collapse
 
ccarcaci profile image
ccarcaci

OR... developers should be paid more because at least 80% of the time are forced to do a job they are not prepared for but they are asked to do efficiently :D

No one asks the plumber to fix the shelf in the living room. But everyone ask developers to understand and work on product specification, design, UI, UX, data management, data engineering, infra...

Thread Thread
 
tracygjg profile image
Tracy Gilmore • Edited

I absolutely agree.

Software Developers/Engineers are not paid to code. They are paid to solve business problems with code being a small part of the solution. Check out the Software Development Life Cycle.

I think the most challenging task for Software Devs is obtain a firm understanding of the problem followed by establish an in-depth awareness of the domain in which a solution has to operate. At the same time they have to keep up to date with advances in the technology stack and the latest development techniques and tooling.

As you said - coding is the easy part.

Thread Thread
 
kyleljohnson profile image
Kyle Johnson

No, no, no.

Software Developers are paid to convert solutions into software. I hate when people try to make a developer into many things. Project Manager, Business Analyst, Program Manager, etc.

When you go to school you learn how to write code with a particular language. Developers are not suppose to come up with the solutions.

Ex. I want a website that shows me all employees that live in the USA.

That is a solution to a problem of not knowing which employees live in the USA. I'm just converting that to software.

Thread Thread
 
ccarcaci profile image
ccarcaci

"solve business problems" means: the problem has been already detailed by Project Managers, Business Analysts, Program Managers, etc.
The solution has been identified too.

Developers takes the business problem definition refined, the proposed solution, challenge it on tech side and, when everything is feasible from tech side, they implement it.

From my perspective, as developer, the worst implementations are the ones where the solution has been dropped from non-tech people and devs "just" translate it into code. The resulting code will be the next problem to tackle.

Thread Thread
 
tracygjg profile image
Tracy Gilmore • Edited

Hi Kyle, On this point I think we will have to agree to disagree.

When I was taught my trade of 30+ years, which is a decade or two before you I guess, we were instructed in a variety of programming languages (not one "particular language") with a view to applying the one most appropriate to the task. I have yet to find a single language that is sufficiently generic it is appropriate for any problem.

You might argue our points of view highlight the difference between Software Developers and Software Engineers. Where (to your argument) Software Developers are employed to code/implement from a specification/design, I would argue a Software Engineer is required to understand all and deliver most of the Software Development Life Cycle (SDLC).

See: aws.amazon.com/what-is/sdlc/#:~:te...

Kind regards, Tracy

Thread Thread
 
kyleljohnson profile image
Kyle Johnson

@ccarcaci -_ "From my perspective, as developer, the worst implementations are the ones where the solution has been dropped from non-tech people and devs "just" translate it into code. The resulting code will be the next problem to tackle."

We agree

Thread Thread
 
kyleljohnson profile image
Kyle Johnson

@tracygjg - I was taught my trade 25+ years ago. :) I was taught multiple languages also. :) I was just making an example. I have a MS in Software Engineering and I would agree Engineers deliver all of the SDLC. But we shouldn't be responsible for solving problems in a non-technical sense. That's all I'm saying. That for people with MBA degrees.

Developers/Engineers should be gathering the solution requirements.

No engineering discipline comes up with the solution. We implement solutions.

Collapse
 
tylerlwsmith profile image
Tyler Smith

I liked the post, especially your points about the S curve. I've been thinking a lot about how much more sophisticated these tools are going to get before things level out, but now you've given me some vocabulary to talk about that.

Collapse
 
malikshehzad952 profile image
Shahzad malik

I appreciate the perspective presented in this article, although I respectfully disagree with the notion that AI is a fad and programming is dead. While it's true that AI has garnered significant attention and hype in recent years, dismissing it as a passing trend overlooks the transformative impact it has had and continues to have across various industries.

Programming, as a skill, remains as vital as ever, even in the era of AI. While AI may automate certain aspects of coding and streamline certain processes, human developers still play a crucial role in designing, implementing, and maintaining these AI systems. Furthermore, programming extends far beyond just AI, with applications in web development, software engineering, data science, and more.

To gain a more comprehensive understanding of the evolving relationship between AI and programming, I invite readers to explore another insightful article at readmorr.com/is-it-worth-learning-.... It provides a balanced perspective on the value of coding skills and how they intersect with emerging technologies like AI.

Rather than viewing AI as a threat to programming, I believe it offers exciting opportunities for developers to leverage its capabilities and push the boundaries of what's possible. By embracing new technologies and continuously honing our skills, we can adapt and thrive in this ever-changing technological landscape.

Collapse
 
darkwiiplayer profile image
𒎏Wii 🏳️‍⚧️

I'd once again like to remind everyone that automation is good; it means we (humanity as a whole) will have to work less to maintain the same level of wealth. There will always be work only humans can do, until there isn't, at which point we can just lean back and enjoy life while machines do all the unpleasant stuff for us.

Collapse
 
ernst_zero profile image
Ernst03 • Edited

Well, what about the SexBot industry..
Are we good with automation as well

We have to admit the major advancement goal in the realm is the design and development of humanoid bodies that will go hand in hand (pun intended) with the advancement of A.I. making the personal A.I. (the I.F.) even more poignant.
As for how automation will work. If anyone has worked on the floor in inbound or outbound at Amazon fulfillment centers then they know the whole thing is designed for an A.I. Bot and not humans so pieces of the future A.I. puzzle are already made and in place at Amazon.
What do you think of a standard minimum income for all?
Once we replace more and more workers world wide we either have to pay them for other jobs or provide a minimum income to keep the economies of the world going I would think.
It is a choice of just how poor the world's population can get while some have the most... As usual right?

What do you think Wii?

Collapse
 
darkwiiplayer profile image
𒎏Wii 🏳️‍⚧️

I think the problem is that we're stuck in a mindset that worked well in an era that is now ending, where societies needed a large amount of labour to maintain themselves, and any improvements to efficiency didn't lead to reduced work requirements, but to increased standards of living.

We are now at a point where we are becoming so efficient, by means of automation, that a developed society just doesn't need as many work hours from every member as it used to.

At some point, we will have to face the reality that not every member of society has to, or will even be able to provide value to society, because at some point, whether in five years or in five decades, AI-controlled robots will just be cheaper and better at most repetitive tasks, specially stationary ones.

So unless we want to 100% of people to be programmers and engineers, there's not really any alternative to letting go of this antiquated notion that everyone needs a job. That's what machines will be for, after all.

Whether we end up with some sort of UBI, or abandon the concept of money entirely, who knows. Different places will probably try different models and time will tell what works best.

It's just so weird how we can look at this future where machines do everything for us and think "but how will I find a job".

Thread Thread
 
jessicamgertig profile image
Jessica Gertig

We wouldn't worry about finding a job if society didn't force us to do so. I'm perfectly capable of filling my time with unpaid activities, but very few of us can imagine a (jobless) future where doing such a thing will result in decent standard of living.

Thread Thread
 
ernst_zero profile image
Ernst03

Ah yes, The Star Trek future where Humanity seeks to improve itself.
I'm all for that.

If we are lucky we can enjoy something of that life when we get older but really the philosophy is carpe diem.
The Buddhist philosophies suggest that our reality is a stream (of).
Each day is like a stream or river, one can never dip their (proverbial) foot in the same river twice.
I found a quote:

No man ever steps in the same river twice, for it's not the same river and he's not the same man.
Heraclitus

Image description

So, my code friend. There is no time like the present to be.

Collapse
 
syeo66 profile image
Red Ochsenbein (he/him)

I'd once again like to remind everyone that automation is good; it means we (humanity as a whole) will have to work less to maintain the same level of wealth.

This is only true if we are able to distribute the wealth well enough. And I am afraid we are not prepared to do that in the necessary amount to deal with what is coming.

Collapse
 
darkwiiplayer profile image
𒎏Wii 🏳️‍⚧️

Well, yes, but that's a problem that can be solved. Shouldn't we be working on figuring that out instead of being permanently afraid of progress?

Thread Thread
 
syeo66 profile image
Red Ochsenbein (he/him)

If I take a look at humanity I really doubt we are equipped to solve this. I am not afraid of progress... I am afraid of humanities recklessness and inability to deal with things before they bite everyone in the ass. So, there's that.
Anyways I am working hard for a better future, on multiple fronts. But we who care are not enough, we get ousted by corporate interests. Responsibility is threatening profits, and in a purely capitalistic world profit is all that matters.

Thread Thread
 
ernst_zero profile image
Ernst03

We act as if wealth is life.
That requires us to ignore realities the simpler forms of life don't.
To believe we are somehow not subject to death and it's finality because we imagine so.

The greatest Con-Job is getting the majority to go without now in promise of a great reward in some here after.
And, it's been going strong.

Collapse
 
sanjayojha profile image
Sanjay Ojha

Well written and wonderful insights.

Collapse
 
lebinhan profile image
Lê Bình An

From my POV, this is how I see this going: many people from business-side believe that their job are much more important than developer's one, so that their job will be staying around forever and developer will one day disappeared from the product development. My answer to them is just simply like this: "If an AI is capability to replace such complexity work as programming itself, what make you think it will not replace your job first before mine?". This is just a simple fact for anyone who believe they will survive the AI replacement when it really happened.

Everybody think their are the main character in their own story, that their work is the most important, most value contribution, irreplaceable,... Especially when someone does not fully understand the true capability of the tools, they might overrate what it can do. That why so many businessmen believe AI will end the programmer's career - which is not true at all.

While AI - up to this point - can not yet fully replace the whole programming world (or any other jobs) at all, it can replace several fields of each jobs. Take our for example, maybe it will be replace developer who only able of doing general outsourcing tasks like: building basic UIs, coding the very basic CRUD operations,... Other more complex task that required more analysis, optimization,... will remain human required. Programming is easy, anyone can code, just open a console in your console and type: console.log("Hello, World") and waa-lah. But build an application that suit customer's requirement, comfortable for users to use, fast and reliable is completely different story, it is extremely hard, and up to this moment and to the near future, it is not what AI is capable to do, not mentioning all the version control, deployment and scaling stuffs.

Actually, the same thing happened before when not-that-AI-smart tools were born, take Excels for example: back in the early day, many people (especially those business-manage-related one) believe they will no longer need accountant, as the machine has do the work for them."I can do accounting myself, let just fire all accountant and save a lot of money" they might think, but as we have already know, this opinion is completely incorrect, the accountant is still needed till today, no company can operate sufficiently without them, just not as much as they used to, and their job is not as simple as they used to either. Back in the past, many parts of the accountant's work are done by hand writing, manual calculation, manual illustration and so on, therefore a company would need a lot of accountants to complete the work. Since the Excels is introduced, most of those mentioned would be done by computer, therefore not that much accountant will be needed anymore, those who can not work with Excels will be eliminated and those who can work with Excels will stay and get more salary, in the other words: the accountants has adapted with the change of time. Compare to engineering stuff, accounting is probably not as hard to do, but if a person - without proper accounting training - is unable to perform the work themself by using new technology as claimed, why does he/she think that she/he would be able to do programming?

So what do we learned from this? We, the developers, need to adapt too. AI may not be able to replace all of our job completely at the moment, but it is getting better and better everyday, and one day it will be able to complete what it can not right now. So if someone wanted to stay in this industry, they will need to adapt to work with AI. Programmers now will have to know how to work fast and efficiently with AI and they will have to be able to do hard work as all the easy-to-immediate things will be done by AI, those who can not full fill those criteria will be rejected.

Furthermore, as AI growing, it will bring new type of technology, new tech field will be born with little to zero data to pre-train the AI and perhaps, new type of programmer will be born too. The cycle will repeat again and again: a technology is born and the most simple task still required human interaction => new technology appear to optimize the task => new technology is born.... All we should do, and also all we can do, is to improve our knowledge everyday, so we will be able to adapt with new technology when it come.

Collapse
 
malikshehzad952 profile image
Shahzad malik

I appreciate the perspective presented in this article, although I respectfully disagree with the notion that AI is a fad and programming is dead. While it's true that AI has garnered significant attention and hype in recent years, dismissing it as a passing trend overlooks the transformative impact it has had and continues to have across various industries.

Programming, as a skill, remains as vital as ever, even in the era of AI. While AI may automate certain aspects of coding and streamline certain processes, human developers still play a crucial role in designing, implementing, and maintaining these AI systems. Furthermore, programming extends far beyond just AI, with applications in web development, software engineering, data science, and more.

To gain a more comprehensive understanding of the evolving relationship between AI and programming, I invite readers to explore another insightful article at readmorr.com/is-it-worth-learning-.... It provides a balanced perspective on the value of coding skills and how they intersect with emerging technologies like AI.

Rather than viewing AI as a threat to programming, I believe it offers exciting opportunities for developers to leverage its capabilities and push the boundaries of what's possible. By embracing new technologies and continuously honing our skills, we can adapt and thrive in this ever-changing technological landscape.

Collapse
 
cjsmocjsmo profile image
Charlie J Smotherman

AI is already replacing humans in the work force. IBM to Pause Hiring for Jobs That AI Could Do.

What concerns me the most is that bad actors have access to AI resources to. It won't be long before AI is weaponized (if it hasn't been already).

Collapse
 
syxaxis profile image
George Johnson

I think you summed a very good point somewhere near the start when you said something about "societal issues". If AI takes over we will have anarchy or something close. People need purpose, you have expanding populations and if you have no jobs for them, they will throw themselves on the state, the state will have no money, the corps will not compensate for the jobs they've destroyed. They will have no customers as with no workers to earn/pump money around then modern world begins to collapse.

So no one can afford to make AI ubiquitous yet, it will lead to a rapid breakdown of society and the rich can hide but in any revolution they're the first against the wall.

As techies we will do what we alwasy have, we will just adapt to the new tech as demaneded by our paymasters. Youngsters always want to scream ahead of the old farts like me, they will learn quickly that in the real world in serious enterprise that "glacial" is the only word to describe the tech pace! 30+ years working in tech now in the finance industry, it's sloooooow. My current shop only just started coding React and using microservices around 2 years ago and the is 25 years old. We trade with companies still heavily reliant on IBM mainframes as they're bolting on adaptation like crazy to keep them attached to the modern world.

The whole tech industry might look shiny to the "normies" but we all know it's held together by blu-tack and sticky tape!

Collapse
 
ernst_zero profile image
Ernst03 • Edited

I like your reply.

If AI takes over we will have anarchy or something close.

It seems that it's always the "ISMS" as in Capitalism or Socialism.
Man cannot help itself as it lives and dies like all things.

So what is the "A.I.-ism" of things right?

Collapse
 
ernst_zero profile image
Ernst03 • Edited

Very interesting read.

I had a quiet chuckle to myself the other day.
I thought A.I. will take over once the I.F. becomes a reality. I.F. "Imaginary Friend." I grinned because look how we line up or pay so much for, a new Phone. Just imagine having a personal A.I. from childhood and lasting all your life.
I believe no one must fear the future. The road ahead is a long one. Remember there were once folks that programmed their computers single bit by single bit until assembly language arrived.
I admire the writer's skills.
I suppose it is fair to say I am a hobbyist programmer just learning about making an open source project happen.

Collapse
 
mistval profile image
Randall

Great post. I think the idea of ChatGPT replacing human programmers has a lot in common with the idea of all programming jobs being outsourced as low-wage, almost assembly-line-like labor. That idea was very prevalent in the USA when I was growing up and studying computer science, but it never happened.

These ideas both come from over-simplistic conceptions of what it takes to build software beyond just sitting down and typing on a keyboard.

Of course low-wage outsourcing did become a major part of the software landscape, and ChatGPT very well might too. But as you say, if it ever gets to where it can replace most or all programmers, it will be able to replace most other knowledge workers too.

Collapse
 
kyleljohnson profile image
Kyle Johnson

Good article. Well thought out. My only issue is this statement "improved the efficiency of developers"

That is where my struggle is. The real questions are by how much do these tools improve efficiency? Is it worth it? Will it get better?

I have yet to see a dramatic improvement. Call me when I'm able to have two day sprints instead of two weeks.

Collapse
 
carlosridg profile image
carlosridg

While the advent of Artificial Intelligence (AI) has undoubtedly revolutionized many aspects of technology and automation, it does not render coding dead. In fact, AI heavily relies on coding and programming to function effectively. Coding is the language through which developers instruct AI systems, design algorithms, and build intelligent models. AI algorithms and frameworks are themselves created and maintained through coding practices. While AI may automate certain repetitive or rule-based coding tasks, it simultaneously opens up new avenues and challenges for programmers. As AI becomes more sophisticated, coding skills will continue to be in demand to create, optimize, and maintain Artificial Intelligence systems. The role of coding may evolve, with a greater focus on developing AI models, integrating different technologies, and ensuring ethical and responsible AI implementations. Therefore, rather than replacing coding, AI serves as a powerful tool that empowers coders to explore new possibilities and advance the frontiers of technology.

Collapse
 
jwilliams profile image
Jessica williams

The idea that AI is a fad and programming is dead is a misguided one. AI is not a fad, but a rapidly growing field with enormous potential for solving complex problems and improving efficiency in various industries. However, it is true that AI technologies are rapidly evolving and the skills required to develop and maintain them are changing. This means that traditional programming skills are not sufficient, and developers must adapt to new tools and techniques. However, this does not mean that programming is dead. In fact, programming remains a crucial component of AI development and will continue to be important in creating new technologies and applications.

Collapse
 
dennisdupont profile image
Dennis Dupont

LLMs are unlikely to take jobs away from software engineers, but they will enable teams and individual contributors to be more efficient, and get more done with less time and resources.

This is exactly what will lead to layoffs of software engineers. The position may not be dead, but anytime big tech sees "greater efficiency" it means doing more with less employees.

Collapse
 
syeo66 profile image
Red Ochsenbein (he/him)

Every time I see someone struggle to come up with good prompts to get good code back, I always think 'if we only had some sort of language to tell a computer exactly what to do...' 😁

Collapse
 
ernst_zero profile image
Ernst03

If only I could consult my "I.F." IT will know something but alas I may be a memory and long dead before we all get our personal A.I. and it will be called our Imaginary Friend.

I was thinking to call mine if I live long enough "Ringo."

Collapse
 
shayes profile image
Shayes

Nice post! Your analysis is quite clear and I think you make many reasonable points. I'd like to add a couple of thoughts on this portion:

If you ask a lot of people what their definition of a programmer is, you’ll likely get a lot of responses that boil down to “someone who writes code”.

This is definitely a common misconception. It's useful to make the connection that this is actually closer to the definition of a coder, which is where the confusion comes from.

I think we can generally consider coding to be a subset of programming, which can be considered a subset of computer science. In my experience, programming usually has a lot more problem solving than coding and it's a much broader concept, as you discuss in your post. To put it in numbers, I'd estimate roughly only 30-40% of programming has to do with writing code, while the rest has to do with determining what code (and the structure of the code) to write to achieve the result we want, through a plethora of methodologies.