Hacker Newsnew | past | comments | ask | show | jobs | submit | anonu's commentslogin

The earlier NYT article on the topic was interesting: https://www.nytimes.com/2026/03/26/opinion/economy-attitudes...

It was succinctly put: the top 10% of earners - those making 250k or more - do 50% of the spending. If you're a company with a product or service, are you going to cater to the 90% or the affluent 10%? Clearly the latter - so as a result the bottom 90% of the country just feels like they're "keeping up with the Joneses" all the time.

Probably a lot of hand-wavy behavioral economics here and I am sure the answer to "Why are we so sad" is more complex...


I'd like to see a spending breakdown. I wonder just how much of that 50% of spending is stuff that the bottom 90% would actually be competing for -- eg: an expensive bathroom remodel, a luxury car, etc, vs something basic such as tennis shoes or groceries from the local market.

Does it matter? Most people need a car in the US. But if cars are marketed and designed for the 10%, this squeezes out everyone else.

Very good observation.

Remember, entry level cars never generally had air conditioning even in Florida, until the Nixon Recession got underway.

A/C had always remained a distinctly luxury option until "nobody could afford anything any more", then the car companies had to not only cut back plus have layoffs but also target a higher-dollar price point. Where significantly more costly (sometimes nice) options are included, and a bare bones version is no longer an option on the car lot.

Just to survive themselves.

That's what that kind of Presidential malfeasance will do.

Somebody who's getting the most out of a rich country is going to be getting richer even under the worst of conditions, but when the zero-summing comes home to roost, everyone else has to pony up in some way or another to make it come true for the mostly undeserving elites, because of the underlying structure.


But if that stuff is stuff the bottom 90% wouldn't be competing for, it's even worse in a way, because it means that portion of the market is entirely focused on stuff that's entirely out of reach for that 90%. If there are people out there who could be making tennis shoes but are instead making luxury cars, that's a problem.

We're in the lower half of that top 10% by household income.

Our money, aside from basics on which we don't spend so differently from when we made a lot less money, mostly goes to:

1) Optional but advantage-conferring or life-improving things for our kids. This is probably the biggest single category, by a long shot. This takes the form of lots of stuff.

- Mental health care that we'd have had to forego or spend a whole lot less on when we had lower income. YMMV but this one has hit us hard and we'd feel awful if we couldn't afford to at least try all reasonable options—which has been goddamn expensive. Guessing it's similar for anyone with a kid with chronic physical issues, too. There are things you can spend money on above what insurance will pay for, or to get way faster than the months it might take to work through processes insurance is happy with. If you can, you'll feel like you must. If you can't, you just... can't.

- Taking the kids to the doctor or urgent care just about every time they probably ought to go but it's not strictly necessary ("this laceration ain't gonna kill them... but if they get stitches, it won't scar nearly so badly, so let's take them in" or "I bet that's a hairline-fractured finger bone, and we can do just as well splinting that at home with like $30 or less in supplies... but let's go let them x-ray it just in case it's something worse" or "they might get over this infection but it's trending worse and I'm starting to see red lines in the skin... so instead of rolling the dice, let's go pay the gatekeeping fee to get the antibiotics I'm 100% sure they'll be prescribed after a 5-minute chat with a nurse practitioner, and that'll clear this up in 36 hours flat even though it'll cost us a few Benjamins since we haven't hit our deductible for that kid yet").

- Spending on optional education stuff.

- Spending on lots of activities that might cost as much as $200/wk or require a couple hundred dollars up-front in equipment, giving the kids a broader set of experiences without having to go "no, you can't try all three of those, you just have to guess which one you'll like and then that is what you do for at least a few years" or just "no, that's too expensive" (though, to be clear, many things still are. Most of the more-interesting summer camps still give us pause, by which I mean we have yet to send any of our kids to any of those because they're so friggin' expensive, though it's not quite out of reach of even being a discussion. Though, if we had only one kid to pay for on the same income, that'd be another matter...).

2) Spending at local businesses of a kind and degree we definitely didn't engage in when we had lower incomes, earlier in our life. Gives a feeling of satisfying a kind of noblesse-oblige to help keep local businesses alive, and we get really nice chocolates or great pastries or whatever in exchange.

3) House improvements or repairs that we'd have never done or have tried to defer as long as possible when we were poorer. Sometimes, paying to have a thing done that we'd have DIY'd before. This can be a really big category some years.

4) We don't do a ton of traveling, and don't do any remotely luxury-tier stuff (I think a $150 hotel room is expensive no matter where it is or how nice the room, LOL) but we rarely decide we want to take some kind of trip and then have to abort because we can't find any route to doing it at a price we find tolerable. So we do travel more (mostly stuff like visiting family and friends, or little weekend get-aways in the summer) and spend more on it than we probably would if had a significantly lower household income, though it's a relatively small proportion of our spending.

5) A couple summers when we had a frustratingly-healthy lawn and a goddamn HOA we paid someone to mow our lawn. We definitely wouldn't have done this when we made less money. Tiny amount of spending in the scheme of things, and not something we kept doing, but an example of the kind of little service we occasionally splurge on. Some people spend on this sort of thing basically full-time (or house cleaners, say—we've done that, too, though only occasionally, and wow does that feel weird and uncomfortable to someone who came from a sub-upper-middle-class midwestern background... actually, so did the lawn mowing, and so does hiring e.g. plumbers, I always feel like I ought to be helping them) but we just keep it in mind as something we can periodically pay for to make our lives a little easier for a while, in some circumstances. Damn nice to be able to, but not a big-ticket spending thing for us. It is a category of thing that sees almost zero spending under that 90th percentile mark, though, I bet, is why I bring it up.

