HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

Jonathan Blow - Preventing the Collapse of Civilization (English only)

bus11 HN recommenders · recommended in 8 months, 2019-2023
YouTube
268K views · 7 years ago · talk · evergreen

Jonathan Blow's DevGAMM 2019 talk argues that software knowledge is being lost between generations and that growing layers of abstraction could lead to a decline in technological civilization.

A perennial HN reference for arguments that software is getting worse and that hard-won knowledge is disappearing.

Software architecture & designSoftware performance & optimizationFuturism & technology and society#jonathanblow#abstraction#softwarequality#gamedevelopment#knowledgeloss

20 comments from Hacker News

@gradschool2023 · in “Ask HN: What are the “lost arts” of our field?”

Well-known game developer Jonathan Blow has a lot to say about software and technology more generally being in decline due to skills being lost when older generations retire [1]. In my own experience, writing code with pointers in it used to be a skill expected of entry level programmers, and getting the hang of it was something of a rite of passage. Around the time Java started being used as a teaching language, it became best practice to rely on the language's standard libraries instead of rolling one's own linked list or whatever, and I instructed university students accordingly. As things have developed, the design effort put into Rust seems to imply that pointers are now regarded as a grand challenge problem. These days I don't tie my own neck ties any more but wear the clip-on kind because the knots have been developed and tested by experts. [1] ▶ this video

CitesView on HN
@PartiallyTyped2022 · in “Ask HN: Is software becoming less efficient?”

> software actually becoming less efficient? I'd argue that software is becoming worse in some ways. It seems that the acceptable tolerance is _very_ low these days, with most people are just shrugging issues off. Personally, I find this talk by Jonathan Blow to be rather inspiring: ▶ this video As for software becoming less efficient specifically, I'd say that it is, for example, relying on microservices for everything is probably not a good idea for most companies. Not everyone is AWS, nor do they need to be.

RecommendsView on HN
@rglover2022 · in “The End of Localhost”

No. This is the absolute wrong direction. In effect, you're giving a third-party absolute control over your code and your ability to work on it. You're also disconnecting the developer's mental model of how all of this stuff works (arguably why there's so much bad code floating around). Eventually, that will devolve to people not knowing how any of this works and the industry will collapse. It's an abstract line of argumentation related to this, but Jonathan Blow nailed it on this idea a few years back: ▶ this video

CitesView on HN
@SQueeeeeL2021 · in “How are Rome's monuments still standing?”

Jonathan Blow makes a bunch of great points about our simplified view of ancient people, versus the reality of their complex achievements which could only be brought about by lots of ingenuity and iterations. ▶ this video

RecommendsView on HN
@city412021 · in “The universe has already made almost all the stars it will ever make”

There's also the pessimistic view that we will actually lose progress and regress over time. Jonathan Blow has an interesting talk on the subject: ▶ this video

RecommendsView on HN
@tuckerconnelly2021 · in “React Renderer for Three.js”

While not incompatible with ECS, the DOM and this renderer go all-in on the javascript event-loop. You would have to write your own run loop, which executes the systems on every frame (ideally creating a DAG and executing in parallel while possible), and leave the event loop behind, with all the niceties like `onClick`, to go full ECS. Otherwise you'll create some Frankenstein monster of part ECS, part event-loop, part declarative React. Additionally, you can throw OOP in that mix as well, because Three.js has it's own whole OOP-style framework, that you're strapping declarative React on top of with this renderer. Reminds me of Jonathan Blow's talk on the end of civilization via endless layers of abstraction[1]. I really think, when it's ready, a Bevy[2]-style system either native or compiled to WASM with WebGPU will be ideal. And while I'm airing opinions (forgive me), I think writing shaders now is like SQL 30 years ago. Developers left optimizing difficult--according to them--SQL to database administrators by abstracting it away into ORMs. If history is any indicator, I think we'll be having the same arguments on Hacker News 30 years from now about 3D frameworks vs writing shaders directly as we're having now about ORMs vs writing SQL directly. [1] ▶ this video [2] link

CitesView on HN
@colllectorof2021 · in “Text editing hates you too (2019)”

>Nostalgia for the simplicity of the past ends up having ugly cultural implications. It's easy to say "let's go back to the time when things were simple"; it's a lot harder to say "folks in (e.g.) Israel shouldn't be able to type in their native language". This is a ridiculous mischaracterization of what Jonathan Blow was talking about. Here is the full presentation. Very much worth watching in its entirety and thinking about: ▶ this video

Strongly recommendsView on HN
@d_burfoot2021 · in “Crazy New Ideas”

I follow Blow's work and opinions quite closely. I am quite confident he was NOT criticizing Mighty specifically. Instead he was deploring the state of software engineering in general and web programming in particular. He is saying something like "I can't believe web engineering sucks so bad that a tool like Mighty actually makes sense". See his talk about preventing the end of civilization (!!): ▶ this video

