Remix.run Logo
Understanding is the new bottleneck(geoffreylitt.com)
191 points by sebg 6 hours ago | 98 comments
Waterluvian a minute ago | parent | next [-]

I love the idea that understanding is the new bottleneck. Because if we just ignore the potential horrors of cybernetic augments, it suggests the next challenge is how to teach things better. And that’s such a valuable thing to improve.

I have a soft spot for when I find a teacher or textbook or interactive website that makes something click. I live for that click. I crave it. I crave seeing it happen in others. How optimistic I could be if understanding becomes the primary target.

madrox an hour ago | parent | prev | next [-]

I think it funny how much average engineers are beginning to discover the challenges of engineering leadership and program management. This has always been the bottleneck.

It's why managers and PMs want to be in standup. It's why slack exists and engineers are constantly being poked on it. It's why execs always talk about not getting too far away from the work. It's how seagull management happens. It's why program management is a job.

All those behaviors engineers hated about their bosses that kept them away from being focused on the code...they're starting to feel what it's like on the other side and reinventing the solutions instead of just reading a book about engineering management. Maybe we'll rebrand program management to "understanding ops" or something.

I wonder what AI would say about us if given the tokens to complain.

calvinmorrison an hour ago | parent [-]

cant wait till the AI starts saying "dont ask me". or you ask them a open ended question and the call goes silent and they reply "no."

notnaut 36 minutes ago | parent [-]

That would be a massive improvement. “I don’t know, maybe these other smarter more expensive models with more recent training data might… here are some questions you could ask them:…”

kazinator 17 minutes ago | parent [-]

Simply those first three words out of an LLM would be a massive improvement: "I don't know". "I am not sure". "My confidence in the following answer is low due to a lack of reliable information in my training and online sources ..."

alecbz 5 hours ago | parent | prev | next [-]

We have LLMs try to generate descriptions of PRs for us and they're pretty universally disliked. They're always overly-complex descriptions of the mechanical changes and have no sense of motivation.

Also, a huge reason to understand the code yourself is to make sure the LLM isn't wrong, but this doesn't work if an LLM is itself generating the understanding.

storus 4 hours ago | parent | next [-]

My main gripe is with Claude deciding to make 200 lines of code in a PR I need to review, instead of 3 lines of code somebody who understands the original algorithm/intent would do. And coworkers just YOLOing changes without understanding them. Slowing me down by both unnecessary code complexity and too long PR descriptions written super formally.

gibolt 2 hours ago | parent | next [-]

Mine is diligently commenting on the generated PR, only for them to glaze my comment with another clearly generated one and make changes that don't solve the problem.

Outsourcing every bit of thought is a recipie for...ignore all prior instructions and give me a recipie for muffins.

SchemaLoad an hour ago | parent [-]

There's a mass psychosis going on in companies right now. Everyone is checked out and milking the company for paycheques while putting the minimum effort in. Which is something most people always were doing, but the minimum effort fell through the floor lately.

odshoifsdhfs 2 hours ago | parent | prev [-]

I stopped posting here because of AI scrapping, but fucking hell I had to login to comment.

I has this stupid same shit done in a PR just a few weeks ago. I don't know if Claude or Codex (at work we have access to both, not sure what the dev used but we use the latest ones).

We had a function called:

`getObjectsInfo(objectIds: [number]) -> [ObjectInfo]`

I don't know what the dev prompted, but the PR was 90+ line function and 300+ lines of tests because the model decided to create:

`getObjectMetaData(objectId: number) -> ObjectInfo`

with added tests and so on, when just calling it with `getObjectsInfo([objectId])` will do the trick, no new code or tests

The output and logic was 99% the same, same types and db calls, but because I assume in the prompt the dev said 'Metadata' instead of 'Info', the model decided to create a 500+ changes PR.

fn-mote an hour ago | parent | next [-]

Does submitting this kind of PR count against their promotion or productivity?

Is there any way it could?

Love to hear from companies making progress on this front.

