An interesting trend is these comments: the worse a code base is, the more helpful AI is for expanding it (without actually fixing the underlying problems like repetitive overly long unexpressive code).
Forward-thinking companies should use AI to transform each developer into a "10x developer,"
Developer + AI ≠ Developer x 10
At best, it means 1.25 x Developer, but in most cases, it will mean 0.5 x Developer. Because AI cannot be trusted to generate safe, reliable code.
Computers are machines designed to quickly, precisely, and consistently make mistakes.
I think 10x is a reasonable long term goal, given continued improvements in models, agentic systems, tooling, and proper use of them.
It's close already for some use cases, for example understanding a new code base with the help of cursor agent is kind of insane.
We've only had these tools for a few years, and I expect software development will be unrecognizable in ten more.
It also depends on the usecase. It likely can help you better at throwing webpages together from zero, but will fall apart once it has to be used to generate code for lesser-discussed things. Someone once tried to solve an OpenGL issue I had with ChatGPT, and first it tried to suggest me using SDL2 or GLFW instead, then it spat out a barely working code that was the same as mine, and still wrong.
A lot of it instead (from what I've heard from industry connections) being that the employees are being forced to use AI so hard they're threatened with firings, so they use most of their tokens to amuse themselves with stuff like rewriting the documentation in a pirate style or Old English. And at the very worst, they're actually working in constant overtime now, because people were fired, contracts were not extended, etc.
~~Developers~~ ~~developers~~ ~~developers~~ ~~developers~~, ~~developers~~ ~~developers~~ ~~developers~~ ~~developers~~ AI
This is so fucking sad to acknowledge that a lot of people just want to squeeze any profit left in the industry, even though they know AI is a great tool for developers, not a replacement. They must know that because anyone who can access it can replicate the same things, making these products uncompetitive.
AI is a great tool for developers, not a replacement
AI isn't a great tool for developers. It's a great tool for mitigating the knowledge gap between an individual's academic understanding of a development project and the syntax involved in the language they are attempting to deploy.
As the number of programming languages has proliferated faster than the volume of developers versed in each language, and the older languages have lost much of their professional base to retirement and layoffs, we've needed increasingly elaborate tools to fill in the skills gaps.
But AI doesn't fix the underlying problem of an increasingly large backlog of code desperately in need of refactor or replacement. It just papers over the problem with a cheat-sheet of simple conversions that junior developers can leverage to liter the next iteration of the codebase with bandaids.
A proper solution to our coding backlog would be educational first and foremost. We need more rigorously enforced orthodox approaches to coding. We need more backwards compatibility between systems. We need to refine the number of languages in active use and narrow the size and scope of their libraries. We need a more universalist approach to building and maintaining database schemas, digital communications, and business practices. We need a publicly funded open source community of developers to build the backbone of software into the 21st century.
What we're producing is the opposite of that. Less rigor. Fewer recognizable standards. Less training. Poorer code hygiene and weaker enforcement of best practices. More bugs. So many more bugs. And enormous volumes of legacy code that nobody will be able to maintain - or even understand - in another twenty years.
And it's intentional. Lay off the workers. Implement AI Slop. Slop does sloppy work. Hire back workers as Temps or Contractors. No benefits. Lower pay.
Like all of Capitalism. It's a fucking scam. A conjob. A new innovation in fucking over workers. (Ironically the only "innovation" ever directly produced by Capitalism)
I remember when everyone was saying that companies would need programmers and that every kid should learn programming. Now I realize that companies were promoting that idea so they're be a surplus of programmers competing with each other and companies could underpay and swap out workers quickly.
exactly, "reserve army of labour" is a tale as old as capitalism.
Just that the IT industry has run a very effective propaganda campaign for it
Yeah obviously. Whenever a company says "we can't get enough X workers" they implicitly mean "at the price we want to pay".
But that doesn't mean they were wrong. Programming is still an amazingly well paying and low stress career. Being replaced by AI is a little worrying, but I think by the time AI is good enough to really replace programmers, it will also be able to replace most white collar jobs - HR, finance, etc. - and society will have bigger problems.
I would not market an industry well know for burnouts as "low stress" though.
The games programming industry is high stress, but apart from that it isn't. I don't think it's known for burnouts any more than any other industry.
I don't think it's known for burnouts any more than any other industry.
Whoever your project manager is, I hope you have thanked them today. You're clearly working with some of the least shitty ones.
Since when are contractors lower pay? Companies waste fortunes on them.
That's because the agency gets half for basically doing nothing
They dont usually have benefits (eg: health insurance) or time off
Even accounting for that (at least in countries with national healthcare), they're definitely more expensive than regular employees.
You're right, but I think the main reason companies like it is because it's easier to get rid of contractors than full-time employees.
Employees are a liability on the balance sheet whereas contractors are just lumped into a project cost.
Healthcare is only a fraction of fringe costs — employer payroll tax, unemployment insurance, facilities and admin…
Even if AI is an actual tool that improves the software development speed of human developers (rather than something that ends up taking away in time spending reviewing, correcting and debugging the AI generated code, the time savings it gives in automatically writing the code), it's been my experience in almost 30 years of my career as a Software Engineer that every single tooling improvements that makes us capable of doing more in the same amount of time is eaten up by increasing demands on the capabilities of the software we make.
Thirty years ago user interfaces were either CLI or pretty simple with no animations. A Software Systems was just a software application - it ran on a single machine with inputs and outputs on that machine - not a multi-tiered octopus involving a bunch of back end data stores, then control and data retrieval middle tiers, then another tier doing UI generation using a bunch of intermediate page definition languages and a frontends rendering those pages to a user and getting user input, probably with some local code thrown into the mix. Ditto for how cars are now mostly multiple programs running of various microcontrollers with one or more microprocessors in the mix all talking over a dedicated protocol. Ditto for how your frigging "smart" washing machine talking to your dedicated smartphone app for it probably involves a 3rd machine in the form of some server from the manufacturer and the whole thing is running over TCP/IP and using the Internet (hence depending on a lot more machines with their dedicated software such as Routers and DNS servers) rather than some point-to-point direct protocol (such as Serial) like in the old days.
Anyways, the point being that even if AI actually delivers more upsides than downsides as a tool to improve programmer output, that stuff is going to be eaten up by increasing demands on the complexity of the software we do, same as the benefits of better programming languages were, the benefits of better IDEs were, of the widespread availability of pre-made libraries for just about everything were, of templating were, of the easiness to find solutions for the problem one is facing from other people on the Internet were, of better software development processes were, of source control were, of colaborative development tools were and so on.
Funnily enough, for all those things there were always people claiming it would make the life of programmers easier, when in fact all it did was make the expectations on the software being implemented go up, often just in terms of bullshit that's not really useful (the "smart" washing machine using networking to talk to a smartphone app so that the machine manufacturers can save a few dollars by not putting as many physical controllers in it, is probably a good example)
This assumes it is about output. 20 years of experience tell me it's not about output, but about profits and those can be increased without touching output at all. 🤷♂️
*specifically short-term profits. Executives only care about the next quarter and their own incentives/bonuses. Sure the company is eventually hollowed out and left as a wreck, but by then, the C Suite has moved on to their next host org. Rinse and repeat.
Genuinely a bit shocked to see the number of robolovers in these comments. Very weird, very disheartening. No wonder so much shit online doesn't work properly lol
No wonder so much shit online doesn't work properly lol
I know. I live in a constant state of shock that my peers think the next stupid tool will fix everything without any discipline or hard work, and equal shock that (almost) nothing online ever works correctly.
I should be able to find a correlation between these two observations, but I'm just too naive.
I don’t honestly believe that AI can save me time as a developer. I’ve tried several AI agents and every single one cost me time. I had to hold its hand while it fumbled around the code base, then fix whatever it eventually broke.
I’d imagine companies using AI will need to hire more developers to undo all the damage the AI does to their code base.
I don’t honestly believe that AI can save me time as a developer. I’ve tried several AI agents and every single one cost me time.
I have had the exact same experience many times. But I just keep trying it out anyway, often with hilariously bad results.
I am beginning to realize that I like cool technology more than I like being productive.
I've found it can just about be useful for "Here's my data - make a schema of it" or "Here's my function - make an argparse interface". Stuff I could do myself but find very tedious. Then I check it, fix its various dumb assumptions, and go from there.
Mostly though it's like working with an over-presumptuous junior. "Oh no, don't do that, it's a bad idea because security! What if (scenario that doesn't apply)" (when doing something in a sandbox because the secured production bits aren't yet online and I need to get some work done while IT fanny about fixing things for people that aren't me).
Something I've found it useful for is as a natural language interface for queries that I don't have the terminology for. As in "I've heard of this thing - give me an overview of what the library does?" or "I have this problem - what are popular solutions to it?". Things where I only know one way to do it and it feels like there's probably lots of other ways to accomplish it. I might well reject those, but it's good to know what else exists.
In an ideal world that information would be more readily available elsewhere but search engines are such a bin fire these days.
Programming
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