When you write the code, you understand it. When you read the code produced by an agent, you may eventually feel like you understand it, but it's not at the same deep level as if your own brain created it.
I'll keep using new tools, I'll keep writing my own code too. Just venting my frustrations with agentic coding because it's only going to get worse.
As for the feelings that using LLM has when it one shots your project start (and does a pretty good job), have a German word:
Automatisierungskummer
(automation sorrow) • Kummer is emotional heaviness, a mild-to-deep sadness.
Its hard to know what things will look like in 20 years but people may miss the time when AI cost nothing, or very little, and was less fettered. I think probably not- it would be like being nostalgic for really low-res, low frame youtube videos, but nostalgia is pretty unpredictable and some people love those old FMV games.
unfortunately this problem preceeds AI, and has been worsened by it.
i've seen instances of one-file, in-memory hashmap proof-of-concept implementations been requested to be integrated in semi-large evolving codebases with "it took me 1 day to build this, how long will it take to integrate" questions
*as an aside, this reminds me of the classic joke where the client asks for the price list for a developer's services:
I do it: $500
I do it, but you watch: $750
I do it, and you help: $1,000
You do it yourself: $5,000
You start it, and you want me to finish it: $10,000
I guess that, with vibe coding, it is very easy for every client to become like this.
That isn't unique to "clients." It's human nature. Human's don't know what they don't know.
See: various exploits since computers were a thing.
“We use Premiere.” Cool. I use Resolve. If we aren’t collaborating on the edit then this is an irrelevant conversation. You want a final product, that’s what you hired me for my dude. If you want me to slot into your existing editing pipeline that’s a totally different discussion.
“Last guy shot on a Red.” Cool. Hire them. Oh right you hired me this time. Interesting! Should we unpack that?
Freelancers: Stand your ground! Stand by your work! Tell clients to trust you!
2009 anyone? https://theoatmeal.com/comics/design_hell
I never faced or witnessed that in software dev.
Indeed, [1]
> researchers found that searching symptoms online modestly boosted patients’ ability to accurately diagnose health issues without increasing their anxiety or misleading them to seek care inappropriately [...] the results of this survey study challenge the common belief among clinicians and policy-makers that using the Internet to search for health information is harmful.
[0] https://www.cbc.ca/radio/whitecoat/man-googles-rash-discover...
I have something that about a quarter percent of individuals have in the US. A young specialist would know how to treat based on guidelines but beyond that there's little benefit in keeping up to date with the latest research unless it's a special interest for them (unlikely).
Good physicans are willing to read what their patients send them and adjust the care accordingly. Prevention in particular is problematic in the US. Informed patients will have better outcomes.
To me it's more like the board, in some small way, being shaken up, and what I mostly see is an opportunity for consultancies to excel at interfacing with clients who come to them with LLM code and LLM-generated ideas.
I'm not saying we need to dismiss people for using LLMs at all, for better or for worse we live in a world where LLMs are here to stay. The annoying people would have found a way to be annoying even without AI, I'm sure.
A freelance developer (or a doctor) is familiar with working within a particular framework and process flow. For any new feature, you start by generating user stories, work out a high level architecure, think about about how to integrate thqt into your existing codebase, and then write the code. It's mostly a unidirectional flow.
When the client starts giving you code, it turns into a bidirectional flow. You can't just copy/paste the code and call it done. You have to go in the reverse direction: read the code to parse out what the high level architecture is, which user stories it implements and which it does not. After that you have to go back in the forward direction to actually adapt and integrate the code. The client thinks they've made the developer's job easier, but they've actually doubled the cognitive load. This is stressful and frustrating for the developer.
There is no best practices anymore, no proper process, no meaningful back and forth.
There absolutely is and you need to work with the tools to make sure this happens. Else chaos will ensue.
Been working with these things heavily for development for 6-12 months. You absolutely must code with them.
I was almost expecting to hear that it made the job too easy. This kind of work is perfect for vibe coding. But you should be the one doing it.
Ah yes a supabase backed, hallucinated data model with random shit, using deprecated methods, and a copy paste UI. Zero access control or privacy, 1% of features, no files uploading or playback or calling.
“Can you scale this to 1M users by end of the week? Something similar to WhatsApp or Telegram or Signal”
Sybau mf
Me: hey make this, detailed-spec.txt
AI: okidoki (barfs 9k lines in 15 minutes) all done and tested!
Me looks at the code, that has feature-sounding names, but all features are stubs, all tests are stubs, and it does not compile.
Me: it does not compile.
AI: Yes, but the code is correct. Now that the project is done, which of these features you want me to add (some crazy list)
Me: Please get it to compile.
AI: You are absolutely right! This is an excellent idea! (proceeds to stub and delete most of what it barfed). I feel really satisfied with the progress! It was a real challenge! The code you gave me was very poorly written!
... and so on.
It wasn't super bad at converting the code but even it struggled with some of the logic. Luckily, I had it design a test suite to compare the outputs of the old application and the new one. When it couldn't figure out why it was getting different results, it would start generating hex dumps comparisons, writing small python programs, and analyzing the results to figure out where it had gone wrong. It slowly iterated on each difference until it had resolved them. Building the code, running the test suite, comparing the results, changing the code, repeat. Some of the issues are likely bugs in the original code (that it fixed) but since I was going for byte-for-byte perfection it had to re-introduce them.
The issues you describe I have seen but not with the right technology and not in a while.
I had a similar issue with GNU plot. The LLM-suggested scripts frequently had syntax errors. I say: LLMs are awesome when they work, else they are a time suck / net negative.
What good is AI as a tool if it can get not on the same page as you
Imagine negotiating with a hammer to get it to drive nails properly
These things suck as tools
Every. single. time. we hit an interface problem he would say “if you don’t understand the error feel free to use ChatGPT”. Dude it’s bare metal embedded software I WROTE the error. Also, telling someone that was hired because of their expertise to chatgpt something is crazy insulting.
We are in an era of empowered idiots. People truly feel that access to this near infinite knowledge base means it is an extension of their capabilities.
Also, is it just me or has the feeling of victory gone away completely 100% ever since AI became a thing? I used to sweat and struggle, and finally have my breakthrough, the "I'm invicible!" Boris moment before the next thing came into my task inbox.
I don't feel that high anymore. I only recently realized this.
Reality check: none of that ever existed, unless either the client mandated it (as a way to tightly regulate output quality from cheaper developers) or the developer mandated it (justifying their much higher prices and value to the customer).
Other than that: average customer buying code from average developer means:
- git was never even considered
- if git was ever used, everything is merged into "master" in huge commits
- no scheduled reviews, they only saw each other when it's time for the next quarterly/monthly payment and the client was shown (but not able to use) some preview of what's done so far
https://www.uceprotect.net/en/index.php?m=7&s=8 -- "pay us to fix a problem that we've caused, and if you have the gall to call it what it is (extortion), then we'll publish your email and be massive dicks about it"
(To be clear, not all spam blacklists are scams - just UCEPROTECTL3 specifically)
Not really worth working on any of these project.
I started wondering if this person was actually a developer here. Maybe just a typo, or maybe a dialect thing, but does anyone actually use "codes" as a plural?
It’s somehow ironic though that his written output could’ve been improved by running it through an AI tool.
On other hand -- another customer of mine built a few internal tools with vibe code (& yes he does have subscription to my low code service) but then when newer requests came for upgrade thats where his vibe coded app started acting up. His candid feedback was -- for internal tools vibe code doesnt work.
As a service provider for low code --> we are now providing full fledged vibe code tooling on top. While I dont know how customers who do not wish to code and just have the software will be able to upkeep these softwares without needing professionals.
btheunissen•1h ago
This doesn't read like a vibe-coding problem, and more of a client boundaries problem. Surely you could point out they are paying you for your expertise, and to supersede your best practices with whatever AI churns out is making the job they are paying you to do even harder, and frankly a little disrespectful ("I know better").