QFM006: Elixir Reading List February 2024

Everything that I found interesting last month about the Elixir ecosystem

Matthew Sinclair
5 min readMar 3, 2024
Photo by Cristian Escobar on Unsplash

Quantum Fax Machine

Here is everything I found interesting about the Elixir programming ecosystem during February 2024.

This month’s reading list highlights include Merquery an interactive HTTP client integrated with Livebook, and the critique piece Elixir Nitpicks which offers an insightful comparison of Elixir with Rust, discussing the language’s strengths and weaknesses in error handling, state management, and more. The video Elixir: The Wickedly Awesome Batch and Stream Processing Language You Should Have in Your Toolbox illustrates Elixir’s powerful application in data engineering, particularly in stream and batch processing within Apple’s ads platform.

A common theme across February’s links is the emphasis on Elixir’s role in simplifying complex processes, whether through innovative tooling like PhoenixTest for HTTP requests and feature testing, or application in real-world healthcare scenarios such as Waterpark.

See the Slideshare version of the post below:

Or read on:

GitHub: acalejos/ merquery Merquery is an interactive HTTP client for Livebook, offering smart cells for handling HTTP requests and a mix task to generate pre-filled smart cells for each route in your router. It integrates with Livebook for serialisation and secret storage, aiming to be a learning tool for using Elixir HTTP clients. Hat tip: Thinking Elixir Podcast: 190 an always great source of what’s new in the Elixir ecosystem. #Merquery #Livebook #ElixirProgramming #HTTPClient #TechInnovation

Erlang: The Movie: This is a video demo of the Erlang programming language. It’s a little bit dated (at times, almost comically so) as if it were taken from a 1980s BBC documentary on “Amazing Future Technologies of The Future/s but it is interesting to see how early the creators of Erlang and the BEAM were to high-performance distributed computing. We have certainly come a long way from these early days to Elixir today. #Erlang #Programming #DistributedComputing #RetroTech #TechInnovation #WhatThePastThoughtTheFutureWouldLookLike

SOLID code isn’t flexible: This article discusses the constant changes in software development and the advantages of using Elixir, Erlang, and functional programming to build simpler systems, comparing these methods with traditional object-oriented design, as exemplified by SOLID. #SoftwareDevelopment #ElixirLang #FunctionalProgramming #CodeDesign #TechInnovation #SOLID

Shell scripting with Elixir: This article discusses the advantages of using Elixir for shell scripting, highlighting its versatility, the ease of debugging, testing, and adding dependencies. The author provides examples of their own scripts for various tasks and outlines a detailed template for creating more complex scripts in Elixir, emphasising the ecosystem’s developer-friendly features and efficient handling of common scripting needs. #Elixir #ShellScripting #Programming #DeveloperTools #CodeExamples

Elixir Nitpicks: This article offers a candid critique of Elixir through the author’s experience, comparing it primarily with Rust. It covers various aspects like error handling, state management, and imports, highlighting Elixir’s strengths and weaknesses. The author discusses the language’s dynamic typing, the challenges of error handling, the complexity of state management, and the nuances of using macros and domain-specific languages. Despite the critiques, the piece concludes with a positive outlook on Elixir’s ecosystem and its utility in web development. #Elixir #ProgrammingLanguages #SoftwareDevelopment #TechCritique #WebDevelopment

Introducing PhoenixTest: PhoenixTest offers a unified method for writing feature tests for both LiveView and static pages, streamlining navigation and interaction across page types without worrying about their underlying technology, thus simplifying testing processes from a user perspective. #PhoenixTest #Elixir #LiveView #SoftwareTesting #WebDevelopment

Philosophy of Elixir Design: Chris Keathley’s amusing and engaging presentation at GigCityElixir23 delves into the “Philosophy of Elixir Design”, offering insights into the rationale and strategic choices that shape the Elixir programming language’s development and architecture. #ElixirLang #SoftwareDesign #ProgrammingPhilosophy #GigCityElixir23 #TechTalks

Elixir: The Wickedly Awesome Batch and Stream Processing Language You Should Have in Your Toolbox The presentations showcase innovative uses of Elixir for data engineering challenges, illustrating its application in stream and batch processing, notably in Apple’s ads platform. Key highlights include leveraging Erlang’s distributed processes for data ingestion, integrating Elixir with Airflow and Kafka for scalable microservices, and showcasing real-world system implementations without needing prior Erlang or Elixir knowledge. And here is an Elixir Forum thread that discusses the video and Apple’s use of Elixir. #ElixirLang #DataEngineering #DistributedSystems #Microservices #RealWorldExamples

Waterpark: Transforming Healthcare with Distributed Actors: In this talk, Bryan Hunter discusses HCA’s Waterpark and its impressive development and astounding impact on healthcare and its significant contributions to enhancing healthcare efficiency and outcomes through innovative use of distributed actor systems. #HealthTech #DistributedSystems #Waterpark #HealthcareInnovation #GroxioTalks

Regards,
M@

[ED: If you’d like to sign up for this content as an email, click here to join the mailing list.]

--

--