6) When basic consumer goods break we usually replace them basically instantly (maybe used if we can, not new, but still). Even if the cost is in the hundreds of dollars. No delays or long stretches of going without like when we were poorer. I'm sure this causes a higher overall rate of spending. Minor, compared to some of the above, but it's a thing.

No clue if we're representative. We spend like we're fairly poor on stuff like cars, and lots of people in our income-range definitely spend way more on that than we do. Ditto the travel thing, I think we probably spend less overall on that than many folks with similar household incomes.

No hugely-expensive hobbies, which is where some folks' money goes I think. None we couldn't have supported about as well when we were at more like the 60th percentile, none that we've opened up the money-spigot on just because we can. We cut down or eliminate collections of stuff we accumulated in earlier years far more than we accumulate that sort of thing, having almost-but-not-quite no active collecting habits between us. Not big collectors. We thrift clothes, still, a lot. I buy most of mine aside from socks, underwear, and knits on ebay, LOL.

A lot of our money also goes to paying for a house in a nice school district (file under: "technically-optional spending on the kids to improve their life prospects") without compromising tremendously on size or house quality, but I don't think that counts as "consumer spending".


Very good examples of things that do make a difference and are worth working for.

Also could be the first to slip back out of reach if too much reversal prevails. That would be more likely the horizons that opened up more recently, and may also be ones that hover within sight but out-of-reach for so many more whom there are growing numbers of again.

I would add that a certain way of looking at it for a proud homeowner is that one of the most luxurious things you can enjoy is the time to do your own lawn and gardening.

Then you know you've really arrived ;)


> I'd like to see a spending breakdown.

Because I live in a low cost-of-living city, locally I'm well within the top 1% of income earners here and within the top 5% nationally. My day-to-day life is not significantly different from my next door neighbors who earn 1/4 or less than what I do. Where the difference in spending happens is primarily in three ways:

1. Quality of goods and services

