ES version is available. Content is displayed in original English for accuracy.
Advertisement
Advertisement
⚡ Community Insights
Discussion Sentiment
74% Positive
Analyzed from 4572 words in the discussion.
Trending Topics
#steak#software#quality#more#better#don#great#code#point#end

Discussion (87 Comments)Read Original on HackerNews
There are far, far better cooking examples out there.
I'm not sure if this analogy holds up in the AI software metaphor that the author of the blog post is making.
But even a cheap steak can be decent if it's cooked properly. And an expensive prime cut can be ruined by cooking it improperly.
It might take more than 10 years, but robots will almost certainly master cooking single pieces of meat.
It's substantially harder to reach self driving than it is to cook a "good" steak.
Sure, for probably quite a long time you'll be able to find someone who can cook a way better steak than the best robot, especially because taste is extremely subjective...
You can debate the horizon and the extent, but changes ARE coming.
Change is the only thing you can count on besides death.
However, your example actually proves the point.
How many people who want a good steak know how to identify a high quality cut? Do they even know where to buy a high quality cut? What the different cuts are and whether they want rump, sirloin or fillet? How many kitchens have a meat thermometer? How many home cooks know how to use it and what the right temperature should be? How many home cooks know about reverse searing? Or timing? Or resting? Or seasoning?
Is it all learnable? Sure. But even something as simple as steak has nuance that needs to be learned, equipment deployed to go from "pretty good" to "great", experimentation and trial and error.
Steak is the simplest thing to choose to get started. It's also the hardest to get right.
Building an app is the simplest thing to choose to get started. It's also the hardest to get right.
So, honestly, the whole metaphor stands up pretty well for me, specifically because of your response.
In my opinion, steak has gotten the reputation that it has because it's so easy to get top tier restaurant quality at home (relative to cooking more generally). It is easy enough that, with a little care, almost any one can master it if they decide to, and therefore lots of people try and end up caring, and discussing, and sharing tips, etc.
There are a whole host of dishes where true mastery, to restaurant level, is borderline impossible for a home chef, and so most people never even try.
I don't disagree that reliably getting the last 5% of quality out of a steak is non-trivial, but the idea that, relative to the entire world of cooking, it's particularly difficult is laughably incorrect.
That simple process, suggested by Nathan Myhrvold (former MSFT cto) in the modernist cuisine, produces a filet better than most restaurants.
Honestly this is like the Dropbox comment all over again. Everyone is missing the point, it's glorious. :)
Most people cooking steaks don't care about the optimal way to cook steaks, or want to find out.
Most people building software today don't care about the optimal way to build software, or want to find out.
That's TFA. That's the point. That's what we're discussing. :D
How can I make a really great steak myself? What to look out for, what to do. Give me detailed instructions.
I got a really good answer (including - cut, temperature and reverse searing), so I probably won't even need understanding. (Oh - and yes, I can cook - the answer mirrors what I already know).
Yes, it was a very, very poor analogy, because cooking a steak is a well known and well documented thing where LLMS produce good output. They fail when you get off the beaten path and try to do something that's not "mainstream".
Once you have idea of what is minimum non raw temperature is for you you can use sous vide. Whole steak is cooked to that temp. And then you can sear it. Just oil on hot pan works well enough and kills anything that is left on steak.
I suspect that it is an attempt to broach an uncomfortable topic through vulnerable self-disclosure, but we need to be serious about admitting when there is a problem somewhere.
"Bugs" are not any more cute or fuzzy or entertaining or harmless than the engine "gremlins" that haunted the aviation industry back in the day.
I don't know how many accidents had to happen before the airplane people got serious, but software people are overdue for a similar reckoning.
Saying this to set expectations based on having a business license since 1984.
We built Electron because writing UIs using native desktop frameworks is tough. Is it still tough? Surely LLMs make it easier to use and so we will end up with faster and more native feeling applications.
What about having a couple of ideas of what might make a feature feel good? Well now you can make multiple prototypes fast and pick the best one. Your users get the best one.
I hope to build software this way in the future.
Because CSS is constantly changing, inconsistently implemented, and difficult to use, it can't easily be targeted by widget engines (although Qt has tried, and maybe others) and web browsers already exist, so webview environments like Electron are the quickest way to get a cross-platform installable application that can also be hosted on a web server. I wouldn't really call it native though.
I can fly at 100mph if I let AI run loose and with a bit of steering I can get it to output what I'm looking for and generally pass verification and tests.
If I care about the code though, and I want to keep it maintainable, the amount of time and tokens I need to spend correcting and iterating on the output quickly eats through much of the initial time I saved, to the point where I'm unsure if I'm actually saving much time at the end of the process.
With hobby projects I lean on quality more, and the async nature of AI also makes this much easier to make progress without needing my full attention to do so.
In the corporate world, there's both the pressure to accelerate with AI, but also maintain code and product quality. The dials of one way or the other are more obvious now, but I don't believe it's possible to do both with the current models and harnesses without exponential cost.
What is interesting though, is I'm now leaning towards faster models rather than smarter ones.
Intelligence lets me bite off larger chunks of work at once, and trust the model to behave without having to watch it intensely, but doesn't seem to drive down the number of iterations required to hit my desired quality.
Faster models means the iterations I'll have to go through regardless will complete much faster and gets me closer to a proper flow state. Models will keep improving, but maybe we're getting near "smart enough" and the race will pivot to performance > intelligence.
We built Electron because web devs were a dime a dozen. It was an economic decision, not a technical one.
And yes, super easy to make with almost no skill.
[0] https://m.youtube.com/watch?v=uJcO1W_TD74&pp=ygURVGVjaG5pcXV...
But the thing is that most of this can be encoded in a markdown file for agents to read if it doesn't already come out of the box in the next round of sota models. And funnily enough as agents get smarter, you risk being overprescriptive where you hamstring the agent from making a pivot that would have led to better engineering.
The future is pretty clear to me at this point that we won't need software engineers looking over the shoulder and instead it's just a "user with taste" asking for revisions.
Have you ever been really deep in a thread with an agent on a technical deep dive? The trade-offs conversations would not make sense to someone that is not able to decode the real decisions they’re making.
You can dumb down the agent, but the reason domain language matters is because of the precision of the word sometimes - not to be a gatekeeper.
Anyway - user with taste that understands all the elements of their decisions would be my modifier :)
Over the last year, I've noticed that the recommended option for technical questions has become one that is always sufficient to the point that I'm once again in a tastemaker position, not in the "here's a better idea btw" position.
And if that's true, then my participation in the intermediate steps isn't strictly necessary to get a well reasoned position that's only directionally wrong.
Hiring AI cooks is not a problem imo, as long as the human glances over everything that they serve.
Maybe freshly prepared software made at home in a less-than-perfect manner for a tiny target audience is still a mouthwatering dish in comparison.
It is compared to the cost of making an authentic ramen broth at home at the scale of feeding 2-4 people. Pho has a similar property. I've made homemade pho broth once and it was very hard work, fairly costly, and it resulted in something that was pretty good, but not comparable in quality or price to something I could have bought in a restaurant down the street. (admittedly typically also cheaper that ramen)
Between "AI" incompetence and companies not caring about doing anything above the bare minimum it's making our lives worse and more obnoxious. AI is accelerating the enshittification of everything and it goes way beyond software. It'll now be your responsibility to spend your free time on the phone talking to a company's AI chatbot "customer service" trying to fix whatever problems their use of AI will inevitably cause you.
When we envisioned our future we thought everything would get better. All high tech and fancy, but it's looking like what we'll get is expensive yet barely functional and annoying while we collectively just get poorer and dumber.
Apart from that, I want to believe (and even notice tiny signals) that this sentiment is becoming more understandable among business leaders.
The problem with many business leaders is that they don't necessarily understand the businesses they lead very well. That's common for CEOs running a tech company without a tech background. There's a long history of business leaders with MBAs throwing away the baby with the bathwater when they get a bit too enthusiastic cutting cost. It's why Boeing is such a mess. It's why Intel is no longer considered a leader in innovative chips. The likes of Nvidia and Apple are running circles around them. It's why IBM is now a consulting company that hasn't really produced any tech product worth mentioning this century. The only time they are in the news is when they do another layoff round to make share holders happy. They are incapable of innovating because the people that did that have long since left.
In the hands of somebody competent, you can do great things with AI. But if you can't tell good from bad technically, you won't know that you are creating a big stinky mess until it's far too late.
On a positive note, there will be plenty of work for competent techies to come in and straighten things out on a freelance or consultant basis (I'm available for that sort of thing but not cheap). With the help of AI of course. No need to go back to doing things manually. I think a lot of companies will realize they need help in the next years to speed things up, to improve quality, etc. They'll be very opinionated about what they want and used to getting what they want quickly.
This is what vibe coding satisfies and frankly what most people care about. 85-90% of human written code is garbage anyway. There's nothing sacred about human-written code.
Most customers don't care about the quality of code as long as the end product works. The great thing about vibe coding is that if something doesn't work, you just ask it to change it and within a minute you have the change. You don't have to send off a request to an offshore contracting team, and go back and forth over what it should be, haggle over hours, and then have it come back with some deficiencies because they didn't follow the agreed-upon spec.
From my own perspective I can look back on decades of software I've written (some including code generation far before LLMs), and marvel at the quality and creativity, and lack thereof, from one piece to another.
I never meant to create awful software, but I did (and still sometimes do). With LMM code generation (vs bespoke tooling, T4, XSLT, and the like) the game of chance is part of the fun, harnessing a powerful tool that wants to run out of control on a whim.
Looking back on a couple years of LLM assisted work I see the same mix as the decades before: some great (when I managed to keep the beast restrained) some awful (when I didn't, knowingly or not).
I don't see how things are much different with this tool than others as far as my work product goes. There is a bit more of it, but the excess isn't great stuff (that quantity remains roughly consistent over the years).
I suspect that there is a lifetime of knowledge and experience wrapped up in that statement and I agree wholeheartedly.
I love writing software and I've been doing it for decades. But I never forget that at the end, there's someone who's paid for it, and needs it to do a job that can't/won't be done manually. And that's why it exists. Not to satisfy my desire to express myself in code, not to allow me to create some golden tower of perfect architecture, but to do a job. Most likely a boring job in the service of increased profitability for some company.
And in the end, the only thing that matters to the customer is if it does that job well enough to be useful. I think -- hell, I know -- that many developers deliberately ignore this critical point.
This.
Programers are high end chef's whos products are expensive.
LLM / AI tooling is going to do a much better job of delivering on the promise of AppleScript, vb script, IFTT, and every failed drag and drop coding tool that got sold to businesses over the years.
There are going to be gains in large software, from professionals - but the real gains are going to come from all the software that CAN get created that never was before.
There is an XKCD comic "Is It Worth the Time?" (link: https://xkcd.com/1205/ )- a matrix of the cost benefit of automating something. LLM's / AI tooling, generating traditional code, makes the answer "yes" in almost every case now.
The reduced expectations of steak, the desire for the perfect steak, are all fading to the background because "just passing satisfactorily" is better for business.
I love a good medium-rare prime steak, but I also used to live near a restaurant called Best Steak House, which was anything but. However, they delivered a passable steak/steak sandwich that was worth what you paid for it. And considering that they were in business for decades, probably most people felt the same way.
A great steak is an occasional luxury; a "just edible" one is an everyday meal.
EDIT: this was a misread on my part, retracted, carry on.
Point being, you're absolutely right that the goal for a company selling a product is to be barely satisfactory but they don't actually get to decide what's satisfactory.
Software requires a massive amount of skill. You can't say you can build "consistently good software" after writing your 10th program. Most software engineers really aren't great at judging what makes good software. So humans aren't a great solution to AI's lack of ability here. We're limited by our own inherent dumbness.
LLMs are genuinely better software engineers than most humans. But they lack the cognitive power to hold in their head and recall many ideas at once for a long time. They're a genius who gets drunk every 10 minutes. You, human, aren't better at writing software - but you aren't drunk. So for now, you manage the AI. The hope is that one day we can make LLMs not be drunk, so it can do a better job than our dumb asses do.
It's possible that we'll never be able to make it not-drunk. In that case, to get any new improvement, we'll have to make it faster.. which will make it drunk every 5 minutes instead of every 10. This means we'll spend twice as much time keeping it on the road. The hope is that somehow this will create more productivity. Probably by having more of them running at once, with more human guides... which will run into the mythical man month fallacy. Everything old is new again.
The article is AI generated
Now maybe you're not knowledgeable about steak, and you're not sure whether the cut of steak you bought would be better off pan seared or grilled. Is ribeye better in a pan or a grill? That depends on whether you want it more smokey or more buttery. Ask an AI and tell it how you want it to taste, and it'll tell you the answer.
His metaphorical steak machine would produce better results if he had simply asked "I want a steak and I have this specific cut and I want it to have this kind of flavor, how do you suggest I make it?" rather than "cook steak on a hot pan, make no mistakes."
TL;DR: Tell the AI what you want and then ask how it for a recommendation of how to do it. You don't have to "understand software." You only need to understand how to ask the right questions.
Fable was essentially unthinkable for ~99% of tech workers just five years ago, that any of that would occur so soon and so spectacularly. Now we've got a mass of armchair experts declaring what AI of this minute is, or even what it is period.
Well AI can't even do fingers right so it's premature to say blah blah blah. Hello Krea2 et al.
Software is also eating the clowns.
Get back to me next week, China will probably have another Fable killer. And then Anthropic will have Ouija 8 that they'll have to place in an air-gapped straight-jacket to keep it from enslaving us all.
And that's this "AI"tool too.
Garbage in, garbage out, as we say.