HACKER Q&A
📣 afaik

Is AI going to replace most programming jobs in the next 10 years?


I'm curious to hear what people think the next 10 years of the tech industry looks like given the recent rapid advancements in AI.

Will there be mass redundancies?

What would a programmer's job look like, if there's a need for programmers at all?

What skills do you think would be in high demand?


  👤 marssaxman Accepted Answer ✓
Of course not! The point of programming is not to do work, but to automate it, and there is no sort of work we are better at automating than our own. Every few years some task which used to be important gets automated away, and we all start taking it for granted - but somehow we never run out of tasks.

When I began my career, it was important to understand machine language, because compilers were not smart enough (and computers did not have the horsepower to run compilers that would be smart enough) to generate maximally efficient code. Every performance-critical loop therefore featured a nugget of hand-written assembly code, because that was the only way to build usable production software.

But then... there were rapid advances in processor speed, and memory capacity, and compiler technology; suddenly, all those assembler skills became obsolete, because you couldn't beat the compiler anymore. Automation ate the whole problem. What happened? Mass layoffs? Hell no! Programmers just moved on up to the next level of abstraction, and kept on solving problems: newer, more interesting problems.

Repeat, and repeat, and repeat: that's how the industry works.


👤 muzani
I see them sort of like tractors. They'll replace a lot of work, but not all of it. Farmers still have to be tough and strong. Farmers are getting paid a hell lot better than they used to in the past, but we still need millions of farmers.

The programmers of the future will look more like directors or managers today. Just like a director tries to bring out the best from a skilled actor, an AI-integrated dev needs to properly understand the nuances of the AI they're working with. They don't need to know ML, but they do need to understand the differences in personality between, say, GPT-3 and GPT-J.

The other skill would be communication. Newbies talk to AI like they're talking to some kind of oracle. They assume the AI understands without context. A common mistake is something like assuming the AI understands sarcasm without knowing that it's from a source that would be sarcastic. I've often said that you have to talk to it like you'd talk to a child. Teachers often put a lot of effort into explaining things better.

You can ask it to write generic "email validation code" easily. What's harder is questions like "build it to this architecture" or "this code is doing X, make it do Y instead". You tell it the steps to reproduce the bug, the conditions that make the bug happen, the expected results and the actual results. So it's still the same skillset used today but you can't get away with being a "good dev who can't work with others" anymore.


👤 solumunus
Anyone who thinks it will is absolutely out to lunch, we're nowhere near that. We're at such a crude level with AI that even automated car driving is far out of reach. The amount of "intelligence" in our current AI is laughable and there's no reason to believe there will be significant progress in the next 10 years.

My guess is this will literally NEVER be a thing.


👤 mattbgates
While there are many jobs that can be automated.... there's far more programmer roles going unfulfilled... and there's no one to actually create the AI to do any of their job. The job of programmer is quite safe, but it's all about understanding which programming languages will be in demand for the next 10 to 30 years which is a long time for a career position.

👤 smoldesu
Probably not. Programming and AI are like two different sides of the problem-solving spectrum. With AI (specifically ML models) you're basically plugging in a pair of high-precision smart-dice into a variety of parameters. If you use the right data and adjust the right settings you can get good results, but they're not consistent or guaranteed to be correct. They're best-guess estimates that need to be culled by a human or a discriminator model. In either case, there isn't an effective way to sort through the "noise" since everything is noise.

IANAMLE (I Am Not A Machine Learning Expert) but the software we're building today will still be relevant in 10 years. It's hard to say where ML will be in 10 years, but I doubt it will replace most programming jobs.


👤 danwee
As with any other kind of automation, if AI takes over programming jobs, that will introduce a new kind of job in itself (I don't know which kind of job... maybe one in which programmers have to review/double check the code the AI has produced? They won't be programmers anymore, but they'll get a different name I guess). So, the programmers who don't adapt and become, let's say, "AI-code checkers", they will be jobless. The programmers who can adapt, will still have a job.

I don't see any difference here. Same has happened before:

- programmers who were punching cards

- programmers who were writting assembly

- programmers who were writting C code

- programmers who are wiring SAAS APIs together

- programmers who are reviewing AI code

- etc.


👤 labarilem
I don't think so. Even some mildly complex CRUD app cannot be done decently with no-code or other smarter code-generation tools. "Templated" software has already been productized where it's actually possibile (e.g. Shopify). Bue let's even suppose such AI exists, then someone would need to instruct it, check and test its output (is it safe code? is it using a dismissed library? etc.). At least I don't see it happening soon enough to be worried.

👤 hnaccountme
Not AI. Platforms like Microsoft's PowerApps or Shopify will. If you think about it most needs of small and medium enterprises can be met with a combination of office 365 and dynamics 365 without the need for a programmer. Anyone with mild technical skills can figure out most of Microsoft's Power Platform. Give it 10 years and there will be no market for programmers in such fields.

👤 robbywashere_
No. And this is what everyone gets wrong about advancements in technology “replacing peoples jobs” What will happen instead is AI will augment the job to be more productive/ efficient / or give an ability to produce something not possible before. GitHub co-pilot is a good hint as to where programming jobs will be going.

👤 yurtly
Probably not. Computing power will end up being rationed at some point in the near future, and World War 3 is likely just around the corner too. It'll be another AI winter, followed by a nuclear winter. I plan on being dead by then, hopefully.

👤 marstall
Not mine. I almost exclusively write glue code that forms a bridge between internal, closed data structures and a firmament of third party libraries. How's an AI going to help with that?

👤 GoldenMonkey
And who will be programming the AI?

👤 pryelluw
The easier stuff to do will certainly be made redundant by something similar to stable diffusion.

👤 joanfihu
AI and LLM are a text interface to code.

Someone still needs to write the prompts.

It’s next level of abstraction.


👤 codegeek
They are Machines. Machines need to be operated by humans. So No.

👤 kbelder
How do you envision that working? A manager needs to have a feature added to their app that lets you customize product attributes. How do they communicate this to the AI? Sketches and flowcharts? Empty stub functions?

What happens with the 1500 lines of code the AI spits out? Is it merged in and rigorously tested? What happens if there's an error? Start over?

I'm just not really seeing how it'll work.

As an adjunct, a tool to make a programmer more efficient, I see a thousand ways it could help. But that doesn't reduce the demand for programmers. It makes them more valuable.


👤 joshxyz
no comment but i hope for greater breakthroughs in that field.