this post was submitted on 18 Feb 2024
30 points (76.8% liked)

Programming

17408 readers
82 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 1 year ago
MODERATORS
 

For some background, I originally wanted to break into programming back when I was in college but drifted more into desktop tech support and now systems administration. SysAdmin work is draining me, though, and I want to pick back up programming and see if I can make a career out of it, but industry seems like it could be moving in a direction to rely on AI for coding. Everything I've heard has said AI is not there yet, but if it's looking like it hits a point where it reaches an ability to fully automate coding, should I even bother? Am I going to be obsolete after a year? Five years?

you are viewing a single comment's thread
view the rest of the comments
[–] palebluethought@lemmy.world 89 points 9 months ago (1 children)

Other than maybe a few very rote, boilerplate types of development, all this shit about replacing coders is almost entirely noise made by either the wishful thinking of oligarchs or credulous repetition of that wishful thinking by clueless journalists.

But it's still a pretty rough time to be just getting into tech, just because of the state of the job market.

[–] agressivelyPassive@feddit.de 0 points 8 months ago (2 children)

The real question here is: how much "coding work" is there left to do?

Currently, the bottleneck is available developers (barring short term problems). Even if AI would make every developer 30% more efficient, there would still be work to do. But there will be a point, where this tipps over. At some point, there's no additional demand anymore. We just don't know, when this will happen. 50%, 100%, maybe 700%?

One thing to keep in mind is, that AI code doesn't have to be good, just good enough. Many nerds seem to think that efficiency, beauty or elegance have value. But to a business, that's just a collateral benefit. Software can be buggy, slow, hard to update. That all doesn't matter, if the results and costs are in a good-enough ratio.

[–] MagicShel@programming.dev 24 points 8 months ago (1 children)

How much coding work is left to be done? Infinity. There will always be more needed. Always. And while there is a certain truth to the idea that software just needs to be good enough, it will very quickly become nearly impossible to maintain and add new features.

AI doesn't make us 30% more efficient. There are certain tasks that's it's really helpful for, but they are really limited. I can see issues with junior developers being replaced with AI when they are in the takes more work to train them then just do their job stage. Beyond that, a good developer has skills and experience that AI will never be able to replace, especially since the code has to be maintained.

[–] agressivelyPassive@feddit.de -4 points 8 months ago (2 children)

How much coding work is left to be done? Infinity.

Well, no. That's just plain wrong. There is only a certain amount of demand for software, like for every other product or service. That's literally economy 101.

AI doesn't make us 30% more efficient.

You don't know that. Think about how much time you spend on boilerplating. Not only the "traditional" boilerplate, but maintenance, regular updates, breaking upgrades for dependencies, documentation.

Think about search. Google isn't that good at actually understanding what you want to find, an AI might find that one obscure blog post from 5 years ago. But in 10s, not 10h.

Think about all the tests, that you write, that are super obvious. Testing for http 500 handling, etc.

A technology doesn't have to replace you to make you more efficient, just taking some work off your shoulders can boost productivity.

[–] abhibeckert@lemmy.world 8 points 8 months ago* (last edited 8 months ago) (1 children)

Well, no. That’s just plain wrong. There is only a certain amount of demand for software, like for every other product or service. That’s literally economy 101.

But that demand isn't going anywhere. A company with good profits is always going to be willing to re-invest a percentage of those profits in better software. A new company starting out is always going to invest whatever amount of risk they can tolerate on brand new software written from scratch.

That money will not be spent on AI, because AI is practically free. It will always be spent on humans doing work to create software. Maybe the work looks a bit different as in "computer, make that button green" vs button.color = 'green' however it's still work that needs to be done and honestly it's not that big of an efficiency gain. It's certainly not as big as the jump we did decades ago from hole punch programming to typing code on a keyboard. That jump did not result in lay offs, we have far more programmers now than we did then.

If productivity improves, if anything that will mean more job opportunities. It lowers the barrier to entry allowing new projects that were not financially viable in the past.

[–] festus@lemmy.ca 2 points 8 months ago* (last edited 8 months ago)

Yes there will always be demand for coders, but will there be enough demand for the current (increasing) supply? Right now the global number of software developers is growing by about a million per year (total is only 28.7 million) - this means that (very roughly) to keep salaries stable we also need demand for new software to be growing by about 3.5% per year. I know that doesn't sound like a lot, but a decade from now you'll need 1.4 jobs for every job now to keep up with the supply.

In the past we had new dynamics to get end-users to spend more and more time using computers and hence software (desktop PCs, video games, internet, mobile phones, social media, etc.). At this point there's so little time left in a consumer's day that tech can grow into that I worry that any further advancements will have to cannibalize from another area; I.e. we've reached peak demand for software.

[–] MagicShel@programming.dev 6 points 8 months ago

I agree with you on the testing point, but I disagree with everything else that you’ve said. I didn't say infinite demand, did I? I said there is an infinite need for coding. Just in the realm of business software, there will never come a day when there isn’t one more business requirement, and there will never come a day when there isn’t a need to translate that requirement into code. Is that literal infinity or only effectively so? I don't care. I'm not writing an academic thesis here.

Coding demand is not constrained by the amount of work that needs to be done, but by money (and to a degree organization because larger groups become less efficient) because there will always be more coding that needed to be done.

[–] MajorHavoc@programming.dev 15 points 8 months ago

Currently, the bottleneck is available developers

The bottleneck is developers competent to code in each specific domain. We have nowhere near enough, even for the most popular subject - writing an eCommerce store.

Source: Let's all play a quick round of "think of every eCommerce site you don't hate." Okay, now let's all try to think of a second one. Anyone still trying for three?

The specific domain list is, I suspect, currently uncountable.

Twenty five years from now, I suspect we can get a ballpark approximate count of developer specializations by starting at the top of the popular WordPress plugins list, and stopping when we start hitting obvious duplicates.

After that, we can compare that count to the known number of tailored-to-purpose AIs available.

Subtract the two, and that's the remaining runway on "AI is taking all of our jobs". (If feeling generous, add a bit of leeway for each AI also needing some time to stop sucking.)

Source: I'm part of the AI problem/solution. It's fun times, but y'all excited folks are going to be disappointed for a long while, unless you're incredibly satisfied with what you already have.

Even when we reach true sentient AI (which may still be impossible), there will be an uphill road to teach it each domain we want it to work in.

Teaching humans is difficult. Teaching computers is difficult. Teaching a computer that thinks like a human might be much easier.

Perhaps it will teach itself at an incredible speed. Some humans do. But history suggests that getting each AI up to speed, in each domain we need it for, will still be...difficult.