2. QFM006: Elixir Reading List February
2024
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.
Enjoy!
Key
: Mentions Elixir and related technologies
: Talks about the Elixir ecosystem in real-world use cases
: Talks about technical details of Elixir ecosystem components
: Using and working with Elixir ecosystem technologies in software
: Programming new Elixir technology concepts and implementations
Source: Image by Cristian Escobar on Unsplash
2
3. 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
3
4. 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
#WhatThePastThoughtTheFutureWould
LookLike
4
5. 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
5
6. 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
6
7. 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
7
8. 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
8
9. 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
9
10. 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
10
11. 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
11