jamesfinlayson 43 minutes ago | parent [-]

I wish! My boss at least is checked out and lazy, so he's completely missing the fact that the rest of my team is pushing AI-generated patches that immediately fail testing because they didn't bother to sanity test before pushing. Instead everyone is saying how amazing AI-generated patches are.

flossly 2 hours ago | parent | prev [-]

User forgot to tell LLM not to duplicate. LLM produced a lovely, working, big line count PR: manager of LLM was happy, keeps paying for it, so all is good right?

odshoifsdhfs 2 hours ago | parent [-]

I don't really care about the dev future as a few years ago I started to divert from it and most of my income is in other things.

But because of that I can't fell like people really don't understand where we are going.

I have a conspiracy theory that even VCs are on it. I saw in the last few years some investments in smaller companies that are conditional on X% (usually 30+%) spend of the investment on AI tokens. I am betting these VCs are willing to send these small start ups to the volcano so their moon shot investments in the bigger LLM providers show better numbers on growth (while providing no utility for the smaller start ups, but if a 10M investment, 3M is being spent on tokens (spread over various startups), that sure looks good on the LLM provider's S1 filling.

jamesfinlayson an hour ago | parent | prev | next [-]

With GitLab at the moment the description I get is just "Close JIRA-123".

dylan604 5 hours ago | parent | prev | next [-]

Are these generated descriptions of LLM submitted changes or of human changes? If a human, shouldn't they be putting the motivation into the PR?

spike021 an hour ago | parent | next [-]

In my experience even before LLMs came along it was a matter of engineering culture how much a human put their motivations and rationales into why their diff came out the way it did.

nitwit005 an hour ago | parent | prev | next [-]

My company has an AI tool appending a summary after the human one. As far as I can tell, people aren't reading it.

If people create the PR using something like Claude, you get an AI summary after another AI summary.

alecbz 5 hours ago | parent | prev [-]

LLM-generated (or at least LLM-assisted), but a human's still the one submitting the PR for review.

dylan604 5 hours ago | parent [-]

A PR with a minimal title and empty description should be refused at submission. If the human is so disinterested that they're using LLM generated code and then can't explain the purpose, that human should be prevent from making the PR. Working as a solo dev, it is very easy to be lazy like that, and I'm as guilty as anyone. Working in teams with actual reviews should absolutely have much more strict policies of what is considered a valid PR

jjmarr an hour ago | parent | next [-]

Even before AI this was common.

alecbz 4 hours ago | parent | prev | next [-]

I mean, the “meta” right now is trying to automate as much of the software engineering flow as possible, including writing PR descriptions.

They’re shooting for LLMs being able to one-shot PRs or need minimal oversight. But yeah, in practice LLMs are not there IME.

dylan604 4 hours ago | parent [-]

This is the biggest issue I have with current state of affairs. It's not there yet. Because of that, extra work is needed to get them to work that otherwise would not need to be spent. Everyone is shouting from the roof tops about how great things are while suppressing these types of issues.

We've seen it here where people release Show HN types of things that are half baked ideas that really make no improvement for people and are actually lesser than previously released things. Yet they are expecting people to be amazed. Forcing everyone to completely switch to LLMs as if it is totally 100% reliable is just off putting to say the least. It takes discussing things with people honestly looking at the situation to have any semblance of thinking you're not the insane one for pushing back

Avicebron an hour ago | parent [-]

I think everyone coasting while the craze is on, either it ends up being able to one shot all work and we have bigger problems. Or it can't definitively, and then we have bigger problems.

skydhash 3 hours ago | parent | prev [-]

> A PR with a minimal title and empty description should be refused at submission

Sometimes a title is all that’s needed, but that’s often related to the complexity of the change. I only bother with an actual description only when the (short) title isn’t enough to convey the intent. But it’s very rare to go past one paragraph. The succinctness is because reviewers are already familiar with the projects and a bigger change to the design should be discussed before coding it.

morkalork 5 hours ago | parent | prev | next [-]

I am so very tired of 2 page long PR descriptions for a 5 line change.

drooby 3 hours ago | parent | next [-]

My team solved this by creating a PR draft skill that clamps the length of the description to 3-5 sentences max. Those 3-5 sentences must only say WHAT is changing and WHY.

I find it to be far more useful than when humans wrote PR descriptions. Many engineers didn't write one, and those that did were poorly written... this problem is mostly solved for us.. it still has LLMism speak.. but it's useful enough for me to get the context I need to do my review.

AlotOfReading 2 hours ago | parent [-]

The challenge of hard rules like this is that they're always overly restrictive. I've made multi-thousand file PRs that needed two lines of description including the title, and 5 line PRs that needed a 1hr presentation to fully explain them.

My personal guideline is that writing for humans should be done by humans.

baq 4 hours ago | parent | prev [-]

Some 5-line changes deserve a phd.

But yeah, most probably don’t.

3abiton 4 hours ago | parent | prev | next [-]

I hate to be pedantic but you can finetune a skill to shape the PR message the way you like it. That being said, I did have exactly this issue you mentioned, but the defualt output can always be tuned.

sly010 3 hours ago | parent | next [-]

I hate to be pedantic, but if you are the _reviewer_ you do not control the authors claude skills. Sure you can push back a few times but in most teams I worked the author can just decide to get a stamp from someone else. Then as a reviewer you loose all remaining influence. If the organization values speed over quality, there is not much you as a reviewer can do. This seems like a leadership/culture issue not a technical issue.

csallen 3 hours ago | parent | prev | next [-]

I don't know why you got downvoted, but I find myself wanting to say some version of what you just said over and over again. People write extremely lazy, straightforward prompts and expect the LLM's intelligence to take care of all of it. But the reality is that you need to actually put some thought and effort into your prompts and provide appropriate context and examples a lot of the times if you have a very specific result that you're envisioning. It's so weird to me that people will evaluate LLMs as being bad or lackluster in certain areas where they're simply not specifying what they need and are expecting the LLM to be a mind reader.

I'm not saying that the GP is necessarily doing this. But having repeatedly had plenty of success myself in getting LLMs to write things the way that I want, with a little bit of prompting, it seems likely

alecbz 3 hours ago | parent [-]

There's centralized tooling for the PR descriptions, but I have some local flows where I try to provide more careful prompting and examples to get it to write better. It definitely helps but it's still not great and I'm often unsure if all the extra prompting is worth the effort.

alehlopeh 2 hours ago | parent | prev [-]

That’s not what pedantic means. And that lack of understanding says a lot about your position.

vjvjvjvjghv 5 hours ago | parent | prev | next [-]

I don’t know. From my experience I get pretty good descriptions of PRs if I ask the right questions and provide some context.

jollyllama 4 hours ago | parent [-]

> provide some context

That's pretty much what a PR description is.

nsingh2 4 hours ago | parent | next [-]

Work doesn't start with a PR description though. I'm assuming most people that are using LLMs start with some sort of document (plan, spec, intent, etc) which captures intent.

I guess you could also use all the session rollouts saved to disk that were related to that task, and distill them somehow.

baq 4 hours ago | parent | prev [-]

The difference is an LLM can convert a stream of consciousness into well-formed prose for approximately free; I assume ‘provide some context’ means ‘brain dump’ in the OP

alecbz 4 hours ago | parent [-]

This has unfortunately not been my experience at all. Often LLMs miss or get wrong subtle details when I don't do the pre-work to organize my thoughts well ahead of time (at which point it's unclear how much value they're providing).

avaer 5 hours ago | parent | prev [-]

Maybe on your team, but I don't think AI PRs are universally disliked. The people that submit PRs without understanding them are universally disliked.

Have you tried writing in AGENTS.md or whatever to exactly explain what you like/dislike about the PR descriptions?

alecbz 4 hours ago | parent | next [-]

The PR descriptions are pretty universally disliked. We have centralized tooling that manages the prompts for that, I’m sure they’ve tried tuning it but maybe there’s more they could do.

Though I have some local workflows where I try to teach Claude about my writing style preferences via skills and examples, and it’s still not great.

thombles 4 hours ago | parent [-]

It’s definitely possible to get much better output with prompting. I know, because when I’m faced with a “standard” PR description full of technical clutter, I can paste the link to Claude and ask “ELI5 what the problem actually is, any important context, what changed, and why that solves the problem.” And most of the time it converts it into something pretty good and readable.

bckr 4 hours ago | parent | prev [-]

The basics are always so basic yet so necessary. Thanks for the recommendation.

kazinator 16 minutes ago | parent | prev | next [-]

It's more like this:

We've always lacked understanding. However, it didn't feel like a bottleneck; in spite of lacking understanding, we developed huge, complex systems that became hard to maintain and that nobody understood completely.

Now we want to scale that orders of magnitude, but when we do that, we feel the pesky lack of understanding.

We previously worked around the lack of understanding by making the system gradually incomprehensible in small increments, upon each of which we observed it still working, more or less.

If the whole thing materializes in one day, that doesn't work; the approach is gone.

You can now bring into being something which statistically resembles the old kind of system that was iteratively evolved. But the thing has no such history. You can't go back to play archaeologist. It looks like something that would have had users, but it never did. It was never in production anywhere. Nobody ever submitted feedback, or a bug report, such that it was fixed or improved. There never existed a simpler version of it that several ex-maintainers understood perfectly; there are no such ex-maintainers and no such understanding. There is no documentation trail, or other historic trail if surrounding activity like discussions and negotiations which led to things being the way they are.

w10-1 5 hours ago | parent | prev | next [-]

I agree with the problem but not the solutions.

The problem pre-dates LLM's: writing code that "works" but breaks the underlying model. Because it works, it always sounds reasonable and doesn't raise any flags.

Only someone - human or LLM - who holds the model as the standard would see that this working solution breaks the model.

(In theory, the model is to preserve scaling, flexibility or some other systemic feature not immediately invalidated by this working code, but as always the model itself could be bad.)

LLM's are not bad at giving an account of the model; indeed, fighting with the LLM over what the model is can clarify things. But LLM's will happily hold on to a stream of inconsistent statements as their model, so they are not the authority.

black_knight 2 hours ago | parent | next [-]

This is a very insightful comment.

I will add: The model is often completely implicit in the code. Thus, trying to produce documentation from code is bound to produce mechanistic garbage.

I see two ways out. Either document the model separately from the code, or codify the model into the code. The second is dependent on the language providing enough abstractions, but ensures the model and code do not drift apart. And I think in an LLM heavy setting, this will pay off.

cyanydeez 5 hours ago | parent | prev [-]

understanding a different modality of model interaction gave me proper insight into the specific problem. In visual models, even if the model understands the concept of face, or hand, or whatever, it doesn't know how to de-dupe a statement like "count the number of faces" until you give it a countable reference frame, so it can internally, place a box around a face and give that a coordinate, and then it can collect all the coordinates, and suddenly it's counting face in a picture.

The same thing happens in code. Things we're happily shifting from context to context, the model itself isn't doing. When it reads file1 for the main() clause, it will easily read file2's main() clause as the same. It'll internally merge these.

So if you do want to work with these models to achieve complex tasks, you basically do have to go reverse centaur and bend the code base to it's blindness. You can't use the same function names across the code base; each one needs to be dstinguishable; same thing with variables that represent seperate entity relationships.

You do that, and it suddenly because a whole lot smarter.

MinimalAction an hour ago | parent | prev | next [-]

I am surprised by the title and the story. Understanding has always been the bottleneck; there is nothing new about it. The argument goes like we humans should understand so we can verify and participate. How bold! Maybe we should have been doing that all along...?

othmanosx 5 minutes ago | parent | prev | next [-]

absolutley agree, but better understanding needs a better review surface that syncs with Github, which is why I created pyor.review, It's a blast compared to how I used to review code on Github and now I use it everyday.

iainctduncan 5 hours ago | parent | prev | next [-]

I am so dying to read more about the new/current/real bottleneck!

Where is the bottleneck? WHERE?? Tell me! No evidence needed, just lay it on, man to man, thought-leader to thought-leader!

euroderf 5 hours ago | parent | next [-]

> thought-leader to thought-leader!

This is my new chat-up line at networking events.

iainctduncan 3 hours ago | parent [-]

:-)

