Unpacking Elixir - IoT & Embedded with Nerves
I got into Elixir via this lovely project. Let’s talk hardware :)
https://underjord.io/unpacking-elixir-iot-embedded-nerves.html
Binary pattern matching <<1::1, 0::1, 1::1>>
I wrote a post about the basics and more advanced aspects of binary pattern matching in Elixir.
Thinking Elixir 199: Websockets' Late Hero and Elixir's Fresh Updates
Episode 199 of Thinking Elixir. In this episode, we talk about the eagerly awaited Elixir 1.17.0-dev changelog, the exciting ExDoc v0.32 release, and the slightly amusing declaration of Cloudflare playing the websocket hero – about 9 years after Phoenix neatly demoed 2 million concurrent connections to the world. We also explore potential performance improvements with Ecto’s support for unlogged tables and how PragProg’s new Elixir book is shaping up as a must-read for DevOps enthusiasts. But that’s not all, we also touch on the launch of a constraint solver in Elixir, a nifty Livebook visualization tip, and more! Plus, don’t miss out as Mark, Tyler, and David also share insights into their current projects, ranging from tackling Elixir mock libraries to the latest in the tech conference scene and educational initiatives in the Erlang ecosystem.
HighlanderPG: Use Postgres Advisory Locks to run a process just once in your cluster
I released HighlanderPG this week to solve the problem “how to run a process on just one node”. It is a follow-up / sister library to the Highlander library and it uses Postgres Advisory Locks.
Generate PDFs of Pages Behind Auth
The big wigs want PDFs. and Lots of them. Unfortunately, lots of the good info is behind authentication. How can we render a PDF of a page behind Auth?
What’s the fix? About 10 lines of Elixir!
The post: https://johnelmlabs.com/posts/pdf-behind-authentication
The tweet: https://x.com/JohnElmLabs/status/1779887067482185746
Thinking Elixir 198: Cade Gets the Last Word
Episode 198 of Thinking Elixir. This week’s show covers exciting updates in the Elixir world, including the peek at what’s coming with Elixir v1.17.0’s new “Duration” and “shift” features. We’ll also dive into the impressive Kino Benchee integration for Livebook, showcasing benchmarking visualizations. Not to be missed is the release of a fitting Phoenix emoji 🐦🔥 that’s set to ignite your dev conversations, as well as the announcement of Ash Framework’s v3 Release Candidate. Amidst these powerful tools and features, there’s an essential shift in our hosting lineup; Cade will discuss his decision to step back from the show due to the arrival of a new member in the family. Make sure to tune in for these stories, valuable Elixir tips, intriguing alternatives to Redis, and more!
Elixir Streams |> 2 Helpers to Keep Your Pipelines Flowing! 😎
Elixir code tends to be pipe-friendly. But sometimes that fails. You have a pesky break in your pipeline!
Here are 2 helpers that can help you keep your pipeline flowing!
👉 Elixir Streams |> 2 Helpers to Keep Your Pipelines Flowing! 😎
Thinking Elixir News 197
Episode 197 of Thinking Elixir. In this episode, we’re diving into the fascinating world of at-home AI with a ready-to-deploy project harnessing Bumblebee and Fly GPUs, unraveling the tale of how an Xz backdoor catastrophe was narrowly sidestepped, and highlighting the power of customizing your Elixir IEx environment. We’ll also touch upon the eager anticipation for ElixirConf EU, taking place in Lisbon, where innovations in vehicular tech meet Elixir, and the upcoming NervesConf US – a prime event for embedded systems enthusiasts. Tune in for these buzzworthy topics and more!
Segregate Responsibilities with Elixir Commanded
Explore how Elixir’s Commanded library revolutionizes application development through CQRS and Event Sourcing
https://curiosum.com/blog/segregate-responsibilities-with-elixir-commanded
Trainings at GigCityElixir 2024
Two excellent trainings at the GCE conference this year on May 9th-
Ash 3.0: The Fast Track to Full Stack (Trainers: Zach Daniel, Josh Price)
and
Effective Teaching and Training Practices for Software Developers (Trainers: Andrew Ek and Ruth Kohtz Ek)
Head to www.gigcityelixir.com for details and tickets.
Garmin API Client
Library for interacting with Garmin’s API client. Fetch activities, steps, and more. There’s a video in README of me using it in #LiveBook.
Elixir Streams |> 🤔 and/or Vs. &&/||. Which to use?
Someone recently asked me which to use: and
/or
OR &&
/||
?
Decided to make a short video about it.
Though they’re similar in many ways, they’re not the same! Here are some useful differences and some pitfalls. 👇
Nerves Meetup
The next Nerves embedded systems meetup is Wednesday, April 24th! This will be a social gathering to hang out with other Elixir/embedded engineers, share projects, ask questions, and get help! RSVP here:
Elixir + Phoenix: How to Raise Custom HTTP Error Responses in Your REST API
This blog post shows how, by adding a few lines of code, you can return a custom HTTP error response (with status code and custom message/payload) in your Elixir + Phoenix REST API, at any time in the request-response lifecycle.
https://www.nicholasmoen.com/blog/phoenix-custom-error-responses/
Phoenix admin frameworks - a very subjective evaluation
I needed to add a small admin interface to a webapp I’m making. See how I got there, and why I decided on using Kaffy in the end.
Elixir Enthusiasm: Insights from Senior Software Engineer Eduardo Borsa
Join Professor Adolfo Neto in this episode of the podcast as he delves into the world of Elixir with Eduardo Borsa, a Senior Software Engineer at Loomis, Sayles & Company. Eduardo shares his journey into software engineering and his early encounters with Elixir, highlighting the factors that sparked his interest in the language. As they discuss Eduardo’s role at Loomis, Sayles & Company, listeners gain insights into the projects Eduardo is involved in and the technologies he finds both exciting and challenging. Moreover, Eduardo explores the symbiotic relationship between industry work and education, drawing from his experiences with ELXPRO to provide a unique perspective. Throughout the conversation, Eduardo offers recommendations for staying abreast of developments in the field, from books and blogs to podcasts and courses.
Elixir development using Podman with VM in Parallels and Shared Folders
We’ve recently started to use containers instead of asdf on Mac for development again, and the setup I’m using is based on podman. We’ve chosen podman because from our perspective it’s easier to use in production when compared to docker, and we wanted to be closer to the production environment on our development machines as well. Since setting this up using Parallels instead of the default QEMU VM’s was rather involved, we’ve summarized all the necessary steps in a blog post for anyone else who’d like to check this setup out.
https://nobilisdata.com/blog/podman_using_parallels_and_shared_folders_for_elixir_development/
Interviewing Tips!
My fellow Elixir-devs (I’ve never grown too fond of “Alchemists”), I know this isn’t the most Elixir of all posts but I’ve seen many people make simple mistakes during hiring processes. And I want to help fix that, so I’ve written a series of posts geared towards programmers about interviewing that I hope y’all will find helpful!