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.

Michał Muskała on Ecto and jason – Elixir Internals

Michał Muskała on Ecto and jason – Elixir Internals

FromElixir Wizards


Michał Muskała on Ecto and jason – Elixir Internals

FromElixir Wizards

ratings:
Length:
28 minutes
Released:
Aug 29, 2019
Format:
Podcast episode

Description

Today on the show we are joined by Michal Muskala, who is currently a freelance software engineer and he is here to talk to us about his work on the Ecto and jason libraries. With Ecto we continue our journey into Elixir and Michal explain how he became involved in the project and the work he did on it. He explains a little of its inner workings, issues and what excited him about it initially. We then turn to jason, a widely popular library that Michal created for parsing JSON. Michal unpacks its particulars, differentiating for us between the driver and adapter and the lessons he learned working on them. The last bit of our conversation is spent talking about open source and Michal's commitment to its philosophy. We discuss making time to work on projects, buy in from employers and and why getting involved can be scary yet is so important! For all this and more, join us for this great episode!
Key Points From This Episode:
A little bit about Michal's work background and how he got started on Elixir.
The parts of Ecto that Michal worked on at Google Summer of Code.
Differentiating between the driver and the adapter; communicating with the database.
Structuring the code and what Michal would do differently now.
Creating jason, the default JSON parser and the impetus behind it.
Understanding lexing and tokenizing; largely the same thing with different names.
Macros on jason and forcing the VM to use optimizations in particular cases.
Performance on jason; how Michal achieved the speeds he did.
Michal's path to open source software and what followed his work in MongoDB.
Finding time to work on open source projects while employed.
BEAM, alternative implementations and why they are important.
Michal's call to action for our listeners!
And much more!
Links Mentioned in Today’s Episode:
SmartLogic — https://www.smartlogic.io/
Elixir — https://elixir-lang.org/
Michal Muskala — https://michal.muskala.eu/
Michal Muskala on Twitter — https://twitter.com/michalmuskala?lang=en
Ecto — https://hexdocs.pm/ecto/Ecto.html
jason — https://github.com/michalmuskala/jason
Google Summer of Code — https://summerofcode.withgoogle.com/
MondoDB — https://www.mongodb.com/
Erlang — https://www.erlang.org/
Binary Optimization in Erlang Documentation — https://rhye.org/post/erlang-binary-matching-performance/ (Please verify link)
BEAM — https://blog.stenmans.org/theBeamBook/
Erjang — https://jaxenter.com/introducing-erjang-erlang-for-the-jvm-108005.html
Atom VM — http://atomvm.sourceforge.net/ Special Guest: Michał Muskała.
Released:
Aug 29, 2019
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)