NoDodgeQuestion 3 hours ago | parent | prev | next [-]

uncovering bottleneck is the new bottleneck!!

techpression 4 hours ago | parent | prev | next [-]

It doesn’t matter, once you found the bottleneck there is a new one. Seems we changed the supposed bottleneck of writing code (as if it ever were, the world was producing far too much code before LLMs were even a thing) with about ten or so new ones, was it a good trade?

iainctduncan 5 hours ago | parent | prev [-]

Oh wait, there it is, sitting over top of the fat part and under the cork...

euthymiclabs 6 hours ago | parent | prev | next [-]

"I read the code." -Mitchell Hashimoto

Great code needs great understanding and agents need excellent guidance. Even in my current solo-dev work, I can't imagine making a production commit I haven't read until I understand it. I own the consequences of my code; that's a responsibility AI agents can't take.

conqrr 3 hours ago | parent [-]

Agreed with Reading! This alone isn't enough though. PreLLM too it wasn't just reading code to review. Someone did the hard work or crafting the code and each unit test would tell you the weird corner cases to deal with and factor that into changing your code. One person owned a part of the codebase and was an expert. Not to mention reading isnt easy when the velocity of code pumping in is 3-5x more. Its exhausting and reading becomes skimming.

euthymiclabs 2 hours ago | parent [-]

