🛩️ This is so cool: A Redditor living under SFO's takeoff path built a ceiling projection that maps every plane flying over their house in real time, using ADS-B, the open radio signal aircraft broadcast on 1090 MHz. Same feed as FlightRadar24, picked up with a cheap SDR dongle and beamed onto the ceiling.
A Dutch computer scientist gave one lecture in 1988 arguing that programming is unlike anything humans have ever tried to do before, and the reason most software on earth is broken is that we are still teaching it as if it were a hobby.
His name was Edsger Dijkstra. He won the Turing Award in 1972. He invented the shortest path algorithm that every GPS on earth still runs on.
He wrote the paper that killed the goto statement in modern programming languages.
He spent 50 years quietly being one of the most consequential thinkers in the entire history of computer science, and he was in a very bad mood by the time he stood up at the ACM Computer Science Conference in 1988 to deliver the lecture that almost nobody at the conference wanted to hear.
The lecture was called On the Cruelty of Really Teaching Computer Science.
It is now one of the most cited papers in the entire history of computing education. It was filed in his archive as EWD1036, handwritten in his careful fountain-pen calligraphy because he refused to use a typewriter and famously refused to use email for the rest of his life.
The argument was simple and uncomfortable.
Programming, Dijkstra said, is a radical novelty. Not a new tool. Not a new skill. Not a faster version of something humans already knew how to do. A genuinely new category of intellectual activity that has no real precedent in the entire history of the human species, and our brains have not been built to handle it.
Here is what he meant by that.
When a programmer writes a line of high-level code and presses run, that single line might trigger a billion operations at the level of the silicon.
The ratio between the abstraction you are working in and the physical events you are actually causing is roughly one billion to one. No engineer in history before computing ever had to reason about a system spanning that kind of ratio inside their own head.
A bridge builder reasons about steel beams and the physics of weight. A surgeon reasons about organs and the physics of tissue. A chemist reasons about molecules and the physics of bonds.
All of them are working inside ratios of physical scale where the largest and smallest things they need to think about are within a few orders of magnitude of each other.
A programmer routinely writes one line that orchestrates a billion physical events on a chip, and is expected to predict the behavior of all of them in advance.
Dijkstra argued that the human brain was simply not built for this. Every intuition we have evolved over hundreds of thousands of years comes from a world of medium-sized objects behaving in continuous ways. Computing is the opposite. It is discrete, not continuous.
A program that runs perfectly a billion times can crash on the billion-and-first iteration because of a single bit. A single character missing from a line of code can take down a power grid. There is no margin. There is no graceful degradation. The system either works or does not, and the only way to know is to actually run it.
This was the part of the lecture where Dijkstra made everyone in the room uncomfortable.
He said the way computer science was being taught in universities was a quiet disaster. Professors were teaching programming the way carpenters teach woodworking. With examples. With metaphors. With analogies to things students already understood. Files are like folders. Memory is like a desk. A function is like a recipe.
Dijkstra said this was actively making it harder for students to think clearly. The whole point of a radical novelty is that there is nothing in your past experience to compare it to.
The moment you start reaching for metaphors, you are smuggling in old intuitions that do not apply, and those intuitions will betray you the first time you try to reason about a system the metaphor was not built to describe.
His exact line was this: the usual way in which we plan today for tomorrow is in yesterday's vocabulary. And yesterday's vocabulary, he argued, was killing the field.
The reason most software is broken is downstream of this single misunderstanding. Programmers are taught to think of code as a craft. Something you get a feel for.
Something you pick up through practice. Something where intuition gets sharper with experience.
Dijkstra said this is exactly backwards. Programming is not a craft. It is closer to mathematics than to carpentry, and the moment you treat it as a craft, you guarantee that the software you produce will be full of the kind of bugs that craftsmanship cannot catch.
The fix, in his view, was to teach programming the way mathematics is taught. You should be able to prove your program correct before you run it.
You should reason about your code formally, the way a mathematician reasons about a theorem, not the way a carpenter feels their way through a joint. The students who learned this way, he said, would walk out of their classes with a kind of confidence that no amount of typing practice could produce.
The lecture was published in Communications of the ACM in 1989. The field did not listen. Universities kept teaching programming the same way.
Software kept getting bigger. Bugs kept compounding. By 2026, almost every piece of software on earth has known security vulnerabilities, undefined behaviors, and edge cases that nobody has ever proven safe. The doom that Dijkstra warned about in 1988 is now the default condition of the digital world we have built.
The deeper lesson is the one most readers miss the first time through.
Dijkstra was not just talking about software. He was making a much bigger point about how humans learn anything that is genuinely new. The instinct to translate the unfamiliar into the familiar is the most natural thing in the world.
It is also the single biggest obstacle to actually understanding something that has no precedent. If you keep reaching for analogies, you will never see the new thing clearly. You will only see your old framework projected onto it.
This is happening right now with AI. The same instinct that made people learn programming through metaphors of files and folders is making people understand large language models through metaphors of brains and people.
Almost every framework being used to describe AI in 2026 is borrowed from a previous domain. None of them quite fit. The few people who are actually building useful intuitions about how these systems work are the ones who have done what Dijkstra recommended forty years ago.
They have set down the old vocabulary. They have looked at the new thing on its own terms. They have accepted that the radical novelty is radical for a reason.
You are not slow. You were taught a discipline as if it were a hobby. The cruelty is real.
The fix is still available.
1969: When turning on the computer involved turning a key, checking oil levels, flicking 10-15 switches, and paging the boys in the generator room.
From BBC’s Tomorrow’s World, Feb 1969.
Trump administration buildings are now becoming infested with bed bugs.
Employees are reportedly becoming sick from the infestations in the building that houses the agency responsible for mitigating the spread of invasive pests in the US.
https://t.co/W3WsjC6hZ7
I shared this a year ago, and I wonder whether anyone still claims that AI does not “understand.” If you do, just listen to Ilya: he explains what understanding really means. Our brains work in much the same way as current AI systems when it comes to understanding language.
Two economists just published a mathematical proof that AI will destroy the economy.
Not might. Not could. Will — if nothing changes.
The paper is called "The AI Layoff Trap." Published March 2, 2026. Wharton School, University of Pennsylvania. Boston University. Peer reviewed. Mathematically modeled.
The conclusion is one sentence.
"At the limit, firms automate their way to boundless productivity and zero demand."
An economy that produces everything. And sells it to nobody.
Here is how you get there.
A company fires 500 workers and replaces them with AI. A competitor fires 700 to keep up. Another fires 1,000. Every company is behaving rationally. Every company is following the incentives correctly. And every company is building a trap for itself.
Because the workers who were fired were also customers.
When they lose their jobs faster than the economy can absorb them, they stop spending. Consumer demand falls. Companies respond by cutting costs — which means automating more workers — which means less spending — which means more falling demand — which means more automation.
The loop has no natural exit.
The researchers tested every proposed solution. Universal basic income. Capital income taxes. Worker equity participation. Upskilling programs. Corporate coordination agreements.
Every single one failed in the model.
The only intervention that worked: a Pigouvian automation tax — a per-task levy charged every time a company replaces a human with AI, forcing them to price in the demand they are destroying before they pull the trigger.
No government has implemented this. No major economy is seriously discussing it.
Meanwhile the numbers are already tracking the curve. 100,000 tech workers laid off in 2025. 92,000 more in the first months of 2026. Jack Dorsey fired half of Block's workforce and said publicly: "Within the next year, the majority of companies will reach the same conclusion."
Nobody is doing anything wrong. Companies are following their incentives perfectly. That is exactly the problem.
Rational behavior. At scale. Simultaneously. With no mechanism to stop it.
Two economists built the math. The math leads to one place.
Source: Falk & Tsoukalas · Wharton School + Boston University ·