Skip to content
HomeVideos
AllLongsCategoriesPlaylists
BooksBlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    Rant: Entity systems and the Rust borrow checker ... or something.

    Jonathan Blow

    3 HN recommenders · recommended in 14 months, 2018–2025

    YouTube

    1:01:51 · 304K views · Sep 14, 2018

    Jonathan Blow's hour-long livestreamed response to a RustConf 2018 closing keynote about entity systems in Rust. He argues that index-based entity systems amount to manual memory management that sidesteps the borrow checker, and he talks about friction for game developers.

    It is the standard citation in HN arguments over Rust for game development, the borrow checker and ECS designs, as a skeptical view from an experienced game developer.

    Software Engineering & LanguagesC, C++, Rust, Go & systems languagesGame programming & enginesProgramming language design
    1. 1:55:24
      Ideas about a new programming language for games.Jonathan Blow530K views • 12 years ago
    2. 42:30
      RustConf 2018 - Closing Keynote - Using Rust For Game Development by Catherine WestRust Programming Language152K views • 8 years ago
    3. 1:15:51
      Jonathan Blow - How to program independent games - CSUA SpeechAlexandre Franco190K views • 13 years ago
    4. 58:24
      #Gamelab2018 - Jon Blow's Design decisions on creating Jai a new language for game programmersGamelab Conference210K views • 8 years ago
    5. 9:30
      Jonathan Blow on scripting languagesJeru Sanders185K views • 7 years ago
    6. 1:04:04
      Overwatch Gameplay Architecture and NetcodeGDC Festival of Gaming196K views • 7 years ago
    7. 1:13:00
      Jonathan Blow - Jai Demo and Design Explanation (KEYNOTE) - UpdatedLambdaConf241K views • 1 year ago
    8. 1:05:59
      Data Oriented GUI in Rust by Raph Levien - Bay Area Rust MeetupRust Programming Language83K views • 8 years ago
    9. 48:46
      Rust's Journey to Async/AwaitInfoQ90K views • 6 years ago
    10. 52:54
      Rust at speed — building a fast concurrent databaseJon Gjengset225K views • 7 years ago
    11. 1:33:23
      Crust of Rust: Lifetime AnnotationsJon Gjengset299K views • 6 years ago
    12. 12:31
      OSCON 2010: Rob Pike, "Public Static Void"O'Reilly119K views • 16 years ago
    13. 32:24
      RustLatam 2019 - Without Boats: Zero-Cost Async IORust Programming Language55K views • 7 years ago
    14. 43:04
      "Stop Writing Dead Programs" by Jack Rusher (Strange Loop 2022)Strange Loop Conference468K views • 4 years ago
    15. 54:53
      Miguel de Icaza: Swift Godot: Fixing the Multi-million dollar mistake #GodotCon2023Godot Engine27K views • 2 years ago
    16. 23:12
      dotGo 2015 - Rob Pike - Simplicity is Complicateddotconferences172K views • 10 years ago
    17. 1:02:49
      Hacking with Andrew and Brad: tip.golang.orgThe Go Programming Language99K views • 11 years ago
    18. 3:03:54
      The Why, What, and How of Pinning in RustJon Gjengset87K views • 7 years ago
    19. 2:07:18
      Demo: Base language, compile-time executionJonathan Blow164K views • 12 years ago
    20. 51:27
      Google I/O 2012 - Go Concurrency PatternsGoogle for Developers894K views • 14 years ago

    15 comments from Hacker News

    1. @gravypodFeb 2020· in “Jonathan Blow on Rust”

      Pointers living through a render pass aren't the main use case he is interested in. It's a problem space that many engineers are familiar with so it's easy to talk about. Game developers have some very domain-specific problems that are less common outside of game engines. A more detailed description of his opinions are laid out here where he goes into much more detail about his experiences porting The Witness to mobile (I think): this video

      RecommendsView on HN
    2. @hertzratSep 2022· in “Unreal Rust”

      These discussions always remind me of some talks by Jonathan blow where he argues rust doesn’t solve the hard problems he needed it to. There are podcast episodes with better discussions, but the main one people link to seems to be this I haven’t used rust, but I sympathize with his problems with pointers and learned a lot from the various ways people try to solve them this video

      RecommendsView on HN
    3. @colundApr 2024· in “Leaving Rust gamedev after 3 years”

      I find that Jonathan Blow ranting about Rust game development here this video . He adds interesting perspectives to the discussio, how the language makes the Rust game developer resort to arrays and their so called Rust point of views.

      RecommendsView on HN
    4. @matthewkayinDec 2025· in “Jonathan Blow has spent the past decade designing 1,400 puzzles”

      > What features in Jai make it superior to C++ for writing games specifically? I know that Jonathan Blow can be abrasive and one-sided in his talks on programming, but I think we should be open-minded about Jai. Yes, he is making this language because he doesn't like C++, but you make it sound like he is hating on C++ just for the sake of it. I mean, is it really so hard to imagine that someone might not like something about C++? There are plenty of people who think we could have a better systems language, which is why we have seen languages like Rust, Zig, and Odin pop up. In Blow's case, he has said that he doesn't like Rust because he feels that satisfying the borrow-checker slows down iteration time[1], which is important especially in the early stages of game development when you are still experimenting with mechanics are where requirements and architecture are still very much subject to change. As far as what Jai offers, it seems his focus is on making a simple but powerful language (contrary to C++'s ever-growing bag-of-tricks), with fast compile times (less than 3 seconds on a full build of his new game), better build and dependency management (no more cmake), and powerful meta-programming features. In a talk on the language[2], he demos how he is able to use the language's meta-programming features to develop powerful code-analyzing and memory-analyzing tools. These tools, in particular, hint at his philosophy: lots of ideas in programming like RAII, garbage collecto

      CitesView on HN
    5. @arkushNov 2021· in “The Rust compiler has gotten faster again”

      The hvasilev's comment got flagged and I could not reply to it anymore, so I'll reply here (sorry) and copy-paste the hvasilev's comment verbatim below, for the sake of commenting on it's claims: --- Reality is not on the side of this language. 11 year old, has a very low adoption with virtually no jobs associated. ( [LINK] ) On the other hand if you search for "Rust" in the latest "Who wants to be hired?" thread, you will see it is quite popular with unemployed people. The reality is that the language has a lot of friction, the ergonomics are bad, the syntax is heavy and some poor decision making has been made there for a systems-level programming language. There are a lot of ideological traps in this industry and many people that fall for them. Why people are interested in ideologies and cults is beyond me. [ A screenshot: [LINK] ] --- <rant> Now my comments on the issues mentioned in the hvasilev's comment. > Reality is not on the side of this language. 11 year old, has a very low adoption with virtually no jobs associated. ( [LINK] ) Tiobe index is shit. The most flattering thing I've read about it states that it (poorly) depicts quantity of educational materials available online for particular programming language. Unfortunate naming of programming languages after letters of alphabet, symbols (++, #) and real-life stuff (like islands) doesn't help this rating either. That said, Rust isn't that popular and isn't growing much according to other better language ratings: 1.

      CitesView on HN