| ▲ | anonzzzies 6 hours ago |
| I like fixing code made by AIs and others (outsourcing code is similar as someone else said already). Last week we found out some client tried to vibe some departmental tool; the result is some massive crap in nextjs that needs 10GB mem to compile, has 1000s of lint errors, dev logs in git (very noisy ones) and so on. Now we have to fix it: its basically free 10k-50k euros over and over again for this type of work. Very easy if you know what you are doing; impossible if you don't. Keep m coming. |
|
| ▲ | DenisM 6 hours ago | parent | next [-] |
| In some ways they are giving you a spec and UI mocks to implement. |
| |
| ▲ | JoelMcCracken 5 hours ago | parent | next [-] | | This is one of the things I keep thinking about. At the very least, these tools make prototyping and idea vetting remarkably cheaper. Then we go back to the old “the prototype works; I’m the boss and I’m telling you to deploy it to production” | | |
| ▲ | saalweachter 3 hours ago | parent | next [-] | | There's like three groups of developers you need: The prototypers, who move fast and break things, who throw together shiny first versions that look great and work some of the time; The architects, who take the prototypes and take the time to build it correctly; And the gardeners, who maintain the built system for the next 10-30 years, fixing bugs, making incremental improvements to speed or resource usage, and updating dependencies so that it continues to function on modern machines. The crazy thing is that there are a ton of developers with different tastes who would love to fill each of the roles, but not many companies that are able to manage all three types without pushing everyone into one bucket. | | |
| ▲ | olvy0 3 hours ago | parent [-] | | Ha, I'm a gardener then, on my 15th year of maintenance. So halfway there according to you. Slowly, very slowly, fixing the thousands of bugs the rockstar left behind 15 years ago. | | |
| ▲ | bjertoref a few seconds ago | parent | next [-] | | This comment made me imagine what would the guy maintaining my first deployed project at my first company thinks about me. Never had this thought ever cross my mind. | |
| ▲ | saalweachter 36 minutes ago | parent | prev [-] | | It's easy to look at a newly made garden, its flowers all freshly planted and its paths all neatly laid out, and think it finished, but once you see one that's been carefully maintained for decades and how its plants have matured and grown together and how the steps have been worn by human feet, it's clear the project is merely off to a good start. |
|
| |
| ▲ | rzmmm 5 hours ago | parent | prev | next [-] | | Prototyping is widely underappreciated. People think it's waste to throw away stuff but it's more costly to build upon shoddy foundations | | |
| ▲ | bluGill 4 hours ago | parent | next [-] | | The problem is those shoddy foundations can support a lot of weight before they finally fail. A prototype you write in a day - not a big deal to throw away. However if you have been working for a while that is a lot of effort/money. Worse, often you need to spend years before you realize how an initial design decision was a mistake - not only are you proposing to throw away millions of dollars worth of work - you also don't know that your proposed better design is really better. | | |
| ▲ | karmakurtisaani 4 hours ago | parent [-] | | The day you implement the first edge case to your prototype you basically commit to using it forever or spending a lot of money to replace it. | | |
| ▲ | shrikant 4 hours ago | parent [-] | | Well, there's nothing as permanent as a temporary solution... | | |
| ▲ | karmakurtisaani 3 hours ago | parent [-] | | "So we all agree this is not ideal, but let's use it for now and focus on ..." Heard it so many times. |
|
|
| |
| ▲ | darkwater 5 hours ago | parent | prev | next [-] | | But... "time to market!", "we won't have cash by the time this gets implemented properly" etc etc are the usual suspects here. | | |
| ▲ | conductr 5 hours ago | parent [-] | | Sounds like valid issues to me. Pristine software isn’t the objective of most businesses. Leaving as a problem for another day, if we’re lucky that day will come, for many businesses, products, and startups it doesn’t and the shoddy prototype usually isn’t to blame. I feel like SWE’s that make this gripe really need to step back and understand their role and the process for value creation. Because it’s certainly a process, the quality of code/architecture matters little if the low bar of functionality is met. Functionality can be sold to customers or used to test the market. It’s basically the whole MVP thing and the MVP should be a bit jank. If it wasn’t, you spent too much time/effort on it. All said, there’s definitely some approaches to make it less jank from day one. Unfortunately, jankiness is a subjective metric. | | |
| ▲ | skydhash 4 hours ago | parent [-] | | It’s not about pristine software. Customers expect something that works. But changes will then be requested and the expectation is that the software will continue working. It’s hard to do that with janky code. If you have a good architecture and keep good code hygiene, then velocity is easy. Without that, everything will slow to a crawl. | | |
| ▲ | rob74 3 hours ago | parent | next [-] | | > If you have a good architecture and keep good code hygiene That's a big "if" however - customers have a tendency to come up with requirements that aren't covered (or only covered in awkward ways) by the architecture you envisioned initially, while many of the well-architected parts will remain unused. | | |
| ▲ | skydhash 23 minutes ago | parent [-] | | Then redesign the architecture. No need to go for a full rewrite as it can be done progressively. One thing I’ve seen is that people can be afraid to delete code, even if it’s not used anywhere. |
| |
| ▲ | mapleleaf1921 3 hours ago | parent | prev [-] | | I agree, but I think you've not understood what the reply above is saying. You will never get the chance of "customers requesting changes" if you never ship. The company with the janky code that shipped will. And they will iterate and get better - as described by your process. | | |
| ▲ | skydhash 28 minutes ago | parent [-] | | > You will never get the chance of "customers requesting changes" if you never ship. Why does good code imply never shipping? Managers and Developers have different thresholds for “good enough to release”. The former are not the one on call for bugs or the one that get blamed for outage, but they are the ones that get praised when projects are completed quickly. Anything that’s past demo level is good for them. |
|
|
|
| |
| ▲ | baxtr 5 hours ago | parent | prev | next [-] | | 100% - one of the biggest advantages of software is its mutability, so why not use it to prototype properly? | | | |
| ▲ | 6510 5 hours ago | parent | prev | next [-] | | I don't think I've ever not learned a better way to write something after writing it. Sometimes it's small and insignificant, sometimes it "forces" me to start over. The funniest is when more than half the code deals with something that won't happen. The banana that is not a fruit clause. | |
| ▲ | skydhash 5 hours ago | parent | prev [-] | | You can prototype UX with a tools like balsamiq or taking photos of paper sketches with paper-to-app application. No need for code to share an idea. Especially from business to engineering or vice-versa. Product Managers coding is like Developers writing marketing pitches. | | |
| ▲ | theK 4 hours ago | parent [-] | | Why not? I've seen both sides working out remarkably well. It is much more of a mindset thing than anything else. |
|
| |
| ▲ | SkyBelow 4 hours ago | parent | prev [-] | | One of the major concerns with prototyping, at least in my experience and based on the general vibe I've felt from others over the years, is that clients will generally do some variation of "You have a working prototype? So how many days until it is prod ready? No more than a few weeks, right?" and that will be their expectation. AI makes prototyping easier, but makes this specific drawback much worse. Expectations are going to be misaligned, leading to many disappointments, and likely some number of developers taking undue negative outcomes. I'm not even sure if it will normalize to reasonable expectations, given that this tension never seemed resolved even before AI was in the mix. |
| |
| ▲ | samrus 3 hours ago | parent | prev [-] | | This is a very interesting thought. We complain about having to fix some MBAs vibecpded slop, but it actually might be faster, easier, and alot less painful than getting them to try to explain their vision to us and implement what they have in mind. Like they actually iterate on the UX alot when they are vibecoding things up, answer alot of questions that can onky be answered when you see an initial version of experience and realize something is off. Id rather they waste the clankers time with that than mine |
|
|
| ▲ | jbreckmckye 13 minutes ago | parent | prev | next [-] |
| Without doxxing yourself or your clients, can you share more about how this plays out? When clients come to you, is that because they always intended to get help taking their system to production? Or is it a last resort after all the AI approaches fail? Is there a general way that these projects break down? Or are the failures usually subtle? |
|
| ▲ | ofjcihen 3 hours ago | parent | prev | next [-] |
| This X a 1000. I work in IR for small to medium sized business. The past few years have seen my business increase well beyond what I can reasonably handle and my bank account feels like a dragons pile of gold. I will always always be on the side of security should be integrated and planned for and by no means do I want to see breaches. That being said giving people of dubious expertise the ability to blast out an app in an hour has been an absolute windfall for me and others. |
| |
|
| ▲ | dawnerd 4 hours ago | parent | prev | next [-] |
| Agencies that focus on this sort of work are going to make bank. We’ve already gotten some work like this, and it’s just going to keep coming as people think they can vibe code their products. Like you said, easy money. |
|
| ▲ | tyleo 5 hours ago | parent | prev | next [-] |
| Lots of people are gambling on AI with big bucks. Some of it is promising but all those bets won’t pay off. I like to think of this mindset as being the human slot machine that people are shoving money into. |
|
| ▲ | surfmike 4 hours ago | parent | prev | next [-] |
| Did you use AI to rewrite it? |
| |
|
| ▲ | justanotherunit 3 hours ago | parent | prev | next [-] |
| Are clients really paying for it? It’s really fascinating actually. Is it because the ”client” built it so they have sentimental value and sold it to themselves before you receive the request? |
| |
|
| ▲ | imetatroll 3 hours ago | parent | prev | next [-] |
| So how does one find these sorts of clients? |
| |
|
| ▲ | roboror 4 hours ago | parent | prev | next [-] |
| How much would it have cost to start from scratch? |
| |
| ▲ | onlyrealcuzzo 4 hours ago | parent | next [-] | | Most devs will say less, but the reality is most of the time you build the wrong thing first, and the price you quote almost never gets what the client wants/expects and includes many overruns. Every single contractor will say: that never happens when I do it... This is a better solution for many businesses. One, they already have a steaming pile of crap that kind of works. Forking that over to someone to "fix" for €10-50k is a steal - even if there's a decent chance they deliver nothing valuable. You're talking about on the low end a few weeks of a dev's salary. You get next to nothing for that most of the time... You could easily spend 4-5x that, take 3-4x longer and get something you can't use at all. Happens all the time. | |
| ▲ | anonzzzies 3 hours ago | parent | prev [-] | | As some already said; the real win is into having a business driven prototype; the work to gather those specs is already done and, generally, very costly when done in the traditional way. So from scratch if having to do all of it is more expensive; technical from scratch far less so. |
|
|
| ▲ | allthetime 3 hours ago | parent | prev | next [-] |
| why fix it when you can just easily re-write/generate it from scratch? |
| |
| ▲ | anonzzzies 3 hours ago | parent [-] | | That is also fixing… The client does not care about technical things so indeed rewrite is usually the best way even if we do not tell we did (people are proud of what they made so they do not want to just get told it was thrown away). |
|
|
| ▲ | peter_d_sherman 5 hours ago | parent | prev | next [-] |
| Interesting! Yes, there's probably a market for vibe-coded software, but if there is, then there's also a market for fixing other companies' vibe-coded mistakes... Phrased another way, you pay company A to vibe-code some software or extra software features for you, then you subsequently pay company B -- to fix company A's vibe-coded mistakes! (Hey, look on the bright side! It's more money for taxes, GDP, employment ("jobs jobs jobs!"), and the circular Internet economy! :-) ) |
| |
| ▲ | mrweasel 4 hours ago | parent | next [-] | | Some of this is also going to die out, if the prediction of price increases for LLM tools and tokens holds true. In that case a lot of this software essentially becomes abandonware overnight because the actual maintainer was Claude or Codex. If you're a reasonably talented developers, I think there will be money to be made picking up projects left behind by coding agents. Maybe you'll use AI tools to do this, maybe you charge to migrate to other platforms and maybe you are paid to simply do bugfixes. | |
| ▲ | akramachamarei 3 hours ago | parent | prev [-] | | I'm sometimes puzzled by the way people use "circular" to describe an economic system pejoratively. (Not to suggest you are.) Seems like any worthwhile economic system is ultimately cyclical. Pulling resources into the loop is just a bonus.... | | |
| ▲ | anonymars 18 minutes ago | parent [-] | | Related "income tax when I earn the money, sales tax when I spend the money, taxes on my investment returns, it never ends!" Yes indeed, because macroeconomics is ultimately a giant circle! |
|
|
|
| ▲ | rfgplk 5 hours ago | parent | prev [-] |
| > the result is some massive crap in nextjs that needs 10GB mem to compile, has 1000s of lint errors, dev logs in git (very noisy ones) and so on. The anti-LLM propaganda is getting ridiculous at this point. No project "needs 10GB" to compile, unless you're working with astronomically massive repos, and _no_ LLM will _ever_ generate that. Lint errors (depending on cause) are either meaningless or a result of poor prompt engineering. If you want your project linted/formatted a certain way make it clear to the LLM. |
| |
| ▲ | anonzzzies 3 hours ago | parent | next [-] | | Well, this is not the first project that has this. Depending what llm/harness and how it is yielded, this happens, a lot. How often have you had Opus 4.x note; ‘485 failed tests, but those are not related to my changes so I will not dive into them’? You believe someone who does not know about tests or code or linting or compilers will push back on that? I know that’s not happening for a fact. | |
| ▲ | boringg 5 hours ago | parent | prev | next [-] | | >If you want your project linted/formatted a certain way make it clear to the LLM. Most people have no clue what that means. Most Devs should know but I would wager that newer devs don't have enough opinion or exposure to do that. | |
| ▲ | sensanaty 2 hours ago | parent | prev | next [-] | | I have approx 40GB of docker containers spun up at any time in order to run the app I work on, and it only seems to get hungrier by the day. I have absolutely 0 problems imagining a single unoptimized Next app needing multiple gigs just to run, yet alone compile. | |
| ▲ | hightrix 4 hours ago | parent | prev | next [-] | | Linting is also trivial for LLMs. I’d argue linting is one of the easiest and best use cases for coding assistants. This story doesn’t add up. | | |
| ▲ | nozzlegear 2 hours ago | parent | next [-] | | You'd have to know what a linter is and tell the LLM to set it up though, right? Or just get lucky and have it suggest setting it up/set one up without asking. | |
| ▲ | tayo42 2 hours ago | parent | prev [-] | | The person running the Ai needs to know to set up linting in the first place and have it be applied. It's not a default. Ive had ai make code that doesn't pass a linter and make code look like hand aligned code. | | |
| ▲ | aleqs 2 hours ago | parent [-] | | Shameless plug - I've been working on a general repo linting tool alint [0], which helps keep a repo cleanly structured and hygienic - essentially a linter for everything in a repo that a language-specific linter doesn't cover. It also has some considerations for integrating/playing nicely with agentic coding [1]. This started as a replacement to a bunch of scripts I had in repos that did similar things - but more cohesive, readable and much faster. [0] https://github.com/asamarts/alint [1] https://alint.org/agent-friendly-linter/ |
|
| |
| ▲ | hylaride 5 hours ago | parent | prev | next [-] | | Oh sweet summer child... Do you have any idea, even before modern LLMs, how much code out there was just given more memory instead of optimized? There are even good reasons for it (it can be cheaper than having devs spend time if there's more productive work to be had). It can be very easy if said code needs to parse through gobs of data. | |
| ▲ | thr0w 4 hours ago | parent | prev | next [-] | | > No project "needs 10GB" to compile You've never tried to compile NextJS slop, have you? It absolutely can take that much. All those junkdevs have 64GB in their MBPs for a reason. NodeJS max heap is now dynamic because of this. | |
| ▲ | mannanj 5 hours ago | parent | prev [-] | | The OP said that this was coded by a product person though. The product people coding and using these tools, who are spreading the pro-LLM propaganda, are not doing proper prompt engineering nor lint fixing. > _no_ LLM will _ever_ generate that Did you even read the post? Seems you are being overly hostile, defensive and dismissive. Honestly, you sound like an astroturfer to me. I'm curious to check your history to see if you match the vibe. |
|