Software is in Decline - Jonathan Blow
gamedev cuts1 HN recommender · recommended in 1 month, 2023–2026
talk · general · evergreen · 2023–2026 on HN
A ten-minute clip from Jonathan Blow's talk on preventing the collapse of civilization, arguing that software quality and the knowledge to build it are in decline.
Pulled out in threads about declining software quality, though some commenters distrust Blow's claims about game and web development.
Up next
2 mo on HNThe Implementation of Rewind in Braid
GDC Festival of Gaming
2 HN recommender · 2018–2023
16 mo on HNHow Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Видео с мероприятий {speach!
15 HN recommender · 2017–2025
11 mo on HNCppCon 2015: Andrei Alexandrescu “std::allocator...”
CppCon
7 HN recommender · 2017–2025
12 mo on HNPreventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)
DevGAMM
14 HN recommender · 2020–2025
10 mo on HN"Performance Matters" by Emery Berger
Strange Loop Conference
12 HN recommender · 2019–2025
11 mo on HNThe Thirty Million Line Problem
Molly Rocket
11 HN recommender · 2018–2024
10 mo on HNCppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”
CppCon
9 HN recommender · 2018–2026
10 mo on HNErlang Factory 2014 - That's 'Billion' with a 'B': Scaling to the Next Level at WhatsApp
Erlang Solutions
6 HN recommender · 2014–2022
9 mo on HNHow Crash Bandicoot Hacked The Original Playstation | War Stories | Ars Technica
Ars Technica
13 HN recommender · 2020–2026
9 mo on HN"How NOT to Measure Latency" by Gil Tene
Strange Loop Conference
9 HN recommender · 2015–2026
10 mo on HNRefterm Lecture Part 1 - Philosophies of Optimization
Molly Rocket
10 HN recommender · 2021–2026
9 mo on HNCppCon 2014: Mike Acton "Data-Oriented Design and C++"
CppCon
9 HN recommender · 2015–2026
4 comments from Hacker News
Reminds me of Jonathan Blow's talk: [Software is in Decline]( ▶ this video ). I think one reason why software is slow because managers don't allocate time to improve performance unless it gets worse than "good enough". For me that meant taking time to improve performance without being told or telling anyone how much time I spent trying to improve performance. When I used to work on Android in a large company my favorite low hanging fruit was looking where people used `Cursor.getColumnIndex(String columnName)`. People would call it inside a loop for every row in the query result. This was a surprisingly large time sink according to the profiler. Some developers just don't know or care about performance. I depended on a system that had very large list of banned/blocked IP addresses. This list was stored as a giant array of hundreds of `BigInteger`s. Each time the function was called to determine if an IP address was banned it would convert hundreds of strings into an array of `BigInteger` and then loop through the array checking against each one.
I actually felt the opposite. HN is full of AI crowd. > Let’s face it: by the time I manually ship version 1.0 of a product, the AI-assisted version could have been deployed 10x faster. By then, enough real-world feedback would have surfaced to identify the major issues, and tools like Claude Code would make it possible to fix and ship version 2.0 at an incredible pace. This precisely why I still have mixed reaction towards AI, even AI can produce functional code but might be filled with foot guns. I personally don't use AI (the full automated ones, e.g., Claude code, Codex, Cursor) but also I don't complain about people using AI. This also reminds me of Jonathan Blow's Software is in Decline[1] talk. Even when the humans coded everything, we gave up on quality a long ago for speed. So people complaining about low quality AI code is ignored. Simply put software engineering is not as rigorous as other engineering and most of the time when software ultimately fail there isn't major consequences. [1] ▶ this video
'Admitting his flaws' certainly isn't the way I would describe Jonathan Blow. Even ignoring his political turns, he's had a long history of saying some outright wrong stuff on game dev, web dev etc and being insufferably rude to anyone that tells him he's wrong. I could go off on how many ways he was wrong in his talk on Software Decline [1] or his many wrong takes on Linux. All of which he's doubled down on. [1] ▶ this video
▶ this video The webdev or JavaScript mentality of if it breaks, don't worry, we can fix it live strikes again.