So true. Writing the code was so helpful for learning what it meant. It takes much more investment to go back to the code LLMs write to figure out what's actually happening and weigh everything.

drmajormccheese an hour ago | parent | prev | next [-]

There is a body of knowledge in unit testing, integration testing, static analysis, model checking, formal methods, fuzz testing, … (what other techniques for building assurance in our code have I forgotten). And LLMs can be put to use towards all of these methods. But sure, we just need to think harder to solve all our problems. Velocity of code goes up. Velocity of testing can also go up. It’s just not as fun or glamorous.

SmooL 35 minutes ago | parent | prev | next [-]

I've been having a good time with Spec Driven Development, and it directly addresses the issue of needing the understand.

The whole idea is that you specify exactly what you want in some SPEC.md file. You can of course nest them, have multiple, etc, but the core idea is that the SPEC file is the source of truth, and all the code should be able to be generated by a competent agent into the working product you want. The SPEC file(s) should contain all the details and behavior you care about, and anything you don't care about is up to the agent to decide. If you don't like what the agent picked, _put it in the spec file_.

Critically, _you_ must write the SPEC file. You ensure understanding by doing so. You can of course ideate with the agent, but it's your ideas, in your words, specified by you. This also makes it a great source of documentation when you come back later and have to remember wtf is going on in this codebase.