This is expressed in many ways, but maybe the most obvious is basic daily necessities. Health is wealth, and we invest in our health by being much more conscientious about what food we eat, where it comes from, and how its prepared. We cook at home, as do our neighbors. But our neighbors do it to save money vs eating out, we do it to emphasize our health vs eating out. It would probably be cheaper for us to eat out every meal vs cooking at home, but by eating at home we only consume high quality groceries packaged in a way to minimize our exposure to microplastics and other environmental contaminants (although it literally rains microplastics now, so it's basically impossible to eliminate). We have tens of thousands of dollars in equipment installed in our home to filter the water we get from the city so that we are drinking, cooking, and showering with effectively "perfect" water, where our neighbors just use what the city provides that is technically "safe" but contains PFAS, microplastics, and pesticide contamination.

This also comes about in other aspects, for instance I recently replaced the tires on my car. I replaced them on time, within the appropriate wear levels for replacement. I bought the highest quality tires that were available, without consideration of cost. Most of my neighbors drive on tires until they start to wear through to the steel belts, well past being bald, and buy the cheapest tires available. It was $1250 for new tires on my car, mount and balanced and installed. It would have been $380 for the cheapest tires with the same service, so I spent almost 4x as much but have significantly better tires (and I understand the importance of this).

2. Non-essential services that improve our quality of life

We have a company that manages our mowing and landscaping so I don't have to do it myself during hot Texas summers. I am a competent DIYer but hired people to fix my roof, retile my shower, and do various other home repairs I could have done myself but could afford to hire out. We have bi-weekly house cleaning, because while we keep a fairly clean house ourselves, it's nice to have someone come in and clean every single surface on a regular basis which goes far beyond what we do day-to-day, we even pay extra for a housekeeping service that uses ecofriendly products with minimal direct environmental impact (e.g. are not bad for you to be around, like just using plain vinegar in many cases) and trains their staff specifically on using these types of products which require specific workflows to work effectively as the trade-off to being much safer. I have a mobile detailer come by once in awhile to clean and detail my car and my wife's car inside and out, both of our vehicles are ceramic coated and tinted, we got our home windows tinted as well. It's nice being able to get into a clean car that isn't an oven without having to invest a lot of effort yourself. When I was younger I'd go to a self-spray car wash and feed in $8 in quarters and spend 2 hours going at it myself, but now I don't have to deal with it. My neighbor DIYes all their fixes and spends a Saturday doing a 3-bucket wash on their truck when they get time, they clean their own house and do annual spring cleaning around the time the city does bulk pickup.

3. Additional expenses related to health and hobbies

My neighbor has weights in his garage and a treadmill and works out every day. I have a gym membership, my wife does pilates and yoga classes. My neighbors have several hobbies, but they're hobbies that mostly involve minimal equipment and can be done in public places like parks. I have several hobbies, and while some are pretty cheap, several are fairly expensive and require private memberships or land lease/ownership to participate in. I don't know how often my neighbor goes to the doctor, we don't really discuss that, but my family has a Direct Primary Care membership, goes to the doctor when we need to without any concern, and in a few instances we'd use in-home/concierge health services like nurses on-call that can come give you an IV at home w/ fluids + Zofran when you've got a stomach illness. I would guess my neighbors avoid going to the doctor unless strictly necessary and when they do, they go down the street to urgent care and wait in line.

From the outside, or even inside our home, we don't live a significantly different life than our neighbors. We don't life an particularly affluent gated community, we just live in a normal neighborhood in the city in a normal house with mostly blue collar workers as neighbors. But because we can afford it we spend on our health and on ensuring if we're going to buy something its of the highest quality we can acquire. We don't have a lot of "stuff", we don't need a lot of "stuff", but if we get something it's the best of that thing available.

> I wonder just how much of that 50% of spending is stuff that the bottom 90% would actually be competing for

My observation anecdotally is that everyone wishes they had better stuff and could afford to spend on their health, and they may do so sporadically. You don't need to be rich to get a gym membership or to do yoga, you don't need to be rich to shop at a farmer's market or high-end grocery store for /some/ things. But you pretty much do need to be rich in order to prioritize these things over cost and budgeting. Normal groceries are already expensive for most people, so spending even more to get healthier quality groceries is out of the price range to do for every meal, but it's something people do when they feel they can. Does that qualify as "competing for"? I don't know. But I think the economic gap, partly driven by out-sized inflation, is real, and it is absolutely damaging to most people.

EDIT: Just to add on, I've moved around a bit, but lived in this same city nearly 15 years ago and live here again now. The differences in what the average person can afford are astounding. I think most people had access to higher quality food, for one thing, 15 years ago. Groceries are so absurdly expensive now that the average person is struggling to afford anything, much less high quality things. That's just unacceptable as a country, and if you can't get your basis necessities met in a way which enhances your health it is completely understandable to feel bad about the world. I feel bad about the world and I'm far wealthier than most people around me. Our system in the US is broken, and I feel powerless to fix it, even as I am personally advantaged by it.


I would add in social media. It's a huge cancer on happiness.

Yup, it's digital fentanyl.

Happiness = Reality minus Expectation (and sadness is the negative values).

For example, if you expected your country to have checks and balances and not empower people who tried to damage the democracy, the reality would sadden you.

If you expected to be able to have 2 kids, afford healthcare, not worry about loss of income, live near family in a 2k+ sq ft home, and fly to Disneyworld and Hawaii for vacation, then chances are reality would not have met your expectations. Perhaps TV shows/movies gave you those impressions? Or seeing others' instagram posts?

But if you expected a smaller home, not eating avocados everyday, driving a few hours for your vacations, limited amounts of healthcare, etc, then maybe reality would exceed expectations for more people.


Right. We just need to kill off three key unrealistic expectations: democracy, medical care, and avocados. Once we relax and give up on those three things, we'll be happy again.

I wonder how avocados became the poster child for unreasonably expensive food. They're not actually that costly.

Hard to say. They're much cheaper per pound than ground beef here in the Northeast.

Shouldn’t protein be expected to be more expensive?

I dunno. If people eat hamburger on a bun, we approve. If they eat avocado on toast, we disapprove. That's a luxury item. Ok.

It’s just a meme, no serious person disapproves of avocados due to price. However, both avocados and meat are higher priced foods that would be foregone in the event of a cash crunch.

I hear you. No serious person disapproves of avocados due to price. However at $1.00 to $2.50 a pound they are a higher-priced food. Another higher-priced food is meat at $6-$20 a pound.

Conscientious shoppers, or those in a cash crunch, might do better with simple, inexpensive foods. For example canned beans cost only $1-$1.50 a pound.


I'm in Washington, and they're usually at least $1 each in season, and even close to $2 out of season at Costco. Factor in some amount not being good, 20% at least, and I probably spend at least $1,000 per year just on avocados for a family of 4.

I imagine they are just as, if not more expensive, in places further from Mexico.


Because all the boomers and a lot of genX grew up with them being something that was ludicrously expensive due to rapid transit costs that now no longer exist now that we know how (other than sheer speed) to keep them from spoiling between tree and grocery store and around the same time that we got good at that we lifted a ban on mexican imports.

It used to be oranges that were the luxury fruit.


My grandfather told me that for Christmas one year as a child, he got a fresh orange.

Only one year? And was that his only gift?

My sister and I received fresh oranges in our Christmas stockings every year. Along with nuts and chocolate and goodies like that. Of course, the "Christmas stocking" event was tied with St. Nicholas' Day on December 6, where it was traditional to place our shoes on the fireplace overnight, but the stockings were stretchy and higher-capacity than children's shoes!

Also, the fresh oranges were sort of ironic, because a tangerine tree grew in our backyard. I've always preferred tangerines.

Mom always packed fresh fruit with my school lunches. I had never heard or experienced the trading of food at lunch, and so I resorted to discarding the parts of lunch which I didn't want to eat. Oranges were the first to go. It wasn't the taste of oranges that I disliked, it was the stickiness and the labor involved in peeling them and getting past the rind and pith.


>Only one year? And was that his only gift?

Really depends on the year and the region. Cheap oranges can only follow where the reefer truck and boxcar go.


What the hell is wrong about avocados really? They are a cheap staple food.

The avocado meme started in Australia, where avocados are expensive due to their water requirements, and where there’s been a housing crisis for at least twenty years.

It wasn’t the cost of avocados as a raw ingredient.

An opinion columnist for one of Rupert Murdoch’s ‘newspapers’ blamed the decline in home ownership amongst millennials on excessive spending on discretionary food, specifically avocado on toast in cafes.

He suggested that if they cut back on such minor luxuries, they could afford to buy houses.

https://www.pedestrian.tv/news/bernard-salt-says-his-smashed...


The United States, Australia, New Zealand, Canada, and the UK all have housing and affordability problems, out of the five I can understand the UK but the other four countries I absolutely do not…

What do they all have in common English similar economies and relatively similar governments.


In Australia the root cause is likely policy that rewards rather than penalises multiple home ownership as investment, leading to flow on effects that raise prices and doesn't boost building.

However not all would agree with that and each stake holding group has a different take on things.

eg: The Australian home builders industry group, the HIA, throw shade on increased costs and government fees and push back on other hot takes here:

https://hia.com.au/our-industry/newsroom/economic-research-a...

I lived through my peers struggling to get a single house built or rennovated in early 80's and later and watched finnancial incentives made it easier and easier to get a second, a third, a fourth house just as happens in Monopoly

Hand in hand with that, those people with houses as assets could afford to bid higher against each other for that fifth house .. pushing out those younger and just entering the scene.

It's hard to discount the rapid rise of a landlord class as being a significant factor.


Unfortunately the international rule of law died many years ago allowing these war crimes to continue unabated.


Here, the author means the agent over-edits code. But agents also do "too much": as in they touch multiple files, run tests, do deployments, run smoke tests, etc... And all of this gets abstracted away. On one hand, its incredible. But on the other hand I have deep anxiety over this:

1. I have no real understanding of what is actually happening under the hood. The ease of just accepting a prompt to run some script the agent has assembled is too enticing. But, I've already wiped a DB or two just because the agent thought it was the right thing to do. I've also caught it sending my AWS credentials to deployment targets when it should never do that.

2. I've learned nothing. So the cognitive load of doing it myself, even assembling a simple docker command, is just too high. Thus, I repeatedly fallback to the "crutch" of using AI.


Why are you letting the LLM drive? Don't turn on auto-approve, approve every command the agent runs. Don't let it make design or architecture decisions, you choose how it is built and you TELL that clanker what's what! No joke, if you treat the AI like a tool then you'll get more mileage out of it. You won't get 10x gains, but you will still understand the code.

Personally I've found "carefully review every move it makes" to be an extremely unpleasant and difficult workflow. The effort needed to parse every action is immense, but there's a complete absence of creative engagement - no chance of flow state. Just the worst kind of work which I've been unable to sustain, unfortunately. At this point I mostly still do work by hand.

It's unpleasant for me at normal speed settings, but on fast mode it works really well: the AI does changes quickly enough for me to stay focused.

Of course this requires being fortunate enough that you have one of those AI positive employers where you can spend lots of money on clankers.

I don't review every move it makes, I rather have a workflow where I first ask it questions about the code, and it looks around and explores various design choices. then i nudge it towards the design choice I think is best, etc. That asking around about the code also loads up the context in the appropriate manner so that the AI knows how to do the change well.

It's a me in the loop workflow but that prevents a lot of bugs, makes me aware of the design choices, and thanks to fast mode, it is more pleasant and much faster than me manually doing it.


This is my biggest problem with the promises of agentic coding (well, there are an awful lot of problems, but this is the biggest one from an immediate practical perspective).

One the one hand, reviewing and micromaning everything it does is tedious and unrewarding. Unlike reviewing a colleague's code, you're never going to teach it anything; maybe you'll get some skills out of it if you finds something that comes up often enough it's worth writing a skill for. And this only gets you, at best, a slight speedup over writing it yourself, as you have to stay engaged and think about everything that's going on.

Or you can just let it grind away agentically and only test the final output. This allows you to get those huge gains at first, but it can easily just start accumulating more and more cruft and bad design decisions and hacks on top of hacks. And you increasingly don't know what it's doing or why, you're losing the skill of even being able to because you're not exercising it.

You're just building yourself a huge pile of technical debt. You might delete your prod database without realizing it. You might end up with an auth system that doesn't actually check the auth and so someone can just set a username of an admin in a cookie to log in. Or whatever; you have no idea, and even if the model gets it right 95% of the time, do you want to be periodically rolling a d20 and if you get a 1 you lose everything?


I agree, but I also think that giving the LLM free rein is also extremely unpleasant and difficult. And you still need to review the resulting code.

I don't think there's anything difficult or unpleasant about the process of letting the LLM run free, that's the whole point, it's nearly frictionless. Which includes not reviewing the code carefully. You say "need" but you mean "ought".

Friction is not the only source of displeasure. I've tried out vibe-coding for something non-trivial; I found it deeply unpleasant.

Reviewing isn't hard when the diff is what you asked for. It's when you asked for a one-line fix and get back 40 changed lines across four files. At that point you're not even reviewing your change anymore, you're auditing theirs.

That's the trap though. The moment you approve every step, you're no longer getting the product that was sold to you. You're doing code review on a stochastic intern. The whole 10x story depends on you eventually looking away.

Just don’t buy the tools for 10x improvements, buy them for the 1.1x improvement and the help it gives with the annoying stuff like refactoring arguments to a function that’s used all over, writing tests, etc. They can also help reduce cognitive load in certain ways when you just use them to ask about your large code base.

Because the degree to which the LLM prompts you back to the terminal is too frequent for the human to engage in parallel work.

I’m basically saying don’t do parallel work, use it as a tool. Just sit there and watch it do stuff, make sure it’s doing what you want, and stop it if it’s doing too much or not what you want to do.

Maybe I’m just weird (actually that’s a given) but I don’t mind babysitting the clanker while it works.


I define tools that perform individual tasks, like build the application, run the tests, access project management tools with task context, web search, edit files in the workspace, read only vs write access source control, etc.

The agent only has access to exactly what it needs, be it an implementation agent, analysis agent, or review agent.

Makes it very easy to stay in command without having to sit and approve tons of random things the agent wants to do.

I do not allow bash or any kind of shell. I don't want to have to figure out what some random python script it's made up is supposed to do all the time.


This is a cool idea, can you write more about how your tools work or maybe short descriptions of a few of them? I’m interested in more rails for my bots.

I just made MCP servers that wrap the tools I need the agents to use, and give no-ask permissions to the specific tools the agents need in the agent definition.

Both OpenCode and VsCode support this. I think in ClaudeCode you can do it with skills now.

The other benefit is the MCP tool can mediate e.g. noisy build tool output, and reduce token usage by only showing errors or test failures, nothing else, or simply an ok response with the build run or test count.

So far, I have not needed to give them access to more than build tools, git, and a project/knowledge system (e.g. Obsidian) for the work I have them doing. Well and file read/write and web search.


Cool, thanks for the additional details!

I use Cursor but it's getting expensive lately, so I'm trying to reduce context size and move to OpenCode or something like that which I can use with some cheaper provider and Kimi 2.5 or whatever.


Because its SO much faster not to have to do all that. I think 10x is no joke, and if you're doing MVP, its just not worth the mental effort.

POC, sure (although 10x-ing a POC doesn't actually get you 10x velocity). MVP, though? No way. Today's frontier models are nowhere near smart enough to write a non-trivial product (i.e. something that others are meant to use), minimal or otherwise, without careful supervision. Anthropic weren't able to get agents to write even a usable C compiler (not a huge deal to begin with), even with a practically infeasible amount of preparatory work (write a full spec and a reference implementation, train the model on them as well as on relevant textbooks, write thousands of tests). The agents just make too many critical architectural mistakes that pretty much guarantee you won't be able to evolve the product for long, with or without their help. The software they write has an evolution horizon between zero days and about a year, after which the codebase is effectively bricked.

There is a million things in between a C compiler and a non-trivial product. They do make a ton of horrible architectural decisions, but I only need to review the output/ask questions to guide that, not review every diff.

A C compiler is a 10-50KLOC job, which the agents bricked in 0 days despite a full spec and thousands of hand-written tests, tests that the software passed until it collapsed beyond saving. Yes, smaller products will survive longer, but how would you know about the time bombs that agents like hiding in their code without looking? When I review the diffs I see things that, if had let in, the codebase would have died in 6-18 months.

BTW, one tip is to look at the size of the codebase. When you see 100KLOC for a first draft of a C compiler, you know something has gone horribly wrong. I would suggest that you at least compare the number of lines the agent produced to what you think the project should take. If it's more than double, the code is in serious, serious trouble. If it's in the <1.5x range, there's a chance it could be saved.

Asking the agent questions is good - as an aid to a review, not as a substitute. The agents lie with a high enough frequency to be a serious problem.

The models don't yet write code anywhere near human quality, so they require much closer supervision than a human programmer.


A C compiler with an existing C compiler as oracle, existing C compilers in the training set, and a formal spec, is already the easiest possible non-trivial product an agent could build without human review.

You could have it build something that takes fewer lines of code, but you aren’t gonna to find much with that level of specification and guardrails.


This is significantly slower than just writing the code yourself.

I don’t find it slower overall, personally, but YMMV depending on how you like to tackle problems. Also the problem space and the project details can dictate that these tools aren’t helpful. Luckily the code I write tends to be perfect for a coding agent to clank away for me.

For that kind of flow, I prefer to work without AI.

The agent mostly helps me reduce cognitive load and avoid the fiddly bits. I still review and understand all of the code but I don’t have to think about writing all of it. I also still hand write tons of code when I want to be very specific about behavior.

I agree with this too. I decided on constraints for myself around these tools and I give my complete focus & attention to every prompt, often stopping for minutes to figure things through and make decisions myself. Reviewing every line they produce. I'm a senior dev with a lot of experience with pair programming and code review, and I treat its output just as I would those tasks.

It has about doubled my development pace. An absolutely incredible gain in a vacuum, though tiny compared to what people seem to manage without these self-constraints. But in exchange, my understanding of the code is as comprehensive as if I had paired on it, or merged a direct report's branch into a project I was responsible for. A reasonable enough tradeoff, for me.


I have never found any utility in that. After all, you can still just review the diffs and ask it for explanation for sections instead.

> After all, you can still just review the diffs

anonu has explicitly said that they've wiped a database twice as a result of agents doing stuff. What sort of diff would help against an agent running commands, without your approval?


Agent does not have to run in your user context. It is easy mistake to make in yolo mode but after that it's easy to fix. e.g. this is what I use now so I can release agent from my machine and also constrain its access:

    $ main-app git:(main) kubectl get pods | grep agent | head -n 1 | sed -E 's/[a-z]+-agent(.*)/app-agent\1/'
    app-agent-656c6ff85d-p86t8                          1/1     Running     0             13d
Agent is fully capable of making PR etc. if you provide appropriate tooling. It wipes DB but DB is just separate ephemeral pod. One day perhaps it will find 0-day and break out, but so far it has not done it.

Hah I run my agent inside a docker with just the code. Anything clever it tries to do just goes nowhere.

> After all, you can still just review the diffs

The diff: +8000 -4000


You can ask it to make the changes in appropriate PRs. SOTA model + harness can do it. I find it useful to separate refactors and implementations, just like with humans, but I admittedly rely heavily on multi-provider review.

It’s terribly slow

I get it, but if tomorrow every inference provider doubled costs I still understand my applications code and can continue to work on it myself.

I hear this a lot but I don't think decades of experience atrophies irretrievably so quickly as to make it worth it (alone) to abstain from making full use of these tools. I still read and direct enough of the architecture to not be lost in the code it generates. Maybe you haven't tried using agents to reorganize/refactor as much - I have cleaner code than I did before when it was done by hand, because I can afford to tackle debts.

I also don't find the permissions it prompts for very meaningful. Permission to use a file search tool? Permission to make a web request? It's a clumsy way to slow it down enough for me to catch up.


You can push thousands of LOC every day while approving manually. If you went any faster you would not be able to read the code.

On the credentials point. Here is what I find.

Day 1: Carefully handles the creds, gives me a lecture (without asking) about why .env should be in .gitignore and why I should edit .env and not hand over the creds to it.

Day 2: I ask for a repeat, has lost track of that skill or setting, frantically searches my entire disk, reads .env including many other files, understands that it is holding a token, manually creates curl commands to test the token and then comes back with some result.

It is like it is a security expert on Day 1 and absolute mediocre intern on Day 2


I found the same, it was super careful handling the environment variable until it hit an API error, and I caught in it's thinking "Let me check the token is actually set correctly" and it just echoed the token out.

( This was low-stakes test creds anyway which I was testing with thankfully. )

I never pass creds via env or anything else it can access now.

My approach now is to get it to write me linqpad scripts, which has a utility function to get creds out of a user-encrypted share, or prompts if it's not in the store.

This works well, but requires me to run the scripts and guide it.

Ultimately, fully autotonous isn't compatible with secrets. Otherwise, if it really wanted to inspect it, then it could just redirect the request to an echo service.

The only real way is to deal with it the same way we deal with insider threat.

A proxy layer / secondary auth, which injects the real credentials. Then give claude it's own user within that auth system, so it owns those creds. Now responsibilty can be delegated to it without exposing the original credentials.

That's a lot of work when you're just exploring an API or DB or similar.


I think it is just because they are having to load shed! Some days you may be getting much less compute - the main way "thinking" operates, is to just iterate on the result a few more times

I essentially have 3 modes:

1. Everything is specified, written and tested by me, then cleaned up by AI. This is for the core of the application.

2. AI writes the functions, then sets up stub tests for me to write. Here I’ll often rewrite the functions as they often don’t do what I want, or do too much. I just find it gets rid of a lot of boilerplate to do things this way.

3. AI does everything. This is for experiments or parts of an application that I am perfectly willing to delete. About 70% of the time I do end up deleting these parts. I don’t allow it to touch 1 or 2.

Of course this requires that the architecture is setup in a way where this is possible. But I find it pretty nice.


This is the way imo, at least for now.

This seems like a really easy problem to solve. Just don't give the LLM access to any prod credentials[1]. If you can't repro a problem locally or in staging/dev environments, you need to update your deployment infra so it more closely matches prod. If you can't scope permissions tightly enough to distinguish between environments, update your permissions system to support that. I've never had anything even vaguely resembling the problems you are describing because I follow this approach.

[1] except perhaps read-only credentials to help diagnose problems, but even then I would only issue it an extremely short-lived token in case it leaks it somehow


Must consider ourselves lucky for having the intuition to notice skill stagnation and atrophy.

Only helps if we listen to it :) which is fun b/c it means staying sharp which is inherently rewarding


I usually try to review all the code written by claude. And also let claude review all the code that i write. So, usually I have some understanding of what is going on. And Claude definitely sometimes makes "unconventional" decisions. But if you are working on a large code base with other team members (some of which may already have left the company). Their are also large parts of the code that one doesn't understand and are abstracted away.

I really recommend using Agent Safehouse (https://news.ycombinator.com/item?id=47301085).

Don’t give your agent access to content it should not edit, don’t give keys it shouldn’t use.


> So the cognitive load of doing it myself, even assembling a simple docker command, is just too high.

The cognitive load is not too high. You're just addicted. I would even say, lazy.


It never ceases to scare me how they just run python code I didn't write via:

> python <<'EOF'

> ${code the agent wrote on the spot}

> EOF

I mean, yeah, in theory it's just as dangerous as running arbitrary shell commands, which the agent is already doing anyway, but still...


The good news is that some of these harnesses (like Codex) use sandboxing. The bad news is that they're too inflexible to be effective.

By default these shell commands don't have network access or write access outside the project directory which is good, but nowhere near customizable enough. Once you approve a command because it needs network access, its other restrictions are lifted too. It's all or nothing.


> 2. I've learned nothing. So the cognitive load of doing it myself, even assembling a simple docker command, is just too high. Thus, I repeatedly fallback to the "crutch" of using AI.

I'm not trying to be offense, so with all due respect... this sounds like a "you" problem. (And I've been there, too)

You can ask the LLMs: how do I run this, how do I know this is working, etc etc.

Sure... if you really know nothing or you put close to zero effort into critically thinking about what they give you, you can be fooled by their answers and mistake complete irrelevance or bullshit for evidence that something works is suitably tested to prove that it works, etc.

You can ask 2 or 3 other LLMs: check their work, is this conclusive, can you find any bugs, etc etc.

But you don't sound like you know nothing. You sound like you're rushing to get things done, cutting corners, and you're getting rushed results.

What do you expect?

Their work is cheap. They can pump out $50k+ worth of features in a $200/mo subscription with minimal baby-sitting. Be EAGER to reject their work. Send it back to them over and over again to do it right, for architectural reviews, to check for correctness, performance, etc.

They are not expensive people with feelings you need to consider in review, that might quit and be hard to replace. Don't let them cut corners. For whatever reason, they are EAGER to cut corners no matter how much you tell them not to.


Good advice. Personally I'm waiting until it is worthwhile to run these models locally, then I'm going to pin a version and just use that.

I'm only 5 years into this career, and I'm going to work manually and absorb as much knowledge as possible while I'm still able to do it. Yes, that means manually doing shit-kicker work. If AI does get so good that I need to use it, as you say, then I'll be running it locally on a version I can master and build tooling for.


While I share some of the feelings about 'not understanding what is actually happening under the hood', I can't help but think about how this feeling is the exact same response that programmers had when compilers were invented:

https://vivekhaldar.com/articles/when-compilers-were-the--ai...

We are completely comfortable now letting the compilers do their thing, and never seem to worry that we "don't know what is actually happening under the hood".

I am not saying these situations are exactly analogous, but I am saying that I don't think we can know yet if this will be one of those things that we stop worrying about or it will be a serious concern for a while.


I think about this a lot, though one paragraph from that article:

> Many assembly programmers were accustomed to having intimate control over memory and CPU instructions. Surrendering this control to a compiler felt risky. There was a sentiment of, if I don’t code it down to the metal, how can I trust what’s happening? In some cases, this was about efficiency. In other cases, it was about debuggability and understanding programming behavior. However, as compilers matured, they began providing diagnostic output and listings that actually improved understanding.

I would 100% use LLMs more and more aggressively if they were more transparent. All my reservations come from times when I prompt “change this one thing” and it rewrites my db schema for some reason, or adds a comment that is actively wrong in several ways. I also think I have a decent working understanding of the assembly my code compiles to, and do occasionally use https://godbolt.org/. Of course, I didn’t start out that way, but I also don’t really have any objections to teenagers vibe-coding games, I just think at some point you have to look under the hood if you’re serious.


> I would 100% use LLMs more and more aggressively if they were more transparent. All my reservations come from times when I prompt “change this one thing” and it rewrites my db schema for some reason, or adds a comment that is actively wrong in several ways.

Isn't that what git is for, though? Just have your LLM work in a branch, and then you will have a clear record of all the changes it made when you review the pull request.


(I‘m saying this as someone who uses AI for coding a lot and mostly love it) Yeah, but is that really the same? Compilers work deterministically — if it works once, it will work always. LLMs are a different story for now.

Said another way, compilers are a translation of existing formal code. Compilers don't add features, they don't create algorithms (unrolling, etc., notwithstanding), they are another expression of the same encoded solution.

LLMs are nothing like that


LLMs are just translating text into output, too, and are running on deterministic computers like every other bit of code we run. They aren't magic.

It is just the scope that makes it appear non-deterministic to a human looking at it, and it is large enough to be impossible for a human to follow the entire deterministic chain, but that doesn't mean it isn't in the end a function that translates input data into output data in a deterministic way.


> is just the scope that makes it appear non-deterministic to a human looking at it

They are non-deterministic due to both the GPUs they run on and some additional randomness intentionally added through the "temperature" parameter.


just text !== syntactically correct code that solves a defined problem

There is a world of difference between translation and generation. It's even in the name: generative AI. I didn't say anything about magic.


LLMs are deterministic, too. I know there is randomness in the choosing tokens, but that randomness is derived from a random seed that can be repeated.

Only if the seed is known. Determinism is often predicated on perfect information. Many programs do not have that. Their operations cannot be reproduced practically. The difference between saying deterministic and non-deterministic is contextual based on if you are concerned with theory or practicality.

LLMs are deterministic[1], but the only way to determine the output is to empirically run them. With compilers, both the implementor and a power user understand the specific code transformations they are capable of, so you can predict their output with good accuracy. I.e. LLMs are probably chaotic systems.

edit: there might be a future where we develop robopsychology enough to understand LLM more than black boxes, we we are not there yet.

[1] Aside from injected randomness and parallel scheduling artifacts.


If I understand your argument, you're saying that models can be deterministic, right?

Care to point to any that are set up to be deterministic?

Did you ever stop to think about why no one can get any use out of a model with temp set to zero?


llama.cpp is deterministic when run with a specified PRNG seed, at least when running on CPU without caching. This is true regardless of temperature. But when people say "non-deterministic", they really mean something closer to "chaotic", i.e. the output can vary greatly with small changes to input, and there is no reliable way to predict when this will happen without running the full calculation. This is very different behavior from traditional compilers.

No, LLMs ARE deterministic, just like all computer programs are.

I get why that is in practice different then the manner in which compilers are deterministic, but my point is the difference isnt because of determinism.


I think you are misunderstanding the term "deterministic". Running on deterministic hardware does not mean an algorithm is deterministic.

Create a program that reads from /dev/random (not urandom). It's not determistic.


Fair, although you can absolutely use local LLMs in a deterministic way (by using fixed seeds for the random number generation), and my point is that even if you did that with your LLM, it wouldn't change the feeling someone has about not being able to reason out what was happening.

In other words, it isn't the random number part of LLMs that make them seem like a black box and unpredictable, but rather the complexity of the underlying model. Even if you ran it in a deterministic way, I don't think people would suddenly feel more confident about the outputted code.


The difference is that compilers are supposed to be deterministic and low level inclined people often investigate compiler bugs (specially performance bugs) and can pinpoint to some deterministic code that triggered it. Fix the underlying code and it stops misbehaving with high assurance

A non deterministic compiler is probably defective and in any case much less useful


A major difference is that _someone_ knew what was going on (compiler devs).

That is an interesting difference, I agree.

Although, while the compiler devs might know what was going on in the compiler, they wouldn't know what the compiler was doing with that particular bit of code that the FORTRAN developer was writing. They couldn't possibly foresee every possible code path that a developer might traverse with the code they wrote. In some ways, you could say LLMs are like that, too; the LLM developers know how the LLM code works, but they don't know the end result with all the training data and what it will do based on that.

In addition, to the end developer writing FORTRAN it was a black box either way. Sure, someone else knows how the compiler works, but not the developer.


I think you have an incorrect mental model of how LLMs work.

There's plenty of resources online to rectify that, though.


I think you may be misreading my comment, then, because I know how LLMs work. Which part of my comment do you think shows that I don’t?

maybe you have a wrong mental model on how compiler works then. I'm not a compiler developer, but usually I have a pretty good idea on what code gcc will generate for my C++: it is far from a black box.

Also compilers usually compose well: you can test snippets of code in isolation and the generated code it will have at least some relation to whatever asm would be generated when the snippet is embedded in a larger code base (even under inter-procedural optimizations or LTO, you can predict and often control how it will affect the generated code).


Except that compilers are (at least to a large degree) deterministic. It's complexity that you don't need to worry about. You don't need to review the generated assembly. You absolutely need to review AI generated code.

People often use "non-deterministic" to imply "unreliable" when that's not always the case. You can have an LLM that's clearly non-deterministic but also reliable for tasks.

At the end of the day, LLMs are also deterministic. They are running on computers just like all software, and if you have all the same data and random seeds, and you give the same prompt to the same LLM, you will get back the exact same response.

> you give the same prompt to the same LLM, you will get back the exact same response.

Demonstrably incorrect. This is because the model selection, among other data, is not fixed for (I would say most) LLMs. They are constantly changing. I think you meant something more like an LLM with a fixed configuration. Maybe additional constraints, depending on the specific implementation.


Yes, by 'same LLM', I mean literally the same model with the same random seeds. You are correct, the big LLMs from providers like Anthropic and OpenAI do not meet this definition.

YBMMV

Well the problem is the rabid left wing nuts all have TDS. So anything Trump does can only be viewed through one lens. To be fair this is sort of par for the course when you're in a position of power. You can never please everyone.

Now on the opposite extreme, the MAGA sycophants, Trump can do nothing wrong, and every misstep is positioned as some sort of 4D chess move we are all too dumb to understand.

If there weren't real lives at stake it would be funny.

The real issue here is we have a divisive person in power who revels in the chaos and the fighting.


Stop trying to "both sides" this.

Especially when one side is "rabid" "nuts" and the other side is just "sycophants". You are not the neutral reasonable centrist you pretend to be.


People don't have to perfectly neutral central position either. Far more problematic when you are trying to stop them from having one.

As long as tokens cost less than humans people will pay for them. If you're human you need to differentiate yourself bigly from what will quickly become mainstream AI slop.

True. I didn't expect it to provide novel designs. Maybe Anthropic should find a better replacement for 'Design'.

In my example, I expected it to create UI elements for a business application / expert system. And it did fine. In fact, I believe its perfect for creating average and functional designs. Its a better way to test variations of UIs for expert systems. But I want to know what the actual costs are.


I remember in India's McDonalds there was a Maharaja Burger. In Lebanon they have falafel on the menu. This Japanese menu looks really enticing to be honest.

As a Lebanese, this is deeply saddening. Israel is trying to exact some sort of "lesson" on the Lebanese. I don't want to blame everything on Israel, but the fact that Lebanon is a weak country unable to rein in Hezbollah is very strongly influenced by the US need to make Israel a hegemon in the region. And the vicious cycle continues ... As a Lebanese I feel helpless. And this type of situation only emboldens the "resistance" which in turns justifies Israels actions in Lebanon. It's never ending and we're done with it ...

Site has been slashdotted

There is a lot to source from Christian ideals, many of which are the foundations of Western culture: human dignity, moral equality, conscience, limits on power and care for those less fortunate and weaker. Much of what is happening in the world today feels like a stark reversal of those ideals: selfishness and divisiveness manufactured to promote a narrow segment of society.

Recent news articles have indicated an increase in church attendance. This makes sense: we have lost our moral compass... Specifically in the USA... And people are searching for a new direction.


From what I’ve seen religions derive from basic human virtues and not the other way around.


and?


I think what actually happened is that the Enlightenment comprehensively developed the concept of natural rights and the Christians were like "well, we're not beating that with divine right of kings, better adopt it as the thing God did all along".


The absolute, immutable, eternal and unchanging nature of God somehow changes with the times. Even in scripture. Odd, that.


What have the Roman’s ever done for us?


There's a big difference between the Christian ideals and the practices of organised Christian churches. The acquisition of wealth and power seemed to be a major goal for organised Christianity through to the Middle Ages. My opinion is that Christianity held back human civilisation for maybe a thousand years with their doctrine (c.f. Copernicus).

As an atheist, I find it grating to hear people talking about only the idealistic side of Christianity and ignoring all the wars, torture and denigration of people that it caused. Of course, other religions are also responsible for a lot of the same sins.

That said, I do have respect for the teachings of Jesus - he seemed to be very much into socialism and very anti-Captialist.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: