- cross-posted to:
- programmerhumor@lemmy.ml
- cross-posted to:
- programmerhumor@lemmy.ml
Building apps without using code is still programming, since you must create logic for the program.
Literally nothing of consequence has been built with visual, mda or no-code paradigms.
Well let me tell you, the things built in the vibe-cpdong paradigm will have consequences
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.
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.
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.
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!
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.
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.
Well to be fair if you’re a programmer in the 70s you might as well be a genius.
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.
Explicit programmers are needed because the general public has failed to learn programming. Hiding the complexity behind nice interfaces makes it actually more difficult to understand programming.
This comes all from programmers using programs to abstract programming away.
What if the 2030s change the approach and use AI to teach everybody how to program?
the general public has failed to learn programming
That’s like saying that the general public has failed to learn surgery, or the general public has failed to learn chemical engineering.
There are certain things that it just doesn’t make sense for the general public to ever be expected to learn.
People bake and learn basic chemistry. The baseline of general programming knowledge could be more than zero. It’s a fundamental part of our society.
If you look at “I didn’t have eggs” you’ll quickly figure out that very few people are learning chemistry from baking/cooking.
I memorized by rote the chord progressions in my favorite style of music. This does not mean I understand music theory at all.
What if the 2030s change the approach and use AI to teach everybody how to program?
What does AI (already known to be an unreliable bullshitting machine) provide to students that existing tutorials, videos and teachers do not already?
Also the companies investing in AI are not trying to teach their workers to be better, they’re trying to make more profit by replacing workers or artificially increasing their outputs. Teaching people to program is not what they care about
Hiding the complexity behind nice interfaces makes it actually more difficult to understand programming.
This is a very important point, that most of my colleagues with OOP background seem to miss. They build a bunch of abstractions and then say it’s easy, because we have one liner in calling code, pretending that the rest of the code doesn’t exist. Oh yes, it certainly exists! And needs to be maintained, too.
I find this to be a real problem with visual shaders. I know how certain mathematical formulas affect an input, but instead of just pressing the Enter key and writing it down, I now have to move blocks around, and oh no, they were nicely logically aligned, now one block is covering another block, oh noo, what a mess and the auto sort thing messes up the logical sorting completly… well too bad.
And I find that most solutions on the internet utilizing the visual editor tend to forget that previous outputs can be reused. Getting normals from already generated noise without resampling somehow becomes arcane knowledge.
Edit: words.
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?)
AWK?
(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.
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.
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.
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.
deleted by creator
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?
Describing what they want in plain, human language is impossible for stakeholders.
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.
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.
This is why I say some people are going to lose their jobs to engineers using AI correctly, lol.
“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.
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.
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.
Everyone is a senior engineer with an idiot intern now.
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.
You want the answer to the ultimate question of life, the universe, and everything? Ok np
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.
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

And after each of these, there’s been _more _ demand for developers.
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.
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.
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.
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 get how an MDA would translate to “no programmers needed”. Maybe they meant “coders”?
But really, I feel like the people who use this phrase to pitch their product either don’t know how many people actually find it difficult to break down tasks into logical components, such that a computer would be able to use, or they’re lying.Software engineering is a mindset, a way of doing something while thinking forward (and I don’t mean just scalability), at least if you want it done with quality. Today you can’t vibe code but proofs of concept, prototypes that are in no way ready for production.
I don’t see current LLMs overcoming this soon. It appears that they’ve reached their limits without achieving general AI, which is what truly would obsolete programmers, and humans in general.
Yeah why is it always coders that are supposed to be replaced and not a whole slew of other jobs where a wrong colon won’t break the whole system?
Like management or C-Suits. Fuck I’d take chatgpt as a manager any day.
programmers, and humans in general
With current levels of technology, they would require humans for maintenance.
Not because they don’t have self-replication, because they can just make that if they have a proper intelligence, but because their energy costs are too high and can’t fill AI all the way.
OK, so I didn’t think enough. They might just end up making robots with expert systems, to do the maintenance work which would require not wasting resources on “intelligence”.
















