- cross-posted to:
- programmerhumor@lemmy.ml
- cross-posted to:
- programmerhumor@lemmy.ml
Doesn’t matter if they can replace coders. If CEOs think it can, it will.
And now, it’s good enough to look like it works so the CEO can just push the problem down the road and get an instant stock inflation
And then it’ll all go to shit and proper programmers will be able to charge bank to sort it out.
I hope it works like that.
I hope all those companies go bankrupt, people hiring those CEOs lose everything, and the CEOs never manage to find another job in their lives…
But that’s a not bad second option.
The CEOs will get a short term boost to profits and stock price. Theyll get a massive bonus from it. Then in a few years when shit starts blowing up, they will retire before that happens with a nice compensation package, leaving the company, employeez, and stockholders up shits creek from his short sighted plan.
But the CEO will be just fine on his yacht, dont worry.
C-Suite execs are probably the one thing LLMs could actually replace and save the company more money than layoffs, but it’ll never happen.
Companies aren’t democracies. They are monarchies with the illusion of democracy via shareholders.
It already does, there are people selling their services to unfuck projects that were built with generated code.
Hell yeah. Those people are smart. I hope they get super rich on fixing AI nonsense.
They’ll end up being exploited
What do you think happens already lmao
What’s your point?
I don’t think this will lead to any additional exploitation as that’s already the general business model.
That’s the point I was making
I don’t want so spend my career un-fucking vibe code.
I want to create something fun and nice. If I wanted to clean other people’s mess, I would be a janitor.
If I wanted to clean other people’s mess, I would be a janitor.
I’ll take your share of the slop cleanup if you don’t want it. I wouldn’t mind twice the slop cleanup
extortionsalary.Cleaning other people’s mess is okay for a while. But making a career out of it is too much for me.
I do firmware for embedded systems and every mechanical, electronics or general engineering issue is shoved down in my court because it’s easier for people to take shortcuts in the engineering process and say “we’ll fix it in the firmware” since I can change code 100 times a day.
Slop is the embodiment of that on steroids and it will get old pretty fast.
Cleaning other people’s mess is okay for a while. But making a career out of it is too much for me.
Oh yes. I feel that, too. I’ll give them maybe a year of help, for the right price. Two years if the price is very right. Haha.
Slop is the embodiment of that on steroids and it will get old pretty fast.
So true.
It never actually seems to work out that way though. Sure, for Y2K there was a short period where there were decent contracts fixing that bug in various codebases, but it wasn’t something that lasted very long.
Managers and owners would much rather pass off a terrible PoS and have their users deal with it, or somehow get the government to bail them out, or hire a bunch of Uyghur programmers from a Chinese labour camp, or figure out some other way to avoid having to pay programmers / software engineers what they’re actually worth.
The most consistent and highest paying jobs I’ve had are replacing or fixing legacy and garbage systems. I don’t think the current gen llm’s are anywhere close to being able to do those jobs, and is in fact causing those jobs to have more work the more insecure, inefficient trash they generate.
Fellow tech-trash-disposal-engineer here. I’ve made a killing on replacing corporate anti-patterns. My career features such hits and old-time classics like:
- email as workflow
- email as version control
- email as project management
- email as literally anything other than email
- excel as an relational database
- excel as project management
- help, our wiki is out of control
- U-drive as a multi-user collaboration solution
- The CEO’s nephew wrote this 8 years ago and we can’t get rid of it
In all of these cases, there were always better answers that maybe just cost a little bit more. AI will absolutely cause some players to train-wreck their business, all to save a buck, and we’ll all be there to help clean up. Count on it.
excel as an relational database
That reminds me of a story. I used to do IT consulting, years ago. One client was running their 5 person real estate office off a low quality, consumer grade, box store HP desktop repurposed as a server. All collaboration was through their U drive, plus every profile had their desktop folder redirected there.
The complaint was the classic “everything is slow”, which turned out to be “opening my spreadsheet takes 10 minutes then it’s slow”. Yeah, because that poor little “server” had a single 100 Mb jack and the owner had a 1.5 GB excel spreadsheet project where he was trying to build a relational database and property valuation tool. Six fucking heavily cross referenced tabs, some with thousands of entries. He was so proud when I asked him to explain what was going on there. He fired me when I couldn’t fix his issue without massive changes to either his excel abomination or hardware.
Hey, kudos for finding multiple anti-patterns all in one place like that. I didn’t even think about “underpowered desktop as company server” as another pattern, but here we are.
Sorry you didn’t get the contract, but that sounds like a blessing in disguise to be honest.
It depends on the methodology. If you’re trying to do a direct port. You’re probably approaching it wrong.
What matters to the business most is data, your business objects and business logic make the business money.
If you focus on those parts and port portions at a time, you can substantially lower your tech debt and improve developer experiences, by generating greenfield code which you can verify, that follows modern best practices for your organization.
One of the main reasons many users are complaining about quality of code edited my agents comes down to the current naive tooling. Most using sloppy find/replace techniques with regex and user tools. As AI tooling improves, we are seeing agents given more IDE-like tools with intimate knowledge of your codebase using things like code indexing and ASTs. Look into Serena, for example.
Describing what they want in plain, human language is impossible for stakeholders.
Even writing an RFC for a mildly complicated feature to mostly describe it takes so many words and communication with stakeholders that it can be a full time job. Imagine an entire app.
LLMs need to be trained to work with reptilian language. Problem solved.
Getting ai to do a complex problem correctly takes so much detailed explanation, it’s quicker to do it myself
While it’s possible to see gains in complex problems through brute force, learning more about prompt engineering is a powerful way to save time, money, tokens and frustration.
I see a lot of people saying, “I tried it and it didn’t work,” but have they read the guides or just jumped right in?
For example, if you haven’t read the claude code guide, you might have never setup mcp servers or taken advantage of slash commands.
Your CLAUDE.md might be trash, and maybe you’re using @file wrong and blowing tokens or biasing your context wrong.
LLMs context windows can only scale so far before you start seeing diminishing returns, especially if the model or tools is compacting it.
- Plan first, using planning modes to help you, decomposition the plan
- Have the model keep track of important context externally (like in markdown files with checkboxes) so the model can recover when the context gets fucked up
https://www.promptingguide.ai/
https://www.anthropic.com/engineering/claude-code-best-practices
There are community guides that take this even further, but these are some starting references I found very valuable.
While you’re right that it’s a new technology and not everyone is using it right, if it requires all of that setup and infrastructure to work then are we sure it provides a material benefit. Most projects never get that kind of attention at all, to require it for AI integration means that currently it may be more work than it’s worth.
“If I need to write boilerplate and learn a new skill, is it really worth it?”
My point was the investment in vs the value out may not be worth it for many projects. Beyond that, it may not be maintainable for all projects (at least with how fast things have been changing in this space and the heavy reliance on 3rd party systems to make it work).
It’s professional development of an emerging technology. You’d rather bury your head in the sand and say it’s not useful?
The reason not to take it seriously is to reinforce a world view instead of looking at how experts in the field are leveraging it, or having discourse regarding the pitfalls you have encountered.
The Marketing AI hype cycle did the technology an injustice, but that doesn’t mean the technology isn’t useful to accelerate determistic processes.
This is why I say some people are going to lose their jobs to engineers using AI correctly, lol.
So even more work than actual coding.
Yup. It’s insanity that this is not immediately obvious to every software engineer. I think we have some implicit tendency to assume we can make any tool work for us, no matter how bad.
Sometimes, the tool is simply bad and not worth using.
That’s not all! It’s also less rewarding!
Everyone is a senior engineer with an idiot intern now.
Early adopters will be rewarded by having better methodology by the time the tooling catches up.
Too busy trying to dunk on me than understand that you have some really helpful tools already.
The canonical video which demonstrates that truth.
‘I want you to make me a Facebook-killer app with agentive AI and blockchains. Why is that so hard for you code monkeys to understand?’
You forgot we run on fritos, tab, and mountain dew.
Maybe he want to write damn login page himself.
Not say it out loud. Not stupid… Just proud.
You want the answer to the ultimate question of life, the universe, and everything? Ok np
And after each of these, there’s been _more _ demand for developers.
When growing up in the 70’s “computer programmers” were assumed to be geniuses. Nowadays they are maybe one tier above fast food workers. What a world!
Well to be fair if you’re a programmer in the 70s you might as well be a genius.
Nowadays they are maybe one tier above fast food workers.
:-/
Having worked both jobs, I could point to a few differences
Yeah fast food is a lot more stressful.
Every single job in my entire life I have made more money, and my workload has gotten easier. I am grateful everyday I escaped the trap. Very few do.
Food is essential, the new shiny way to gobble more RAM to display a blue mushroom in a button isn’t.
That environment was wild though. At the time, you basically needed to be an electrical engineer and/or a licensed HAM operator, just to have your head wrapped around how it all worked. Familiarity with the very electronics of the thing, even modifying the hardware directly when needed, was crucial to operating that old tech.
If ChatGPT’s browser is just another chromium clone and they couldn’t get their own AI to write a browser, I doubt other customers of theirs will get their shitbot to write code for them either.
Early 80s: High level structured languages (Hello COBOL!)
Late 80s: 4th generation languages
At least before that people just assumed everybody that interacted with a computer was a programmer, so managers didn’t have a compulsion when hearing the name and decided to fire all programmers.
I barely use AI for work but I gotta say that it’s the first time I can get some very specific tasks done faster.
I currently make it write code generators, I fix the up and after that I have something better at making boilerplate than these LLMs. Today I had to throw up a bunch of CRUD for a small webapp and it saved me around 1-2 hours.
That’s a great methodology for a new adopter.
Curious if you read about it, or did it out of mistrust for the AI?
I mistrust because it’s inaccurate.
Yeah forms and very basic HTML its good. Anything complex and you have to take over. Great at saving time, like an intern. But a bit worse in that the intern will typically get better and the ai hasn’t really.
After shovels were invented, we decided to dig more holes.
After hammers were invented, we needed to drive more nails.
Now that vibe coding has been invented, we are going to write more software.
No shit
I’m still waiting to be replaced by robots and computers.
My company recently acquired another firm that tried to outsource the entire IT department and proceeded to shit itself to death.
Go ahead cowards. Replace me with a computer. I will become more powerful than you could ever imagine.
Feeling that. My company is off shoring and out sourcing a lot of stuff now. It’s a nightmare. But profits are up. So hey, who cares if the software is held together with hopes and dreams. And our hosted services admins don’t have a clue.
This is why I half ass things with AI. Mgmt clearly doesn’t care.
You can add SQL in the 70s. It was created to be human readable so business people could write sql queries themselves without programmers.
So is COBOL.
(Is there any sane alternative to SQL?)
(Is there any sane alternative to SQL?)
Well there is our lord and savior, or so I’m told by many MBA(s), No SQL
Oh wait you said Sane. Nevermind.
(Is there any sane alternative to SQL?)
Yes, no SQL.
I lol’d
Ironically, one of the universal things I’ve noticed in programmers (myself included) is that newbie coders always go through a phase of thinking “why am I writing SQL? I’ll write a set of classes to write the SQL for me!” resulting in a massively overcomplicated mess that is a hundred times harder to use (and maintain) than a simple SQL statement would be. The most hilarious example of this I ever saw was when I took over a young colleague’s code base and found two classes named “OR.cs” and “AND.cs”. All they did was take a String as a parameter, append " OR " or " AND " to it, and return it as the output. Very forward-thinking, in case the meanings of “OR” and “AND” were ever to change in future versions of SQL.
Object Relational Mapping can be helpful when dealing with larger codebases/complex databases for simply creating a more programmatic way of interacting with your data.
I can’t say it is always worth it, nor does it always make things simpler, but it can help.
My standard for an orm is that if it’s doing something wrong or I need to do something special that it’s trivial to move it aside and either use plain SQL or it’s SQL generator myself.
In production code, plain SQL strings are a concern for me since they’re subject to the whole array of human errors and vulnerabilities.
Something like
stmt = select(users).where(users.c.name == 'somename')is basically as flexible as the string, but it’s not going to forget a quote or neglect to use SQL escaping or parametrize the query.And sometimes you just need it to get out of the way because your query is reaaaaaal weird, although at that point a view you wrap with the orm might be better.
If you’ve done things right though, most of the time you’ll be doing simple primary key lookups and joins with a few filters at most.
I used to use ORMs because they made switching between local dev DBs ( like SQLLite, or Postgres) and production DBs usually painless. Especially for Ruby/Sinatra/Rails since we were writing the model queries in another abstraction. It meant we didn’t have to think as much about joins and all that stuff. Until the performance went to shit and you had to work out why.
I don’t have a lot of experience with projects that use ORMs, but from what I’ve seen it’s usually not worth it. They tend to make developers lazy and create things where every query fetches half the database when they only need one or two columns from a single row.
deleted by creator
Yeah. Unless your data model is dead simple, you will end up not only needing to know this additional framework, but also how databases and SQL work to unfuck the inevitable problems.
the problem with ORM is that some people go all in on it and ignore pure SQL completely.
In reality ORM only works well for somewhat simple queries and structures, but at some times you will have to write your own queries in SQL. But then you have some bonus complexity, that comes from 2 different things filling the same niche. It’s still worth it, but there is no free cake.
I’ve always seen as that as a scapehatch for one of the most typical issues with ORMs, like the the N+1 problem, but I never fully bought it as a real solution.
Mainly because in large projects this gets abused (turns out none or little of the SQL has a companion test) and one of the most oversold benefits of ORMs (the possibility of “easily” refactor the model) goes away.
Since SQL is code and should be tested like any other code, I rather ditch the whole ORM thing and go SQL from the beginning. It may be annoying for simple queries but induces better habits.
What part of this is irony?
I did that myself back in the day. Not overly complicated, but a SQL builder.
I think it’s because SQL is sort-of awkward. For basic uses you can take a SQL query string and substitute some parameters in that string. But, that one query isn’t going to cover all your use cases. So, then you have at least 2 queries which are fairly similar but not similar enough that it makes sense just to do string substitutions. Two strings that are fairly similar but distinct suggests that you should refactor it. But, maybe you only make a very simple query builder. Then you have 5 queries and your query builder doesn’t quite cover the latest version, so you refactor it again.
But, instead of creating a whole query builder, it’s often better to have a lot of SQL repetition in the codebase. It looks ugly, but it’s probably much more maintainable.
Least it’s an improvement over no/low code. You can dig in and unfuck some ai code easily enough but god help you if your no code platform has a bug that only their support team can fix. Not to mention the vendor lock in and licensing costs that come with it.
help me. I am stuck working in SDET and my job makes me do a cert every 6 months that’s “no code” and I need to transition to writing code.
I’ve been SDET since 2013, in c# and java. I am so fucking sick of selenium and getting manual testing dumped on my lap. I led a test team for a fortune 500 company as a contractor for a project. I can also program in the useless salesforce stack (apex, LWC).
I am the sole breadwinner for my household. I have no fucking idea what to do.
If you’re not already messing with mcp tools that do browser orchestration, you might want to investigate that.
For example, if you setup puppeteer, you can have a natural conversation about the website you’re working on, and the agent can orchestrate your browser for you. The implication is that the agent can get into a feedback loop on its own to verify the feature you’re asking it to build.
I don’t want to make any assumptions about additional tooling, but this is a great one in this space https://www.agentql.com/
If only this wasn’t becoming the agenda of big corporations…they are dropping jobs left and right and it’s scary. Robots will be doing most of our jobs sooner than later…lookup flippy bot we won’t even have entry level jobs soon and the problem is we’re not doing this to become more like star trek. They are doing this to add seventeen more marble gold diamond pillars to their dogs puppies houses on their 9000 acre private islands.
Building apps without using code is still programming, since you must create logic for the program.