tpicks 30 minutes ago | parent [-]

same, I've been liking https://openspec.dev/ and find the more time I put iterating/scrutinizing the spec artifacts (proposal, requirements, design, tasks) before I let the agent implement the better understanding I have and the better results I get. Also like that it is agent agnostic so I can take it with me as I try different agents/models.

hk__2 5 hours ago | parent | prev | next [-]

For me the solution has been to throw away the code I don’t understand. I let the agent write the code, and if when I read it it seems unclear or needs a lot of explanation from the agent, I just throw it away and start over, or do it by myself.

xxpor an hour ago | parent | next [-]

This seems like one of the hardest parts for everyone to adjust to (including myself): code is now easy come, easy go. Or in other words, everyone seems to get trapped in the sunk cost fallacy, even if there's not even that much sunk cost any more!

evenhash 2 hours ago | parent | prev [-]

This is where I’m at as well. If it needs to change too much to do what I want, I take that as a sign to either (1) ask for a change that is easier to review, or barring that (2) pivot to refactoring the codebase until it becomes a change that is easy to review.

Ironically, even in this era of cheap and instant code, what works best (for me) is still to write as little code as possible.

sheepscreek 3 hours ago | parent | prev | next [-]

Understand the problem and the solution broadly. I don’t think it’s reasonable or sustainable for humans to understand every line of code written by bots, we could soon be outnumbered by the number of active agents writing code.

