Discover this podcast and so much more

Podcasts are free to enjoy without a subscription. We also offer ebooks, audiobooks, and so much more for just $11.99/month.

Eric Meadows Jönsson on Hex and Working with Elixir

Eric Meadows Jönsson on Hex and Working with Elixir

FromElixir Wizards


Eric Meadows Jönsson on Hex and Working with Elixir

FromElixir Wizards

ratings:
Length:
37 minutes
Released:
Jan 2, 2020
Format:
Podcast episode

Description

We are happy to be joined in this episode by Eric Meadows Jönsson, creator of the hexpm package manager, and an amazing resource who works tirelessly to build the Elixir community. Eric presently works at Brex and was part of the core team at Forza previously. In keeping with our current topic of all things working with Elixir, Eric takes a deep dive into the work he is doing to optimize various interfaces at Brex. He gives us the rundown on the static compile-time checking project he is working on, talking about his aims to build in different warnings and what we can expect from the new release in that regard. You’ll also hear about Eric’s journey learning Elixir and how he had to change his OOP mindset when he got introduced to functional programming at university. He shares the story behind hexpm and Mint, his thoughts about the future of Hex, and some of the processes around accessing the private repositories on its website. We also hear more about Eric’s hiring procedure while working at Forza, how he teaches functional programming to students at ElixirConf, and some of the major performance bottlenecks he experiences using Hex. Tap into the incredible resource that is Eric and hear more about how you can link with him online to learn further in the future by tuning in!
Key Points From This Episode:
Jose Valim, the Ecto library, and Eric’s journey with Elixir since 2012 at a coding camp.
Early-stage static compile-time checks that Eric is adding to the compiler at Brex.
Whether the static compile-time checks Eric is adding constitute a type system or not.
Static compile-time checks in the current system such as undefined function warnings.
Features of the new static compile-time check release: refactored checks, etc.
Currently, these checks happen at compile-time, or when Elixir compiles into the byte code.
Whether these checks will move into BEAM: currently it’s in Elixir and at an early stage.
The Erlang compiler already does type inference during compilation.
Eric’s Erlang proficiency and why he had to brush up on it through using Elixir.
What makes Eric helpful with Hex: his debugging skills and availability to answer questions.
How Eric got started with Hex adding an intake for Git packages.
The story behind Hex regarding ties to Elixir and Devinus from Pool Boy.
Todd’s perspective on Eric as a smart and nice mentor who sleeps very little.
Changes that Eric sees happening in Elixir.
Hex will no longer support older Elixir versions so that it can enable better maintenance.
Another change will be a refactoring of the resolution version algorithm.
Security-related updates that Todd has been working on.
Private versus public repositories on the hex.pm website.
Hiring challenges at Forza and how Eric found the right team out of scarce people.
Eric looks for people who love being programmers and have a passion for learning.
Tactics Eric uses to train functional programming such as hosting ElixirConf workshops.
Important fundamentals in functional programming: using data structures to model data, etc.
Differences between functional and object-oriented programming: data vs classes.
The role of types in Eric coming to understand functional programming better.
Performance bottlenecks in Hex such as dependency resolution.
How every package manager/resolver compromises, exemplified by NPM and Rebar3.
Origins of Mint: wanting http2 support for Hex, and more.
Links Mentioned in Today’s Episode:
SmartLogic — https://smartlogic.io/
Eric Meadows Jönsson on GitHub – https://github.com/ericmj
Eric Meadows Jönsson on Hexpm — https://hex.pm/users/ericmj
Brex — https://brex.com/
Todd Resudek on LinkedIn — https://www.linkedin.com/in/toddresudek
Justus Eapen on LinkedIn — https://www.linkedin.com/in/justuseapen/
Eric Oestreich on LinkedIn — https://www.linkedin.com/in/eric-oestreich-8b55aab/
hexpm on GitHub — https://github.com/hexpm
Google Summer of Code — https://summerofcode.withgoogle.com/
Jose Valim on GitHib — https://github.com/jo
Released:
Jan 2, 2020
Format:
Podcast episode

Titles in the series (100)

Elixir Wizards is an interview-style podcast for anyone interested in functional programming and the Elixir Programming Language. Hosted by SmartLogic engineers Sundi Myint, Owen Bickford, Bilal Hankins, and Dan Ivovich, this show features in-depth discussions with some of the brightest minds in the industry, discussing training and documentation in Phoenix LiveView, the evolution of programming languages, Erlang VM, and more. In the current season, we're celebrating a decade of Elixir and exploring what the next ten years hold for this powerful language. With expert insights from guests including José Valim, Hugo Baraúna, and Saša Juric, we discuss emerging trends in cyber security, cloud infrastructure, web transports, machine learning, static vs dynamic types, and what the future might hold for Elixir developers. Learn more about how SmartLogic uses Phoenix and Elixir. (https://smartlogic.io/phoenix-and-elixir?utm_source=podcast)