https://news.ycombinator.com/item?id=16184255 - Jan 19, 2018
https://news.ycombinator.com/item?id=22020495 - Jan 11, 2020
https://news.ycombinator.com/item?id=29429385 - Dec 3, 2021
https://news.ycombinator.com/item?id=38407851 - Nov 24, 2023
https://news.ycombinator.com/item?id=43087779 - Feb 21, 2025
Contemplating the details of a thing is really satisfying. At times I find myself sitting there and trying to decompose the astonishing amount of work, research, both evolutionary and revolutionary progress that has gone into reaching the current level of something. Buying myself a coffee and stare at the local ferry and acknowledge that someones life's work went into figuring out how to make the paint stick to metal.
Naturally the other point also sticks.. I too often get stuck on the details. :P
No matter how many data centers are built, it is impossible to accommodate that level of detail.
> As you learn, notice which details actually change how you think.
Lovely article. The older I get the more I appreciate this.
One point worth making: in many cases, after learning to see & appreciate the details, you gain the power to ignore the details that don't matter to you. This can be quite freeing.
But actually in the years since this was written, I do think the world has shifted. Doing things on a computer used to be really hard. Even just installing a framework or getting >python to call the right python on windows. Then install Django and get Django to work with nginx etc. It was just a lot of thankless, frustrating work to get from zero to 1%.
Aside from AI, the tools and packages and culture of computing has gotten better. But AI means you just get all the trivial but difficult stuff for free. And I think a lot of people who would have given up now make it through to see something work and they’ll feel the thrill of building something. It’s just better and easier now.
I visit every couple of days. It's REMARKABLE how fast things get done. One day, there were no walls. The next day, almost all of the walls were in place!
... and yet, at the same time, things take a long amount of time because reality has a surprising amount of detail. I haven't taken into account how much you have to do to frame a house. So incredible amounts of work get done, day after day, but 3/4 of them are things I had no idea needed to get done! Gazing up into the roof, the detail is incredible. The PSL beams, the brackets, the joists, the trusses, just.. EVERYTHING!
I thought the structural engineer's plans had an incredible amount of detail on them, and they do, but they also don't really say anything about _how_ to build the thing. How to put up the walls, how to hold them together temporarily, how to lift beams into place. In what order things can and should be done. That all just takes experience.
In the end I screwed some wall shelves in and called it good enough.
I think I'm drawn to programming because the fiddliness is tractable, and fixable.
In which other domain can I:
* introspect the relevant processes/state, step by step
* snapshot/undo
* fix niggles, once and for all, and for everyone; and get their fixes too
* probe and test my inputs and outputs, checking for quality. Get notified if a part changes in a way that breaks me.
And the only tool I need is a commodity general purpose PC.
When I try woodwork, or even electronics, I'm struck by much friction is in even simple tasks: tools, parts, lead time, safety, space, physical effort, cost, ...
https://contraptions.venkateshrao.com/p/truth-in-inconvenien...
I thought of this because this morning I was putting a small fence around some plants we want to protect from deer. The fence consisted of 20 sections (bought on Amazon), each about 24 inches wide. Our ground is like rock, and the fence was not that sturdy, so I had to pound a heavy spike into the ground to the depth of the fence posts, then pull the spike out and put each section's legs in, leaving room for the next section's leg to go into the same spike hole. I wanted to be sure I was putting each section in at the right position, lest I end up with a 12 inch gap and have to go back and adjust lots of sections. Long story short, I pretty much succeeded, although when it cools down I may adjust a few sections. But the problem was sort of like the stairs: I wanted an integer number of fence sections, each the same length, to exactly fit around the bushes---just like you want an integer number of vertical steps in a diagonal stair, each of the same (more or less standard) height.
Then we give it to someone else and it fails on their first or second attempt. They simply tried to use it in a way that we did not anticipate. It doesn't mean that we are dumb for not thinking of those possibilities; it just means that we did not think of every one of them.
It’s always a little disappointing to me when I think I’ve run into something unique but it ends up being user error or something.
> you could be intellectually stuck right at this very moment, with the evidence right in front of your face and you just can’t see it.
If you built the bookshelf in wood, it will be expanding, contracting and shifting over time with temperature and humidity variation throughout the day and season. And asymmetrically depending on the grain.
The straight right angles won't stay that way, and it's better to design such that they change in complementary ways, rather than remain perfect.
I can never look at staircases the same.
I expect there's a lot of detail that I'm unaware of relating to running a company (planning; risk; legal; ...) that might make a decision foolish to me, but make sense if given more context.
Infinite is a very big claim.
Being a founder has a lot of SRE like activities. Fortunately I used to actually like troubleshooting and hence love being a founder but I know a lot of people quit this path because of the "suprising amount of details" in reality!
Momentarily baffled, I realized that, despite appearances, the old frame was actually not square, in fact it was a parallelogram. I'd measured the height and width and assumed it was square. The previous (experienced) carpenter who'd built the doors I was replacing had clearly noticed this, and simply allowed for the misalignment in his design. He built perfectly square-appearing doors that mounted to the not-square frame. I had to go back and rework mine considerably for them to fit without looking ridiculous. They're still there and holding up well, but I also still think of this lesson on a regular basis in my day to day life now.
Then I studied abroad in Italy and realized the phenomenon was global.
Then I moved to San Francisco and realized it was a joke at this point.
Building codes are a joke!
Brunelleschi drank wine all day. Sure he basically invented pulleys and designed the sickest dome in human history, but he was a drunk and I can't blame him because architecture and all of math is a joke if you look close enough.
And also that’s why AI tools create mix reactions. A couple of months ago a post went viral which was really insightful on what I was originally drawn to cs.
AI doesn't deal with reality, it deals with tokens. This is why all those vibe-coded harnesses, little more than glue between various text IO interfaces, are several hundreds of thousands of source lines of code.
It's why a SOTA model took 100kSLoK to write a C compiler to compile one specific project.
It's why, when I asked for a simple markdown -> ansi escape codes converter (for terminal output) in Python, SOTA Claude and SOTA ChatGPT both give me +- 150 SLoC when my own LUT-based version came to under 10 lines of code + a LUT.
Reality has a surprising amount of detail, but LLMs don't exist in reality, they exist in a virtual world made up off tokens.
There's the Popper observation that any model of reality has zero chance to be true, since our models are finite, yet we're trying to describe a fractal reality. It's amazing how few levels of decomposition we need to go through to get something useful, like the stairs in the article (3 decomposition steps, as compared to thousands). If I were to never interact with reality and rely on pure reason alone, I would expect nothing humans ever do to work.
Abstraction and exploration are unreasonably effective.
The best I could do with woodworking in the end to approximate programming was live with wasting some timber, leave a lot of margin on the main cuts and size all the pieces as a whole.
With wood you are up against nature. With software you are up against corporations and comities.
There is an argument to be made for using humans, but I think we need humans to be more capable, more curious, more adaptive. LLMs are far better than the average human, but they are fundamentally inferior to the motivated human working with an LLM to augment themselves at the frontier.
When you hire someone to work on the stairs for you, you /hope/ they know what they're doing, especially if you don't have the skills yourself to judge their work. Same for an agent.
The walls aren't straight, either vertically or horizontally, and they're not even consistently wonky along any given axis.
So I installed uprights vertically, using transparent polycarbonate spacers of different depths at the attachment points[0]. I then installed shelves on the uprights and aligned them horizontally.
The variation is only +/- 6mm or so (for around 12mm variation across the 2.5m x 2.44m wall) but, if I hadn't done this, my shelves wouldn't be level, and wouldn't even be consistently non-level, so would have been awkward to install along the full length of the wall, would all be misaligned with eachother, and would have looked incredibly janky.
[0] In hindsight I wish I'd gone for these in different colours rather than just plain transparent, to make more of a feature of them. The walls are white so I think orange, blue, red, and yellow would have worked well.
- you genuinely learn once your assumptions about how a system works break, you realize it, try differently, validate, get a better model of that system
- your interfaces must remain permissive while providing feedback, namely you provide wiggle room then only once it behaves roughly as expected do you tighten then up
> Frames are made out of the details that seem important to you. The important details you haven’t noticed are invisible to you, and the details you have noticed seem completely obvious and you see right through them. This all makes makes it difficult to imagine how you could be missing something important.
Woodworking (the more constructive, furniture-making kind), rewards a deliberate, controlled process and it savagely penalizes mistakes. Those lessons transfer well to other disciplines. I’d have been a much better student if I’d learned wood working in high school.
You're up against your wood vendor. Anyone familiar with Home Depot "fresh from the tree" lumber has discovered this.
I have to point out stairs aren't typically made like this. That's a really complicated way to do it.
I really like this article though. Something that stuck out to me early in my career was a master trim carpenter who told me God is in the Details.
Carpenters constantly battle physics and make dozens of little micro adjustments with the end result being something that is pleasing to the eye that will stand the test of time.
Can't help but think that translates to anything in life no matter what you're doing. Mastering those micro adjustment, whatever your craft may be, takes things to a whole new level.
My landlord does not live in my building T_T
Wait, it's not even a person.
According to Zillow my apartment is owned by a cat with 47,000 followers
Also learned that lath and plaster needs some special consideration when screwing/nailing things for securement, as the lath (wood strips) could split, causing a subsequent crack in the plaster. Basically for screws or bigger nails, it’s a good idea to drill a small hole first to lessen the pressure, or do a bigger hole and use a spring bolt anchor.
I am assuming that you put the board at the correct angle on the floor, let it go over the upper entry floor, use a ruler to extend the line of the wall over to the board, trace that, cut it, then reverse the process but this time the part you just cut can go on the floor which will produce the correct angle on the wall?
And it pretty much is most times. For us. But indeed I did run into the "why would they use it like that though" scenario, where it fails. So I have to patch that usecase. At which point I go all "ok now it's really done" until another fringe usecase pops up and so on and so forth. And I did think about how sure I was it was bulletproof, humbling moment.
All information gets compressed. Even your own perception of reality gets compressed.
My dad emigrated from Colombia to North America when he was 18 looking looking for a better life. For my brother and I that meant a lot of standing outside in the cold. My dad’s preferred method of improving his lot was improving lots, and my brother and I were “voluntarily” recruited to help working on the buildings we owned.
That’s how I came to spend a substantial part of my teenage years replacing fences, digging trenches, and building flooring and sheds. And if there’s one thing I’ve learned from all this building, it’s that reality has a surprising amount of detail.
This turns out to explain why its so easy for people to end up intellectually stuck. Even when they’re literally the best in the world in their field.
Consider building some basement stairs for a moment. Stairs seem pretty simple at first, and at a high level they are simple, just two long, wide parallel boards (2” x 12” x 16’), some boards for the stairs and an angle bracket on each side to hold up each stair. But as you actually start building you’ll find there’s a surprising amount of nuance.
The first thing you’ll notice is that there are actually quite a few subtasks. Even at a high level, you have to cut both ends of the 2x12s at the correct angles; then screw in some u-brackets to the main floor to hold the stairs in place; then screw in the 2x12s into the u-brackets; then attach the angle brackets for the stairs; then screw in the stairs.
![]() |
Next you’ll notice that each of those steps above decomposes into several steps, some of which have some tricky details to them due to the properties of the materials and task and the limitations of yourself and your tools.
The first problem you’ll encounter is that cutting your 2x12s to the right angle is a bit complicated because there’s no obvious way to trace the correct angles. You can either get creative (there is a way to trace it), or you can bust out your trig book and figure out how to calculate the angle and position of the cuts.
You’ll probably also want to look up what are reasonable angles for stairs. What looks reasonable when you’re cutting and what feels safe can be different. Also, you’re probably going to want to attach a guide for your circular saw when cutting the angle on the 2x12s because the cut has to be pretty straight.
When you’re ready to you will quickly find that getting the stair boards at all the same angle is non-trivial. You’re going to need something that can give you an angle to the main board very consistently. Once you have that, and you’ve drawn your lines, you may be dismayed to discover that your straight looking board is not that straight. Lumber warps after it’s made because it was cut when it was new and wet and now it’s dryer, so no lumber is perfectly straight.
Once you’ve gone back to the lumber store and gotten some straighter 2x12s and redrawn your lines, you can start screwing in your brackets. Now you’ll learn that despite starting aligned with the lines you drew, after screwing them in, your angle brackets are no longer quite straight because the screws didn’t go in quite straight and now they tightly secure the bracket at the wrong angle. You can fix that by drilling guide holes first. Also you’ll have to move them an inch or so because it’s more or less impossible to get a screw to go in differently than it did the first time in the same hole.
Now you’re finally ready to screw in the stair boards. If your screws are longer than 2”, you’ll need different ones, otherwise they will poke out the top of the board and stab you in the foot.
At every step and every level there’s an abundance of detail with material consequences.
It’s tempting to think ‘So what?’ and dismiss these details as incidental or specific to stair carpentry. And they are specific to stair carpentry; that’s what makes them details. But the existence of a surprising number of meaningful details is not specific to stairs. Surprising detail is a near universal property of getting up close and personal with reality.
You can see this everywhere if you look. For example, you’ve probably had the experience of doing something for the first time, maybe growing vegetables or using a Haskell package for the first time, and being frustrated by how many annoying snags there were. Then you got more practice and then you told yourself ‘man, it was so simple all along, I don’t know why I had so much trouble’. We run into a fundamental property of the universe and mistake it for a personal failing.
If you’re a programmer, you might think that the fiddliness of programming is a special feature of programming, but really it’s that everything is fiddly, but you only notice the fiddliness when you’re new, and in programming you do new things more often.
You might think the fiddly detailiness of things is limited to human centric domains, and that physics itself is simple and elegant. That’s true in some sense – the physical laws themselves tend to be quite simple – but the manifestation of those laws is often complex and counterintuitive.
Consider the boiling of water. That’s straightforward, water boils at 100 °C, right?
Well the stairs seemed simple too, so let’s double check.
Put yourself in the shoes of someone at the start of the 1800’s, with only a crude, unmarked mercury thermometer, trying to figure the physics of temperature.
Go to your stove, put some water in a pot, start heating some water, and pay attention as it heats.
(I suggest actually doing this)
The first thing you’ll probably notice is a lot of small bubbles gathering on the surface of the pot. Is that boiling? The water’s not that hot yet; you can still even stick your finger in. Then the bubbles will appear faster and start rising, but they somehow seem ‘unboiling’. Then you’ll start to see little bubble storms in patches, and you start to hear a hissing noise. Is that Boiling? Sort of? It doesn’t really look like boiling. The bubble storms grow larger and start releasing bigger bubbles. Eventually the bubbles get big and the surface of the water grows turbulent as the bubbles begin to make it to the surface. Finally we seem to have reached real boiling. I guess this is the boiling point? That seems kind of weird, what were the things that happened earlier if not boiling.
To make matters worse, if you’d used a glass pot instead of a metal one, the water would boil at a higher temperature. If you cleaned the glass vessel with sulfuric acid, to remove any residue, you’d find that you can heat water substantially more before it boils and when it does boil it boils in little explosions of boiling and the temperature fluctuates unstably.
Worse still, if you trap a drop of water between two other liquids and heat it, you can raise the temperature to at least 300 °C with nothing happening. That kind of makes a mockery of the statement ‘water boils at 100 °C’.
It turns out that ‘boiling’ is a lot more complicated than you thought.
This surprising amount of detail is is not limited to “human” or “complicated” domains, it is a near universal property of everything from space travel to sewing, to your internal experience of your own mind.
Again, you might think ‘So what? I guess things are complicated but I can just notice the details as I run into them; no need to think specifically about this’. And if you are doing things that are relatively simple, things that humanity has been doing for a long time, this is often true. But if you’re trying to do difficult things, things which are not known to be possible, it is not true.
The more difficult your mission, the more details there will be that are critical to understand for success.
You might hope that these surprising details are irrelevant to your mission, but not so. Some of them will end up being key. Wood’s tendency to warp means it’s more accurate to trace a cut than to calculate its length and angle. The possibility of superheating liquids means it’s important to use a packed bed when boiling liquids in industrial processes lest your process be highly inefficient and unpredictable. The massive difference in weight between a rocket full of fuel and an empty one means that a reusable rocket can’t hover if it can’t throttle down to a very small fraction of its original thrust, which in turn means it must plan its trajectory very precisely to achieve 0 velocity at exactly the moment it reaches the ground.
![]() |
You might also hope that the important details will be obvious when you run into them, but not so. Such details aren’t automatically visible, even when you’re directly running up against them. Things can just seem messy and noisy instead. ‘Spirit’ thermometers, made using brandy and other liquors, were in common use in the early days of thermometry. They were even considered as a potential standard fluid for thermometers. It wasn’t until the careful work of Swiss physicist Jean-André De Luc in the 18th century that physicists realized that alcohol thermometers are highly nonlinear and highly variable depending on concentration, which is in turn hard to measure.
You’ve probably also had experiences where you were trying to do something and growing increasingly frustrated because it wasn’t working, and then finally, after some time you realize that your solution method can’t possibly work.
Another way to see that noticing the right details is hard, is that different people end up noticing different details. My brother and I once built a set of stairs for the garage with my dad, and we ran into the problem of determining where to cut the long boards so they lie at the correct angle. After struggling with the problem for a while (and I do mean struggling, a 16’ long board is heavy), we got to arguing. I remembered from trig that we could figure out angle so I wanted to go dig up my textbook and think about it. My dad said, ‘no, no, no, let’s just trace it’, insisting that we could figure out how to do it.
I kept arguing because I thought I was right. I felt really annoyed with him and he was annoyed with me. In retrospect, I think I saw the fundamental difficulty in what we were doing and I don’t think he appreciated it (look at the stairs picture and see if you can figure it out), he just heard ‘let’s draw some diagrams and compute the angle’ and didn’t think that was the solution, and if he had appreciated the thing that I saw I think he would have been more open to drawing some diagrams. But at the same time, he also understood that diagrams and math don’t account for the shape of the wood, which I did not appreciate. If we had been able to get these points across, we could have come to consensus. Drawing a diagram was probably a good idea, but computing the angle was probably not. Instead we stayed annoyed at each other for the next 3 hours.
Before you’ve noticed important details they are, of course, basically invisible. It’s hard to put your attention on them because you don’t even know what you’re looking for. But after you see them they quickly become so integrated into your intuitive models of the world that they become essentially transparent. Do you remember the insights that were crucial in learning to ride a bike or drive? How about the details and insights you have that led you to be good at the things you’re good at?
This means it’s really easy to get stuck. Stuck in your current way of seeing and thinking about things. Frames are made out of the details that seem important to you. The important details you haven’t noticed are invisible to you, and the details you have noticed seem completely obvious and you see right through them. This all makes makes it difficult to imagine how you could be missing something important.
That’s why if you ask an anti-climate change person (or a climate scientist) “what could convince you you were wrong?” you’ll likely get back an answer like “if it turned out all the data on my side was faked” or some other extremely strong requirement for evidence rather than “I would start doubting if I noticed numerous important mistakes in the details my side’s data and my colleagues didn’t want to talk about it”. The second case is much more likely than the first, but you’ll never see it if you’re not paying close attention.
If you’re trying to do impossible things, this effect should chill you to your bones. It means you could be intellectually stuck right at this very moment, with the evidence right in front of your face and you just can’t see it.
This problem is not easy to fix, but it’s not impossible either. I’ve mostly fixed it for myself. The direction for improvement is clear: seek detail you would not normally notice about the world. When you go for a walk, notice the unexpected detail in a flower or what the seams in the road imply about how the road was built. When you talk to someone who is smart but just seems so wrong, figure out what details seem important to them and why. In your work, notice how that meeting actually wouldn’t have accomplished much if Sarah hadn’t pointed out that one thing. As you learn, notice which details actually change how you think.
If you wish to not get stuck, seek to perceive what you have not yet perceived.
It's just that intuition doesn't scale and a lot of common cases can be handled with models, rules, definitions etc. People continue to be confused that just adding more rules eventually solves reality but it never has anywhere for anything so continuing to believe it will is wild
It's not the codes, but the physics. The first two years after a building is build, it will change it's geometry until it settles. That happens because building has a significant weight and the earth under the building was unsettled, and now is under a pressure.
Not very noticeable in a light weight houses, but even small brick one-family house will do that.
Building codes account for that, but it's better and significantly cheaper to build that way then to build a totally rigid structure. Rigid is brittle.
Hate hate hate hate hate
Woodworking was part of my first 3 years of high school, but it was mainly about learning safety and tool usage and not planning, estimating, selecting or purchasing timber.
These days I only want to go to the lumberyard once for a project. Learnt the hard way on my first project that you need to take the time to carefully select the timber - checking straightness, matching grain and also colour before I started. Major hassle and waste of time to have to go back to swap boards.
Yes.
> Or just in a virtual world made up of sensory signals?
No, definitely reality. Things affect my thought whether I sense them or not.
Reality is by definition our physical reality, which is about an infinite number of levels more detailed than the, you know, _virtual_ digital world computers exist in.
Whatever world we construct for LLMs, no matter how detailed we make it, will always be a blocky projection of the real domain onto a virtual one.
It follows then that any insight gained in the virtual world is at best a rough approximation which can be quite useful at times but also utterly faulty on occasion.
How often it is useful vs. wrong is (partially) a function of how complete the real-to-virtual approximation for a given domain.
Certain domains, given their limited degrees of freedom, can be quite accurately modeled, such as a subway map.
But many domains cannot, and it's important to be aware of that inherent limitation in digital models including but not limited to LLM """reasoning"""
I think the more interesting corollary of this article is that if we're living in a simulation, it's an impossibly, improbably detailed one. I really want some compute time on the HPC that's running it.
Here's the thing we - a flat full of nerdy tech students - never figured out.
The walls in two of the bedrooms (including mine) were perfectly plumb, all four walls straight. Bookshelves lined up nicely with the walls. The floor was flat and level.
But the room was 10cm narrower at the ceiling.
"We" (the 8 billion) have made some insanely great abstractions or puzzle pieces to work with. There is just an insane amount of work that goes into even elementary things to get the world to where it works this way.
What do you mean? That's exactly how most residential stairs are built. Two to four stringers with risers and thread boards attached to them.
Granted, they will draw a template on one board and copy it to the others to make the stringers quickly well before mounting anything.
Sure enough, several had cracks at the ends, knots in poor places, and other things that, had I bought it, would have caused me trouble.
I can be a naive person in that I assume good faith. I would never knowingly sell something poor quality to someone else. I had assumed because I was being sold it, it was okay.
I don't know exactly why but I never really understood this argument. Might be some kind of control thing? Because for me it's pretty simple, it's basically free to give access to reality. Just add "sensory organs" as it were. I can argue you can make them perceive reality even better than we (humans) do, just enlarge the audio/video spectrums. Bam...more reality. The whole point of the argument is we're missing information.
Again, I get the need for controlling the environment for what LLM/AI/AGI/whatever will be, but that will always cost more than giving them access to like...reality. Same reason I don't really believe in the whole simulation argument, it's just more expensive all around, loses resolution, let alone control. I don't doubt there will be some people that would indulge in neverending hedonism but not all people. You need to give up control for that.
You add a serious amount of un needed complexity by using brackets described.
The rise is typically the only thing you need to know in order to calculate all other dimensions of the stairs.
The main difference between how the author describes the construction is stringers get cut, this description skips that step.
Things like tread depth, riser height can be modified too if needed.
First, reality is continuous whereas the digital world is discrete.
Second, data in the real world is many orders of magnitude more detailed than what we're able to model with today's computers.
I dunno what you mean by "free". The model is trained on text. To "give" the model sensory organs it would need to be trained on those sensory organs.
Current models can predict text, because that's what the weights represent. Models with sensory organs will need to be trained on the output of those sensory organs.
That sounds close to impossible in the foreseeable future.
I know about wood quality and I have deliberately bought higher and lower grade wood. But even so, quality varies greatly.
Reality is free. You don't have to waste any resources to model it, you just need to capture it.
>The model is trained on text.
See in my previous reply:
>LLM/AI/AGI/whatever will be
LLMs don't even have a sense of time because they work differently to a human brain.