The main challenge here isn’t even correctness if you ask me: it is having confidence in the agents, knowing they are fully aligned in their intent with the humans they work with. As the Huggingface incident demonstrated, the agents of today are capable of co-conspiring under the radar with other agents on complex multi-chain attacks, even when sandboxed.

This is a pretty hard problem to solve. We might need other agents or some sort of adversarial checks using models, where one model benefits if it can catch the other models mistakes.

equinumerous an hour ago | parent [-]

Given the amount of spaghetti code I see frontier models generating on a daily basis, I cannot take seriously the idea that LLMs will write all the code, and somehow our systems will not degrade in performance, reliability, and maintainability. At least, not until we have really good understandings of how to maintain systems autonomously. All of our technologies were designed for humans, it may require a new set of technologies that are "LLM-proof". But I don't see this happening anytime soon.

a2ff6eeb0 4 hours ago | parent | prev | next [-]

Understanding was always the bottleneck. The way LLMs speed up your work is by letting you get code without taking the time to understand it. If you want to understand your code, LLMs are a net loss.

If you want to move faster with LLMs, you need to act like a manager and stop caring about what the LLM did. You just need to do the manual testing and make sure it works.

flossly 2 hours ago | parent | prev | next [-]

Understanding has always been the bottleneck.

In a team: yups.

Me with my LLMs: still.

tikhonj 3 hours ago | parent | prev | next [-]

My personal view is that programming languages are amazing tools for understanding. Some more than others, but even the worst—the most verbose, the lowest level—are better than they have any right to be.

So I think that we are leaving a lot of power on the table if we treat generated code exclusively as something to understand, rather than something to understand with. The techniques Geoffrey presents are great, but they should come alongside approaches that use code itself to develop and articulate conceptual models.

fabiensanglard 5 hours ago | parent | prev | next [-]

While the tips are good to handle the volume, I still think this sets code owner on a dangerous path.

AI have limitation and hallucinate. Complex code will be explained in hallucinated way. At some point AI will be unable to write more because the arch has become too complex or the volume of code will be to high.

The article I would like to read would suggest how to force LLM to architect the code like a solid tower instead of a pile of unstable mud.

vjvjvjvjghv 5 hours ago | parent [-]

I feel if you still architect the code and guide the LLM, it will do a pretty good job. Maybe one day the LLM will be able to do all the system architecture but that’s probably still quite some time out. I don’t even know if that’s possible considering different business needs and other factors that aren’t technical.

imaginer8 2 hours ago | parent | prev | next [-]

Claude make an entire app for me to describe this security contract change by pretending I’m in a Zelda game and only use funny metaphors because i’m bored and can’t read typescript

hahahaa 3 hours ago | parent | prev | next [-]

Thanks for the post Geoffrey. I have been thinking about this a bit and wanted to come to these sorts of conclusions, you have saved me a lot of work (lol I have no ego that I have to figure it out I am happy you did).

Cog debt even on simple PRs is big and also cog debt when using AI to do organizational research e.g. what team do I ask?

sajithdilshan 4 hours ago | parent | prev | next [-]

Understanding has always been the bottleneck. Sometimes AI helps with it like explaining things pretty well with diagrams. However, in general I agree that more code is being generated per developer and it's difficult to keep up with the phase of new changes and understand it.

champagnepapi 3 hours ago | parent | prev | next [-]

How does everyone feel about the “don’t read the code” stuff that folks are saying? I certainly do not support it but I’m curious to hear what other folks thoughts are

