- GigaElixir Gazette
- Posts
- The Truth About AI Coding Tools
The Truth About AI Coding Tools
Why smart teams use streams instead of assigns for dynamic lists
Welcome to GigaElixir Gazette, your 5-minute digest of Elixir ecosystem news that actually matters 👋.
At Gigalixir, we're the only platform built specifically for Elixir/Phoenix apps. Our goal is to give you distributed clustering, remote console, and production news without the DevOps nightmare.
. WEEKLY PICKS .
🤖 Claude Code Quality Crisis Reveals the Real Problem:
Jon Stokes discovered his AI coding assistant wasn't degrading—he was. After blaming Claude for terrible output, he realized he'd gradually abandoned the disciplined process that made AI-assisted development work in the first place.
Most developers drift into treating AI as a junior programmer they can speak to in shorthand, but smart teams maintain rigorous processes—small iterations, close monitoring, and careful context management—that keep AI output consistently high-quality.
⚙️ Semaphore Reveals How Elixir Powers Thousands of CI/CD Pipelines:
Semaphore pulled back the curtain on Plumber, their Elixir-powered orchestration engine that manages thousands of CI/CD pipelines using finite state machines, PostgreSQL, and RabbitMQ.
The architecture showcases Elixir's sweet spot—complex state management with built-in fault tolerance. Their stuck state recovery with exponential backoff prevents cascading failures while keeping other pipelines unaffected.
🚀 Kamal Brings PaaS-Style Deployment to Phoenix Without the Lock-In:
AppSignal published a comprehensive guide showing how to deploy Phoenix applications with Kamal, Basecamp's deployment tool that delivers cloud-like developer experience on any infrastructure.
The guide covers everything from containerization and secrets management to zero-downtime deployments. Most compelling is the remote console access—you can get an IEX session in production while maintaining the BEAM's operational advantages.
📦 Package Discovery Gets a Much-Needed Upgrade:
Mimiquate launched Elixir Observer, an open-source tool that finally addresses the community's package discovery problem. Instead of jumping between Hex.pm, GitHub, and documentation sites, developers get package health indicators and essential resources in one clean interface.
This fills a crucial ecosystem gap—especially for newcomers who struggle to evaluate package quality and maintenance status. The timing is perfect as Elixir adoption grows and teams need faster ways to assess available packages.
. PRO TIPS .

Use Streams Instead of Assigns for Large Dynamic Lists
When you need to render lists that update frequently, most developers reach for regular assigns because they're simple and familiar. But if your assign contains 500 items and you update the entire list, LiveView re-renders the complete list on the server, computes a massive diff, and ships it all to the client—even when only one item actually changed.
Everyone treats assigns like React state and reassigns whole collections, but smart teams use streams for dynamic data. While traditional assigns force full re-renders when any part of a list changes, streams let you surgically insert, delete, or update individual items. LiveView handles the rest—rendering only the changed item and diffing only what's necessary.
The performance difference is enormous. With streams, you can push updates to large tables or feeds with minimal CPU and virtually no perceived latency. Because streams are keyed by unique IDs, LiveView efficiently tracks and replaces only the DOM elements that actually changed, eliminating the wasteful full re-renders that kill performance.
Remember, for dynamic collections:
Streams for lists that change – real-time feeds, tables, dashboards, notifications
Assigns for static content – configuration data, user info, page metadata
Stream operations are surgical – insert, delete, update individual items only
Measure the impact – streams eliminate full list re-renders entirely
. NO OPS. JUST ELIXIR .
Deploy your next Elixir app hassle-free with Gigalixir and focus more on coding, less on ops.
We're specifically designed to support all the features that make Elixir special, so you can keep building amazing things without becoming a DevOps expert.
See you next week,
Michael
P.S. Forward this to a friend who loves Elixir as much as you do 💜