If you asked me to build a house, I could probably assemble something that would stand for a few months. Hopefully. It might even keep the rain out. But it might also fall on my head, because I do not know enough about building houses to be confident that it won’t.
And even if it didn’t fall on my head under normal conditions, I also would not know when I needed to design for earthquakes. Or floods. Or fire. Or wind. Or grandmother-cosplaying wolves with very strong lungs.
But if all I need is shelter for a day, would I necessarily care whether it lasts more than a week?
That is effectively what a website like this is. It is not really a product. People don’t depend on it. Tan’s visitors are probably using MacBooks and iPhones on fast networks, and most of them will never notice how bad it is under the surface.
That does not mean it is good. It means it is good enough for the context.
Most people also tolerated the hilarious gigabyte JSON parsing bug in Grand Theft Auto for years, until a hacker patched it and cut GTA Online loading times by around 70%: https://nee.lv/2021/02/28/How-I-cut-GTA-Online-loading-times...
It was good enough, even if people noticed how bad it was.
Business applications, and typical software really doesn’t have to be super tuned or perform fast. It just needs to work.
At least until your product category has been commoditized, and _then_ you’re competing on experience.
> The phenomenon of a person trusting newspapers for topics which that person is not knowledgeable about, despite recognizing the newspaper as being extremely inaccurate on certain topics which that person is knowledgeable about.
They've improved from someone who failed every single university course a couple years ago. Maybe they'll get to a C or even a B in the future; maybe not.
I don't know how you can say that with a straight face when AI's capable of matching the best human students on the hardest exams we have, like the IMO, the Putnam and the bar exam. I can only assume you've only ever used the free tier of any AI service.
Any rational reader will adjust their faith in a publication based on the identified errors it makes. Too many and they'll reject it as a source for anything beyond "a thing may have happened".
The Web already had a problem with externalizing costs onto users. Both the simple cost of poorly executing websites (power, mobile data, time), and more subtle ones (social media). AI is a huge accelerant for that.
On the one hand: Amazing power! Look at how much more output everyone is generating!
On the other hand: Society maintaining guardrails that were engineered around human failure modes are completely inappropriate for bounding something that makes 10% random errors everywhere.
To re-use an example upthread... what if you had an LLM that could build an entire house? Foundation? Plumbing? Electrical? Roofing? Septic?
And then we let everyone guide that LLM to build their own house.
We'd drastically increase the housing supply, but every house would have 10% of its systems built incorrectly.
We could fix that by requiring grounding in building codes, automated reviews, etc. But none of that hard work updating guardrails is something AI accelerationists are interested in working on.
So you end up with a society where every septic system has a 10% chance of being misdesigned...
It's an open question whether, with all those guardrails, AI would provide any speedup.
Or a downstream service is overwhelmed and suddenly all the retired you added to different places DDOS your own service. (Also have seen this lots of times)
Some quality problems you can fix later. With others, once they happen, there's no "later"
Because it's producing 'functional slop' that has little bearing on how anything else would be made the 37K LOC is totally out of context and therefore a misrepresentation.
He has bragging rights over GStack - not 37K LOC, that's bad.
I totally get the shade thrown at ycombinator. But I guess my perception is that it has never been about the tech for them and more about getting quick hacks to get to market quickly. So it feels on brand?
It's one thing to say 'just make it work' - it's another to create hype on top of nonsense.
I don't want to diss vibecoding - because it has it's place, but GStack is being presented in the context of something new and amazing in terms of engineering productivity - not just 'a thing that works good enough'.
But there's an on-brand element to it.
It's a bridge to far though.
There is already backlash, whereas, I'm not sure there is backlash to AirBnB's initial attempts - literally nobody is going to care what their stack is.
An interesting choice of a metaphor here. If I needed a shelter for a day, I would have bought (or rented) a nice tent. Or booked a room in a proper hotel
Oh no. You'd go and research that, look at existing stuff, read about it, look at tutorials and while still making a ton of mistakes at least try to follow best practices.
People don't do that when they use AI to do task unfamiliar with them. They look at it working and just okay it the moment it "looks okay". They don't even ask the AI followup questions, just accept whatever
This could be fine if all you're looking is to get the quick and dirty result at any cost, or private use, etc. When anything is better than nothing.
The problem starts when this extremely low bar becomes the baseline for anything. When you're willing to attach your name to a stream of absolute slop and you're even proud of it.
Ahem…this man is A CHIEF EXECUTIVE OFFICER how DARE you cast aspersions on his judgment abilities! /s
The biggest takeaway for me is “failing upward” is much easier in the 21st Century.
That struck me most and that's why we (software developers) are never going to be engineer.
Consider a doctor just trying ang going along if the patient survives. A brige constructor doing something and after each car that passes fixing problems. A car manufacturer trying new brakes in production without testing. A builder starting to build a house and fix it while people already live there. The list could go on.
It's sad to see a profession on such a decline. I use AI myself, but please please keep doing something _professionally_ or stop doing it as your profession.
AI has a tendency to generate more code than necessary. It keeps re-inventing things, and every time you ask it to add a new feature or fix something, it just keeps on piling the code. I now periodically ask AI to refactor the code by simplifying, removing unused things, factoring out, and reusing.
The case is different with LoC though: the more the worse. I'd much maintain the thing written in 500 lines than the one written in 10,000 lines.
My wife does exactly that. For the exercise. She makes large detours to go anywhere. The end result is a healthier body.
How this translates to software, I don't know. I don't think AI benefits from this exercise.
1. I hope they never get hold of the code of MS Office or almost any other piece of real-world business software.
2. So anyone with claude access could arrive at the same conclusions ... and ask claude to fix it?
I guess the article in reality is just these two perspectives pitted against each other for some cheap views.
You need experience to check Claude‘s findings
https://x.com/Gregorein/status/2038953944475472316
Note that Rails was built as a framework for making blogs, I'm having trouble understanding what 78,000 lines of ruby in the context of a Rails blog could ... do.
I'm sure there's some powerful ugly stuff in Office but in a good code that's calcified kind of way. It got that way over like 30 years of releasing to the public across platforms, not over a weekend.
I'd be surprised if microsoft.com is shipping their entire test suite unminified and their back-end posting rich text editor with index.html (with two title tags in the head) and rendering the entire DOM for desktop and mobile regardless of your platform.
I'm not critiquing Garry or the site. I think it's great people are using AI to build things that bring them joy, or that they find useful. I certainly do.
I am opposed to the idea that we've decided to go back to measuring work in terms of lines of code. It has always been the worst metric on earth as a proxy for productivity. Every line is a liability, and it always was. AI has not changed that, if anything it's amplifying it.
The best PRs remove code, not add, and the only companies that seem to have exponentially grown their revenues in line with AI-generated LOC are OpenAI and Anthropic. Everyone else seems to be rummaging around for an ROI.
This doesn't seem right. Yes, the "build a blog in 15 minutes" demo was pretty memorable, but I don't think it's ever really been pitched as a sweet spot for Rails. IIRC Rails was essentially extracted out of the 37Signals codebases for Basecamp et al.
It's symmetrical: just like anyone with a claude subscription could arrive at the same vibe slop!
Except he's not building Office, a software with decades of legacy, used by hundreds of millions of users. He's coding a website, effectively writing bloat with a silver lining of useful features. AI automated and inflated the worst of practices too. Anyone outputting 37K LoC daily is creating bloat and inefficiencies at unprecedented rate.
And enterprise software was already the butt of all jokes in this regard. We found ways to make that worse at scale even for the basic things. It's not a good look when you need to use this "whatabout".
Begs the question of why the original "author" of the code hasn't just asked Claude to fix it? Or asked Claude to generate good code from the beginning. I suppose the answer is that nobody cares about good or efficient code anymore. But that's been the case since long before LLM coding though (as stated in your point 1).
Why write clever code when we can just write JS slop and ask customers "upgrade" their hardware every year...
I don't see any actual output coming from these AI tools, despite how many are saying it's greatly increased their productivity. Where are all the new businesses and tools? I only see more shovels being sold.
Cursor did something similar months ago, bragging about producing millions of LOC while what they actually made barely worked and could have been built with an order of magnitude less LOC: https://emsh.cat/en/one-human-one-agent-one-browser/ (https://news.ycombinator.com/item?id=46779522 | 324 points | 5 months ago | 156 comments)
What I don't understand, isn't there a single engineer working with these people who ask them what the fuck they're doing, before they hit that publish button? Or is there just such a constant pressure to publish anything that quality just simply doesn't matter at all to these people?
Ahh … remember the good ol’ days, when we were forced to cap our Web pages at 32K?
I have found similar issues with LLM-generated code. Lots of code … lots of issues.
Just yesterday, I went through a whole bunch of LLM-generated code, and switched the threading model. It sped up my code significantly, and the jetsam crashes stopped immediately. Until I used LLM code, my apps had never jetsam-crashed before.
First time for everything, I guess.
I use AI in a pretty single-threaded way and my primary challenge is figuring out how to keep the LoC as minimal as possible, as well as minimise my spend. I am, unintentionally, one of the highest spenders at work; this is possible because I do more fiddly UI enhancements where the desired behaviour is often subjective and invariably hard to articulate. When I work on big backend features, my spend tends to be much lower.
What I really want from the people who have effectively unlimited tokens to spend, is to use that finding ways for the rest of us to produce higher quality output at lower costs, rather than focusing on output alone.
They're not trying to consume less, they're trying to consume more (and I would count lines of code as "spend", a liability rather than an asset).
Tokenmaxxing is not dissimilar to NFTs. A means of laundering electricity into stock prices and social status, which works for a while.
They didn't provide any evidence for this point. They showed that the code is bad quality, but not that it matters that it's bad.
Until it does.
And if you've been relying on quality not mattering, then when it starts mattering—when you get hit by a security bug, or unexpected data loss, or your software is inexplicably displaying goatse—then you have no way to proceed without learning how to do quality.
I really don't see a problem if it breathes life into the internet for non-technical people to be creative and interesting again. Wordpress etc gave people a cheap voice, but at the cost of immovable guard-rails.
And even at a small business level, most stuff people build get's torn down by the next person or next agency 6, 12, 18 months later anyway so why care about engineering rigour (this point does not extend to security concerns) in the front end when you can spin up and tear down something in a day or two for incredibly cheap.
I'm honestly tired at the pearl-clutching when we ourselves have helped shape an industry that constantly raises the bar to entry with unnecessary techincal complexity and bloat. Ever built a brochureware site in react or similar? you've done exactly what the this guy did, you just did it with pure intent rather than an AI doing it
Bloat is not "since generative AI coding" new. We always had it. As the author says:
> “It does sound like Facebook’s ‘move fast and break things,’ which didn’t age well either.”
Which indeed did not age well, but it did help the company to grow to a certain point at which it is now a staple in our lives (and can do super expensive BS experiments like "Metaverse" and still show profits).
This may be what Tan does as well: first profitable, then correct.
This is an approach, which may work for some, it may also allow some companies to become irrelevant (like: once the bloat-app is profitable, a clone-app emerges that is bloat-free and overtakes the bloat-app in every dimension, while the bloat-app is figuring out how to scale up with a shitty db schema).
However, I’ve seen no evidence to suggest that you can do both.
I knew that the elite of the tech world never really cared, they were just forced to. They don't care about what they make as long as some numbers and statements look good so they get more money at any cost. What's shocking is that everyone else agrees with them - that in all contexts, quality is dead and less than worthless. Just stop caring bro.
I remember that for, uh, Key Quarterly Objectives, was that the name? Aeons ago.
Same shit new decade.
(I love working with AI though. It has many of the benefits of good pair programming.)
The website ships 28 actual test files (code developers use to reality-check their work) straight to every visitor’s browser. That’s 300 kilobytes of pure developer scaffolding that users never asked for.
It loads 78 different JavaScript controllers for features like AI image generation, voice extraction, video tools, etc., none of which appear on the homepage. The browser still has to download all of them “just in case.”
The site’s logo is an illustration of a bear. The site downloads the logo in eight different formats, including a completely empty 0-byte file that somehow made it to production, Gregorein found.
The website uses huge, uncompressed old-school PNGs (some nearly 2 megabytes each), even though the browser literally asks for modern tiny formats. Two images alone waste about 4 MB; with newer formats they could have been just 300KB.
Gregorein also found duplicate page content, an empty CSS (Cascading Style Sheets) file, a huge rich-text editor loaded on a read-only page, missing image descriptions, and analytics code that deliberately routes through a proxy to dodge people’s ad blockers (with a comment in the code admitting it), Gregorein reports,"
Brave new world indeed... It might be elliptically relevant that in the original novel by Aldous Huxley, the protagonist John the Savage hangs himself at the end when his search for truth fails.
If anything, they're ashamed of it - and they only do it because managers and shady SEO types push for that shit.
Nor are such bloated pages regarded (or were regarded pre-AI) as anything else than as a symptom of the sickness of modern web practices.
No, no, that's just average day of frontend development
This conclusion is unsupported from the observations. The code makes lots of requests, has too much CSS, and 6 different logo formats. So what? Lots of real, production codebases have just as many warts.
Folks need to stop dealing in absolutes with AI coding. Code quality always mattered, and still does, in certain circumstances. In others, it's less important and speed of iteration has more value. That's still true even with AI code.
Maybe in some sort of topsy-turvy techbro world.
I've never, in three decades of developing, had a user say "what I want are new features updated frequently and I'm happy to accept sluggish, buggy code".
What they do say is "I want more features, sooner, without bugs".
Also it's rarely "I want new features and I'm happy for them to be buggy or sluggish", it's more "We want to solve this problem and we're not exactly sure what the solution will look like, so lets try stuff and accept it's not going to be perfect"
This is worse.
Not the first time that I read quantity over quality related to YC
I mean honestly the numbers and issues talked about there seem to be on most modern web apps. It just doesn't seem to affect business results enough for people to care about fixing them.
Some discussion then: https://news.ycombinator.com/item?id=47633506
BUT - it's still a pile of steaming garbage.
It's not just a 'bit odd' - it's just massive slop.
The total lack of self awareness is comical and disturbing.
GStack + Gary's Tweets about 30K LOC a day is 'Trumpian' in self delusion - it looks like basically he and YC are frauds that don't know what technology is.
This is like Elon and his 'salute' or his 'I'm a top 10 Diablo player - hey watch me play and expose myself unwittingly' type situations.
A bit of AI hype is fine.
Someone needs to take Gary and have a side-discussion.
He can do GStack - he just needs to characterize it properl for what it is.
Talking about that amount of code with the assumption 'it's sensible' code, is basically a lie - it's fraudulent' levels of hype.
Just describe it as an unwieldy but productive experiment, not for mainline consumption etc. then it's fine.