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

    ElixirConf 2018 - Docker and OTP Friends or Foes - Daniel Azuma

    ElixirConf

    4 HN recommenders · recommended in 6 months, 2018–2023

    YouTube

    38:53 · 16K views · Sep 7, 2018

    Daniel Azuma's ElixirConf 2018 talk on whether Docker and OTP conflict. He shows they can coexist and uses Horde and DeltaCrdt, with a live tank-game demo, to keep state alive across container kills.

    Recommended for its practical strategy for preserving state on ephemeral containers, and for the live demo.

    Software Engineering & LanguagesFunctional programmingCloud, DevOps & reliabilityDistributed systems
    1. 35:15
      Solid Ground // Saša JurićEMPEX Conference14K views • 9 years ago
    2. 42:03
      The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019GOTO Conferences384K views • 7 years ago
    3. 1:01:46
      GigCityElixir23 - Bryan HunterGroxio10K views • 3 years ago
    4. 48:11
      ElixirConf 2021 - Isaac Yonemoto - Zig (heart) ElixirElixirConf3.9K views • 5 years ago
    5. 1:11:42
      ElixirConf 2023 - José Valim - The foundations of the Elixir type systemElixirConf38K views • 3 years ago
    6. 57:50
      ElixirConf 2018 - Keynote - Chris McCordElixirConf32K views • 8 years ago
    7. 1:11:55
      ElixirConf 2019 - Day 1 Morning Keynote - Brian Cardarella, Luke Imhoff, Paul SchoenfelderElixirConf8K views • 7 years ago
    8. 55:28
      Erlang Factory SF 2016 Keynote Phoenix and Elm – Making the Web FunctionalErlang Solutions23K views • 10 years ago
    9. 1:03:29
      Maybe Not - Rich HickeyClojureTV181K views • 7 years ago
    10. 41:06
      "Unison: a new distributed programming language" by Paul ChiusanoStrange Loop Conference45K views • 7 years ago
    11. 1:02:50
      The Language of the System - Rich HickeyClojureTV174K views • 13 years ago
    12. 25:06
      "Making Impossible States Impossible" by Richard Feldmanelm-conf63K views • 10 years ago
    13. 32:24
      RustLatam 2019 - Without Boats: Zero-Cost Async IORust Programming Language55K views • 7 years ago
    14. 7:48
      Conway's Game Of Life in APLDyalog236K views • 17 years ago
    15. 40:15
      Bringing Types to Elixir by Giuseppe Castagna and Guillaume Duboc | ElixirConf EU 2023Code Sync7K views • 3 years ago
    16. 1:14:52
      Effective Programs - 10 Years of Clojure - Rich HickeyClojureTV176K views • 9 years ago
    17. 11:32
      Erlang: The Movieuncertainyesterday175K views • 14 years ago
    18. 42:54
      Containers From Scratch • Liz Rice • GOTO 2018GOTO Conferences321K views • 8 years ago
    19. 31:11
      React.js Conf 2015 - Immutable Data and ReactMeta Developers159K views • 11 years ago
    20. 52:29
      "I See What You Mean" by Peter AlvaroStrange Loop Conference59K views • 11 years ago

    6 comments from Hacker News

    1. @qohenNov 2019· in “CRDT: Conflict-free replicated data type”

      Horde is indeed a really interesting Elixir library. It's based on the CRDT library, DeltaCrdt [0], also by Derek Kraan. He discusses DeltaCrdt here [1] and Horde here [2]. BTW, Horde is a distributed supervisor, i.e. analogous to what regular Elixir OTP supervisors do, except that it can restart processes on different cluster nodes. It also provides a distributed process registry. Daniel Azuma of Google gave a great 39 minute talk at ElixirConf 2018, "Docker and OTP: Friends or Foes?" [3], where he shows Horde (and DeltaCrdt) in action to keep a multi-player tank video game going while the Docker container it's running in gets killed and and the Elixir processes get respawned on another container. The state is persisted across Elixir nodes in other containers in an instance of DeltaCrdt. (Again, the talk is really good -- if the above sounds interesting, you'll want to check it out [3]). [0] [LINK] [1] [LINK] [2] [LINK] [3] this video

      Strongly recommendsView on HN
    2. @dnauticsFeb 2020· in “My favorite Erlang program (2013)”

      Honestly, in most scenarios, you kill the vm and let it restart with new code (just like you would in a kubernetes pod, and in fact using kubernetes pods with BEAM languages is also a valid strategy). If you must keep some state preserved, there's even ways to do it without erlang's hot code reloading strategies, I would recommend watching Dan Azuma's fantastic video (stick around for the live demo): this video

      Strongly recommendsView on HN
    3. @dnauticsJul 2020· in “An Introduction to Conflict-Free Replicated Data Types”

      In the elixir community CRDTs are well known for various HA; AP distributed state strategies, Phoenix Presence uses CRDTs to track processes and broadcast them over pubsub channels. This makes it trivial to represent "user state" in chat rooms, Sophie DiBenedetto describes using it for writing a trivial chat app: [LINK] For something a bit wilder, you can track your state machines across a distributed cluster and be able to pass and preserve state across the cluster using CRDTs, as is done in Dan Azuma's (live) demo of a tank game: this video (worth it for the demo at 29m)

      RecommendsView on HN
    4. @h0l0cubeNov 2022· in “An animated introduction to Elixir”

      > you should store the state in the external system It's an old talk, but this one has a strategy for robustly persisting state across ephemeral containers. The example here is running a multiplayer game server while doing code updates etc. using Horde and CRDTs this video

      RecommendsView on HN
    5. @pg_botNov 2018· in “Phoenix 1.4.0 released”

      You can use Docker + containers with OTP, they are not mutually exclusive. Daniel Azuma gave a talk at the most recent Elixirconf about this subject.[0] [0]: this video

      RecommendsView on HN