Elixir Wizards is an interview-format podcast, focused on engineers who use the Elixir programming language. Initially launched in early 2019, each season focuses on a specific topic or topics, with each interview focusing on the guest's experience and opinions on the topic. Elixir Wizards is hosted by Eric Oestrich and Sundi Myint of SmartLogic, a dev shop that’s been building custom software since 2005 and running Elixir applications in production since 2015. Learn more about how SmartLogic uses Phoenix and Elixir. (https://smartlogic.io/phoenix-and-elixir?utm_source=podcast)
Robert Virding on the Roots of Erlang
Welcome to a brand-spanking-new season of Elixir Wizards! This time around we will be focussing on the magic of the BEAM, so get ready for an exciting journey into new territories filled with mystery and power! To kick things off in this inaugural episode we are joined by a true legend in the space of Erlang, Elixir, and the BEAM. Robert Virding is one of the three founding members of Erlang, and his unrivaled intimacy with the language and its related subjects is truly inspiring and informative. We feel like we could fill many more episodes just hearing Robert unpack the history he has been involved in, but we do manage to cover a lot in this show, touching on Robert's career arcs, the other founders of Erlang, the connection to Ericsson and the bridge to Elixir, as well as much more. Robert also shares some insight into the BEAM and the idea of a virtual machine, broaching these sometimes misunderstood concepts with simplicity and clarity. We talk about magic, hurdles, best practices, and the future of community, with Robert sharing his experiences working on Erlog, LFE, and much more. Make sure to join us for this episode and stay tuned for the rest of another great season!
Key Points From This Episode:
- Robert's description of the Erlang Rationale document and why it was important to create it.
- Background information on the founding three members of Erlang and how they came together.
- Training and early career as a computer scientist; Robert's background before Ericsson.
- The roots of the Erlang name, and how Robert first came across and connected with it.
- The simplest definition of the BEAM, Bogdan’s Erlang Abstract Machine!
- Unpacking the application of a virtual machine and the connection between Erlang and BEAM.
- Information on Core Erlang and how it works within the compiler.
- LFE or Lisp-Flavored Erlang and the decisions that were made to keep it straightforward.
- Hurdles to learning Erlang and Robert's thoughts on getting over these.
- Weighing the usefulness of 'magic' and the caution with which Robert approaches it.
- Best practices for Erlang and Elixir according to Robert; the biggest shifts necessary for success.
- Robert's first feelings about the arrival of Elixir and the questions it raised for him.
- The motivation behind Robert's work on Erlog!
- Reflections on the Erlang movies that Ericsson produced and their evolution over time!
- The future of Erlang, its community, and the need for continued and increased collaboration.
- Why Robert wants to put more parentheses back in the mix!
Links Mentioned in Today’s Episode:
SmartLogic - https://smartlogic.io/
Robert Virding - https://codesync.global/speaker/robert-virding/
Robert Viriding on Twitter - https://twitter.com/rvirding?lang=en
The Erlang Rationale - https://elixirforum.com/t/the-erlang-rationale-by-robert-virding-pdf/35313
Prolog - https://www.swi-prolog.org/
Ericsson - https://www.ericsson.com/
Joe Armstrong - https://www.theguardian.com/education/2019/may/08/joe-armstrong-obituary
Mike Williams - https://codesync.global/speaker/mike-williams/
Fortran - https://fortran-lang.org/
Pascal - http://www.pascal-programming.info/index.php
VAX - https://www.computerhope.com/jargon/v/vax.htm
Franz Lisp - https://franz.com/products/allegro-common-lisp/acl_prolog.lhtml
Agner Krarup Erlang - https://mathshistory.st-andrews.ac.uk/Biographies/Erlang/
Bogumil Hausman - https://peoplepill.com/people/bogumil-hausman
LFE - https://lfe.io/
Erlang The Abstract Format - https://erlang.org/doc/apps/erts/absform.html
Core Erlang - https://blog.erlang.org/core-erlang-by-example/
Erlog - https://github.com/rvirding/erlog
Lua in Erlang - https://github.com/rvirding/luerl
Erlang: The Movie - https://elixirforum.com/t/erlang-the-movie/440
Monty Python - http://www.montypython.com/
Erlang Ecosystem Foundation - https://erlef.org/
A first look at the JIT - https://blog.erlang.org/a-first-look-at-the-jit/
Lisp Cycles - https://xkcd.com/297/
Creative Assembly - https://www.creative-assembly.com/home
Total War - https://www.totalwar.com/
World of Warcraft - https://worldofwarcraft.com/en-us/
Special Guest: Robert Virding.