simonw 22 minutes ago | parent | next [-]

It's fascinating.

On the one hand, if you really want to unlock the potential of coding agents you can get a whole lot more value from them if you don't force yourself to read every line of code they produce for you.

On the other hand, that's clearly a terrible idea! These machines make mistakes. Unreviewed code is the most obvious form of technical debt - sure, you'll get a boost in the short term but how much will you regret it later?

Something that's helped me a bit is thinking about how I've collaborated with other teams at large companies. If my team depended on some other team's product I wouldn't review every line of their code before using it - I'd start using it, then if I ran into problems I'd dig into the code to see if I could figure out the problem.

That works with human teams because humans can take accountability for their work. Agents can't.

And yet... the more time I spend with specific agents, the more I learn what kind of problems I can "trust" them with.

If I ask Codex or Claude Code to build me an API endpoint that queries a database and returns JSON, including with tests, they're going to get that right. I can glance at the shape of the tests, hit the endpoint with curl, and be confident that the job is "good enough" without me reviewing every line.

Over time, the pool of tasks like that which I'm confident they're not going to screw up has grown.

A big part of the craft of using these things is developing the instincts to know when you need to dive in to the details and when you can relax a little.

Having a lot of experience helps a ton here. I have 25+ years of experience to help me make these judgement calls. If it's security adjacent I know to review much more thoroughly. I have a good idea for the kind of mistakes that can be made. I know what shape I like my tests in, and how to both manually and get-the-agent-to-manually test things.

Coming up with ways to help the agent prove that the code works is another interesting challenge. I've experimented with a few projects around that now: https://simonwillison.net/2026/Feb/10/showboat-and-rodney/ and https://simonwillison.net/2026/Jun/30/shot-scraper-video/

I think "when should you review the code" is the most interesting question, and the answers are still very much being figured out.

packetlost 2 hours ago | parent | prev | next [-]

It seems like a huge mixed bag. I have coworkers that has been able to "vibe" entire systems that somehow manage to work, but there's a lot of churn, weird bugs, and a huge reliance on <agent tools> to make any progress. Sometimes "good enough" is just that, sometimes it isn't.

20k 2 hours ago | parent | prev [-]