RecommendsView on HN
@sjy2020 · in “The Centralized Internet Is Inevitable”

The author of this article, Samo Burja, also gave a great lecture in 2018 called “Civilization: Institutions, Knowledge and the Future” ( link ) which was mentioned in Jon Blow’s popular 2019 talk on software complexity, “Preventing the Collapse of Civilization” ( ▶ this video ). Burja’s talk is worth watching if you’re interested in his analysis of technology and history over an even longer period, and it provides some context for his remarks at the end of the article about intellectual institutions and the benefits of centralisation.

CitesView on HN
@akkartik2020 · in “Bootstrapping a Forth in 40 lines of Lua code (2008)”

You've probably seen Jonathan Blow's talk on the subject: ▶ this video I'm super interested in the subject: link . In the framework of this thread I focus on 2 of the 3 layers: problem and software. Hardware is out of scope. For now. Recently I've started thinking about BIOS (inspired by link ). So perhaps it's only a matter of time.

CitesView on HN
@ipi2020 · in “Ask HN: What Are the Big Problems?”

Quality Software : Yes, this is becoming more and more important and is overlooked at many levels. With more of our infrastructure, lives and the future of humanity in the hands of a bunch of software & hardware. We need to take things a tad bit more seriously. I believe this is not yet a big problem but it is becoming one. ▶ this video link

CitesView on HN
@chansiky2020 · in “AI writing code will make software engineers more valuable”

I agree with the sentiment that they only augment our capabilities, but then we end up with another problem, which is that the people who write the software are not fully aware of how it all works. Relevant to my argument is Jonathan Blow's `Preventing The collapse of Civilization` talk in which he discusses the disappearance of knowledge as generations pass: ▶ this video

CitesView on HN
@fagnerbrack2020 · in “Ask HN: Why is development so expensive?”

It costs so much mostly because programmers don't know how to write software cost-efficiently. As everybody follows the same path, VCs start to believe the cost is increasing when in fact it's the programmer's knowledge of cost-efficiency software design that is decreasing. Take a look at this: ▶ this video The costs to develop software are ridiculous and unrealistic. It turns out that if enough people act as ridiculous and unrealistic that becomes the new normal.

RecommendsView on HN
@perfect5th2020 · in “An Intro to Compilers (2017)”

I took a couple of compiler courses in university, and I think for the most part it made me a better programmer, mainly because it enforced understanding of how specific programming concepts and constructs are generally implemented. That, and a more intense look at the "heap of abstractions" you're generally working with when you write a higher-level language. I've always advocated that, if you want to really understand the tools you are using, you need to understand at least one level below the "surface abstraction" that you are working if. Even better if you can understand two or three levels down. There's a great talk from game developer Jonathan Blow [1] that describes how knowledge is lost "generationally" due to our lack of understanding of the black boxes we build things on top of. Not sure I 100% agree with his thoughts, but it's an interesting take. [1] ▶ this video

RecommendsView on HN
@spectramax2020 · in “Stop Perfecting, Start Shipping”

I am not so sure. This is a handwavy advise I always hear from contemporary business wizbangs, but I don't think it is objectively or universally true. Pedantic, careful and attention to detail, perfectionist products that just work without things breaking all the time are a pleasure to use from the standpoint of the customer. Figure out the implementation details, funding, motivation, etc. as an entrepreneur - shipping broken products to paying customers is something that I only see in the software industry. You don't buy a vacuum cleaner and expect to send half of the missing screws to the customer 6 months later. Hell, just 20 years ago when you bought your SEGA game cassette, it shipped as a final product. Not to be patched ever. Once its out to the factory, if you found a bug, tough luck. Yes, this analogy has its limits, but silicon valley mentality of this startup hustle is questionable. I recommend watching this incredible talk (it's about software) : ▶ this video

Strongly recommendsView on HN
@mrspeaker2020 · in “Amateur radio skills prove useful during bushfire emergencies”

Of course that's true - we probably don't need to start re-teaching the abacus... but I'm careful about getting too complacent. When everything has been going well for a long time it's tempting to think this will continue forever. But one, say, global pandemic can bring everything down - and some of our modern conveniences can be gone... possibly for centuries. An interesting (programming) talk by Jonathan Blow on the subject of losing knowledge! ▶ this video

RecommendsView on HN
@beefman2019 · in “Ask HN: Best Talks of 2019?”

The Soul of Erlang and Elixir, by Sasa Juric video: link HN discussion: link Preventing the Collapse of Civilization, by Jonathan Blow video: ▶ this video HN discussion: link

RecommendsView on HN
@franky472019 · in “How the invention of the book changed how people read”

> I'd expect the bar to preserve any specific content to be a lot lower than what we had in the past. At the moment, I agree. However, as older civilizations rose and fell, their knowledge lived on in physical support, directly accessible by anyone who was taught how to read the language, therefore the assumption was that "as long as the language lives on, books are a good archiving support". When our modern digital civilization falls [1], I'm not sure most of it would be transmittable through long-term electronic archiving supports that may be easily readable (as easily as a written book at least) by future civilizations, because not only the language has to live on, but the technology needed to access the content also has to function. I also agree that some contents will always be more relevant to "backup". As for everything that happened on Facebook (same can be said for most social platforms), it is likely to entirely disappear with the company. One could even see it as a parallel civilization, that has no means of self-preservation other than that of their ruling entity's business interest. [1] Jonathan Blow - Preventing the collapse of civilization - ▶ this video

CitesView on HN
@karlmcguire2019 · in “"DigitalOcean Killed Our Company"”

This reminds me of recent talk by Jonathan Blow [1], where he talks about how we've made very little progress in the field of software and anything that appears to be progress is just software leveraging better hardware. It's quite scary how low our standards have gotten. [1]: ▶ this video

CitesView on HN
@worldsayshi2019 · in “Docker is vulnerable to a symlink-race attack”

If you'd like to venture further into this rabbit hole I can recommend "Preventing the Collapse of Civilization": ▶ this video And "The Thirty Million Line Problem": link

RecommendsView on HN
Preventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)1:02:42

Preventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)

DevGAMM
315K views • 7 years ago
Software is in Decline - Jonathan Blow10:08

Software is in Decline - Jonathan Blow

gamedev cuts
179K views • 4 years ago
Jonathan Blow - How to program independent games -  CSUA Speech1:15:51

Jonathan Blow - How to program independent games - CSUA Speech

Alexandre Franco
190K views • 13 years ago
Reboot Develop 2017 - Jonathan Blow, Thekla Inc. / Making Game Programming Less Terrible1:02:49

Reboot Develop 2017 - Jonathan Blow, Thekla Inc. / Making Game Programming Less Terrible

Reboot Develop
112K views • 9 years ago
#Gamelab2018 - Jon Blow's Design decisions on creating Jai a new language for game programmers58:24

#Gamelab2018 - Jon Blow's Design decisions on creating Jai a new language for game programmers

Gamelab Conference
210K views • 8 years ago
Jonathan Blow: Game design: the medium is the message48:27

Jonathan Blow: Game design: the medium is the message

CreativeMornings HQ
119K views • 13 years ago
Talk: Video Games and the Future of Education2:44:28

Talk: Video Games and the Future of Education

Jonathan Blow
130K views • 6 years ago
Jonathan Blow: Video Games and the Human Condition1:44:09

Jonathan Blow: Video Games and the Human Condition

rubbermuck
158K views • 15 years ago
Jonathan Blow - Jai Demo and Design Explanation (KEYNOTE) - Updated1:13:00

Jonathan Blow - Jai Demo and Design Explanation (KEYNOTE) - Updated

LambdaConf
241K views • 1 year ago
Ideas about a new programming language for games.1:55:24

Ideas about a new programming language for games.

Jonathan Blow
530K views • 12 years ago
Collapse of Complex Societies by Dr. Joseph Tainter1:33:25

Collapse of Complex Societies by Dr. Joseph Tainter

vlada888
207K views • 14 years ago
Jonathan Blow on scripting languages9:30

Jonathan Blow on scripting languages

Jeru Sanders
185K views • 7 years ago
The Future is a Dead Mall - Decentraland and the Metaverse1:49:22

The Future is a Dead Mall - Decentraland and the Metaverse

Folding Ideas
8.2M views • 3 years ago
Bret Victor   The Future of Programming32:56

Bret Victor The Future of Programming

Joey Reid
305K views • 13 years ago
Alan Kay - Normal Considered Harmful1:07:26

Alan Kay - Normal Considered Harmful

powerfuloutlet
60K views • 14 years ago
Refterm Lecture Part 1 - Philosophies of Optimization18:41

Refterm Lecture Part 1 - Philosophies of Optimization

Molly Rocket
93K views • 5 years ago
Daniel Schmachtenberger on The Portal (with host Eric Weinstein), Ep. #027 - On Avoiding Apocalypses3:33:35

Daniel Schmachtenberger on The Portal (with host Eric Weinstein), Ep. #027 - On Avoiding Apocalypses

Eric Weinstein
389K views • 6 years ago
Old Is the New New • Kevlin Henney • GOTO 201850:23

Old Is the New New • Kevlin Henney • GOTO 2018

GOTO Conferences
125K views • 8 years ago
How technology loses out in companies, countries & continents and what to do about it36:43

How technology loses out in companies, countries & continents and what to do about it

bert hubert
13K views • 5 years ago
"The Mess We're In" by Joe Armstrong45:50

"The Mess We're In" by Joe Armstrong

Strange Loop Conference
398K views • 12 years ago