Curated content from the Elixir community
Elixir Radar logo

Elixir Radar Newsletter Issue #520

This issue is brought to you by Honeybadger ...

Error tracking, intelligent logging, and Just Enough APM™ in one tool.

Our founders Ben and Josh built Honeybadger to fix their own production headaches. Fourteen years later, they’re still shipping code and working directly with customers.

We don't stuff our products with irrelevant features or chase VC growth targets with aggressive sales tactics.

We build products for devs who build and support great web apps in production – just like us.

Articles

Git worktrees are handy for parallel work, but each fresh Mix project checkout means recompiling everything from scratch. Ryan Zidago shows how to cut setup time by 83% by cloning the deps and _build caches from an existing checkout and making builds relocatable.

German Velasco shares his diverge-then-converge pattern: spawn a few subagents that attack the same problem from different angles, then synthesize the best parts. He applies it to code review, bug fixing, and design.

A dead dependency blocking an upgrade is a familiar headache. Mike Zornek walks through removing Timex from a project using a shim: a small module covering just the functions actually used, verified by comparison tests.

Programming Nerves book - Sponsor

The book I'm working on with Alex Koutmos. Control LEDs, displays, and sensors. Build a production LiveView-powered kiosk. Beta version with 38% discount.

A GenServer handles one message at a time, so when handling gets slow, you get latency spikes that look inexplicable. Kiunye Araya explains how these bottlenecks happen in production and how to profile them with :observer and :recon.

Extract 10 bytes from a 10MB binary, and the 10MB may never leave memory. This is not a bug, it's an optimization. But sometimes you don't want that. Ntwali Heritier dives into why the BEAM works that way and how to diagnose with :recon if you want a copy instead of a reference.

Videos

If you've used Stripe's API, you know how nice their prefixed IDs (cus_ for customer) are. Adam Kirk talks about how Jump uses that pattern in Elixir and Ecto, including scanning every LiveView and API param for IDs to automatically catch IDOR vulnerabilities.

Job listings

8seats - Remote, Australia
We are looking for a Senior Backend Developer with deep expertise in Elixir and the BEAM VM to help us push the boundaries of what real-time messaging can look like at scale. You will own the architecture, performance and reliability of the services that power every conversation on the platform, from Phoenix Channels at the edge to the data layer that keeps everything consistent.

Events

September 10-11 / Chicago, USA & Virtual
September 30 - October 02 / Vanberg, Sweden
October 21-22 / Haarlem, Netherlands & Virtual
November 12-13 / Austin, USA
November 27-28 / Curitiba, Brazil & Virtual

Want to learn OTP and leverage the power of the BEAM?

Download the free chapters from "Elixir Patterns", the book I wrote with Alex Koutmos.

As always, thanks for reading Elixir Radar!

-- Hugo
Hugo face
Sent by Hugo Baraúna @ Elixir Radar
Av Paulista, 1636, São Paulo - SP, Brazil
If you wish to unsubscribe, you can click here