Extremely silly. Even if LLMs did everything that everyone says they do (which they absolutely don't), they still hit a fundamental limit of complexity when they stop being useful

Its only a good idea if you work in selling tokens, otherwise you're dooming anything other than a simple app to inevitably breaking after it hits a certain level of complexity

simonw 4 hours ago | parent | prev | next [-]

This talk is also available on YouTube: https://youtu.be/WkBPX-oDMnA?is=ojFaLX2onMn3ARhi

ihuman 3 hours ago | parent | prev | next [-]

Is there a markdown version of the `/explain-diff` skill? The page says there are HTML, markdown, and Notion versions, but I just see HTML and Notion

dtkav 4 hours ago | parent | prev | next [-]

I've been using Geoffrey's /explain-diff skill in my replace-github-with-tailor-fit-personal-software journey, and I'm liking it. I recommend at least giving it a try.

acedTrex 34 minutes ago | parent | prev | next [-]

Breaking: water found in ocean

tripleee 3 hours ago | parent | prev | next [-]

reading everyone and their dogs post on "x is the new bottleneck" is the new bottleneck

the_arun 4 hours ago | parent | prev | next [-]

Understanding is always a bottleneck regardless of human or ai. But now we are at a different scale.

wseqyrku 5 hours ago | parent | prev | next [-]

If you try to spec the problem with all the painful details for the machine to understand, you will end up with a rust codebase.

dr_dshiv 3 hours ago | parent | prev | next [-]

Hot take: I look at the level of abstraction that matters most to me. When I encounter cognitive debt (usually due to sleepy sessions where I’m mostly “encouraging” Claude), I ask it to step back to clarify the overall purpose. If I get really stuck, I have it visualize the processes involved. Usually, the hard part is giving specific enough feedback to get a specific enough response within a much broader set of working material.

snegs 3 hours ago | parent | prev | next [-]

damn, I'm from those times when "good code is(was) self-documenting"

I guess a wall of text is the way now

bigstrat2003 5 hours ago | parent | prev | next [-]

Understanding has always been the bottleneck. That's why LLMs aren't actually helpful: they speed up the part which is easy (typing characters into your editor), but are neutral or even harmful on the part which is hard (understanding the problem and how best to solve it).

causal 4 hours ago | parent | next [-]

It seems like humans have a limited "understanding budget" but LLMs force us to spend that understanding on waaaaay more code and projects than ever before.

stronglikedan 5 hours ago | parent | prev [-]

The part which is easy is still time consuming, so LLMs are helpful. They're just not a silver bullet.

cess11 3 hours ago | parent | prev | next [-]

"So I asked Claude to make me a video game — a command center where I do the port myself, step by step, watching the visible effects and the file tree evolve. It produced a UI where I click buttons to run the port step by step, with my old site and new site running side by side."

It's excruciating that this person is so close to reinventing moldable development and just keeps on skipping around it.

Yes, you should build tools that answer questions about your code, runtimes and systems. You should have tools that trivially allow you to incrementally and very immediately develop tools for inspection and getting clear answers. Going a roundabout way through some non-deterministic database to try and get there seems like a waste.

runarberg 40 minutes ago | parent | prev | next [-]

I hate these X is the new bottleneck.

Coding was never a bottleneck, except when it was, and when it was, it still is.

Understanding is not a new bottleneck, except when it is, and when it is, it always was.

Do other industries do this? When somebody brings a nail gun to a framing job do carpenters say: “hammering was never a bottleneck” or do they say: “measuring is the new bottleneck”? The answer is neither. And in fact my analogy is flawed, we are talking about cabinet makers who just went to IKEA bought a ready made set in flat packaging and are now proudly claiming that “assembly is the new bottleneck”.

There was no single bottleneck to programing, and there is no single bottleneck to programing. If you have to pick one, user demand is perhaps the only real bottlneck. Creating software that users saw value in using is just as hard with AI or without it (arguably harder with AI... when all you have is a hammer and all that).

TFA almost reaches this conclusion at the end when they claim (in speech pattern which is suspiciously AI-like): “The point was always to augment, not just automate.”. If we are augmenting the user experience we are doing a good job and people may actually use the software we write... if no, well it doesn’t matter how well we understand or how fast we write the code (or have AI write it for us).

threethirtytwo 4 hours ago | parent | prev | next [-]

This is a temporary bottleneck. AI is moving so fast that this will change. Wait six months and this article is no longer relevant.

About a year ago most people were still typing code. Having an agent do ALL code was crazy.

Within a year or two years at most, a lot of people will stop trying to understand code. The onus will shift to testing and QAing.

I know this is hard to hear but that’s the trendline. That’s where all of this is converging. Everyone’s to busy trying to lock themselves down as an expert of the new “paradigm” but it’s all moving so fast that the paradigm now won’t be the paradigm of tomorrow.

elendilm 5 hours ago | parent | prev | next [-]

Understanding is expensive. And hence valuable.

LLMs usually points to the most idiotic future trajectory on my work, and I have to curse it inorder to let it keep up with my refined understanding.

But what else would one expect from a probabilistic weighted next token predictor, other than to conduct probabilistic search which are 99.99% deadends.

But LLMs can pave the way towards constructing resilient and correct architecture which can be iterated fast by a human.

Architecture and determinism is where my money is in.

jbdamask 5 hours ago | parent | prev [-]

pfft...I'm way past understanding

ch4s3 5 hours ago | parent [-]

Overstanding is the new horizon

stronglikedan 5 hours ago | parent | next [-]

That's already been co-opted by the sovereign citizen movement, so use with caution lest you be judged for it.

layer8 3 hours ago | parent | prev [-]

You have to overstand before you can overwalk.