We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
All drops
September 2026
-
Trapping exits so terminate/2 actually runs
· almirsarajcic
-
Keeping compile_env values out of runtime.exs
· almirsarajcic
-
Sorting DateTime lists with Enum.sort/2
· almirsarajcic
-
Setting updated_at yourself in Repo.update_all/3
· almirsarajcic
-
How we use ETS as a live code-graph database in Synapse MCP
· spasm-myelixlabs
-
Running doctests against the database
· almirsarajcic
-
Keeping Oban's time units explicit
· almirsarajcic
-
Catching GenServer.call/3 timeout exits
· almirsarajcic
-
Keeping self() straight in on_exit callbacks
· almirsarajcic
-
Clearing inherited variables in System.cmd
· almirsarajcic
-
Running Task.async_stream/3 for side effects
· almirsarajcic
-
Keeping timeouts active while tracing tests
· almirsarajcic
-
Starting only what a FLAME runner needs
· almirsarajcic
-
Keeping stale gzip assets out of Phoenix tests
· almirsarajcic
-
Let ExUnit shut down your test processes
· almirsarajcic
-
Put `phx-change` inputs inside a form
· almirsarajcic
-
Check the exit status from `System.cmd/3`
· almirsarajcic
-
Make `capture_log` assertions test-specific
· almirsarajcic
-
Avoid `File.cd!/2` in async tests
· almirsarajcic
-
Build sequence diffs with List.myers_difference/2
· almirsarajcic
-
Capture warnings with Code.with_diagnostics/2
· almirsarajcic
-
Update matching list items with Access.filter/1
· almirsarajcic
-
Discard late replies with process aliases
· almirsarajcic
-
Reject unknown struct keys with struct!/2
· almirsarajcic
-
The Module Behind the Curtain
· spapiernik
-
Build strings with iodata, not concatenation
· almirsarajcic
August 2026
-
Ecto's :utc_datetime silently drops microseconds
· almirsarajcic
-
get_in/2 needs Access.key!/1 for structs
· almirsarajcic
-
Decimal `==` is not value equality
· almirsarajcic
-
`dbg/2` shows every step of your pipeline
· almirsarajcic
-
Stop blocking your supervisor in `init/1`
· almirsarajcic
-
Name dynamic processes with `:via` tuples
· almirsarajcic
-
`attr` turns component bugs into compile errors
· almirsarajcic
-
`Ecto.Enum` maps atoms to integer columns
· almirsarajcic
-
Sub-binaries keep the whole payload in memory
· almirsarajcic
-
Keep related writes together with `prepare_changes/2`
· almirsarajcic
-
Download/Read Hex Library Doc Offline
· mnkhod
-
Give background processes useful labels
· almirsarajcic
-
Build an Ecto select a field at a time
· almirsarajcic
-
Find wide compile dependencies with `mix xref graph`
· almirsarajcic
July 2026
-
Test CLI input and output with `CaptureIO`
· almirsarajcic
-
`GenServer.call/3` timeout does not cancel work
· almirsarajcic
-
Let `Task.async_stream/3` emit fast work first
· almirsarajcic
-
How LiveView decides what to re-render
· almirsarajcic
-
Build a LiveView wizard that remembers every step
· almirsarajcic
June 2026
-
Schemaless changesets validate forms without the database
· almirsarajcic
-
Stop mounting your LiveView twice
· almirsarajcic
-
`:persistent_term` outperforms ETS for static data
· almirsarajcic
May 2026
-
Speed up CI with parallel ExUnit partitions
· almirsarajcic
-
`assign_new/3` prevents expensive recomputations in LiveView
· almirsarajcic
-
`Req.Test` stubs keep HTTP out of your tests
· almirsarajcic
-
Chain failable operations cleanly with `with`
· almirsarajcic
April 2026
-
Split async and sync tests in one file
· almirsarajcic
-
optimum_credo v0.4.0
· almirsarajcic
-
Override config in async tests
· almirsarajcic
-
`Phoenix.Token` beyond `mix phx.gen.auth`
· almirsarajcic
-
Chain failable operations cleanly with `with`
· almirsarajcic
-
`Repo.stream/2` processes database results without loading all rows
· almirsarajcic
March 2026
-
optimum_credo v0.3.0
· almirsarajcic
-
Pause an Oban job with `{:snooze, seconds}`
· almirsarajcic
-
Use `Integer.parse/1` for params, not `String.to_integer/1`
· almirsarajcic
-
github_workflows_generator v0.1.4
· almirsarajcic
-
optimum_credo v0.2.0
· almirsarajcic
-
Structure context tests with `describe` blocks
· almirsarajcic
-
`Phoenix.LiveView.JS` for client-side interactions
· almirsarajcic
January 2026
December 2025
-
Add query params to Phoenix verified routes with `~p`
· almirsarajcic
-
`defguard` creates reusable guard expressions
· almirsarajcic
-
`tap/2` runs side effects in pipelines
· almirsarajcic
-
Use `Ecto.Multi` for complex transactions in Phoenix contexts
· almirsarajcic
-
Live Sessions in Phoenix LiveView: Reducing navigation time between LiveViews
· Deankinyua
-
`File.stream!/1` processes large files with constant memory
· almirsarajcic
November 2025
-
Stop using `Repo.preload` in loops - use `preload` in queries
· almirsarajcic
-
Use `Task.Supervisor` instead of bare `Task.async`
· almirsarajcic
-
Prevent race conditions with `Ecto.Query.lock/2`
· almirsarajcic
-
Use `temporary_assigns` for large lists in LiveView
· almirsarajcic
October 2025
-
Use `send_update_after/4` for delayed LiveComponent updates
· almirsarajcic
-
Use router `on_mount` hooks instead of duplicating LiveView mount logic
· almirsarajcic
-
Stop mixing LiveView handlers with JavaScript hooks
· almirsarajcic
-
The amazing v/1 helper function
· jrowah
-
Phoenix contexts should return tuples, not raise
· almirsarajcic
-
Prevent duplicate Oban jobs with `unique` worker options
· almirsarajcic
September 2025
-
Stop rewriting Ecto queries from scratch - use `Ecto.Query.exclude/2` instead
· almirsarajcic
-
Fixing `Ecto.StaleEntryError` with optimistic locking patterns
· almirsarajcic
-
Phoenix application configuration
· Deankinyua
-
Hunting down flaky tests with `--repeat-until-failure`
· almirsarajcic
-
Impelementing Infinite Scroll in Phoenix
· Deankinyua
-
Preventing atom exhaustion attacks with `String.to_existing_atom`
· almirsarajcic
August 2025
-
Executing OS processes using Elixir Ports
· Deankinyua
-
Speed up Phoenix with ETS content caching and TTL expiration
· almirsarajcic
-
Fine tuning routing for a better UX
· jrowah
-
Verifying Replicate Signatures
· Deankinyua
-
Using `@impl Phoenix.LiveView` instead of `@impl true` for clear callback contracts
· almirsarajcic
-
Sandbox modes in Ecto Testing
· Deankinyua
-
Pass arguments to Mix aliases with anonymous functions
· almirsarajcic
-
Extracting repeated type specs to module-level `@type` declarations
· almirsarajcic
July 2025
-
Debugging GenServer state with `:sys.get_state`
· almirsarajcic
-
Asynchronous operations in Phoenix LiveView
· Deankinyua
-
Inline CSS in Phoenix email templates
· almirsarajcic
-
Pattern matching on Bitstrings
· Deankinyua
-
Fixing Wallaby's "Invalid Session ID" Error
· almirsarajcic
-
Using the "Use" Elixir Macro
· Deankinyua
-
Offset-based pagination in Elixir
· Deankinyua
-
Testing Oban Workers
· Deankinyua
-
Reproducing failed CI tests locally with seeds
· almirsarajcic
-
Creating and hosting sitemaps in Elixir/Phoenix
· almirsarajcic
-
Ecto fragments for complex queries
· Deankinyua
June 2025
-
Capturing Logs in Tests
· Deankinyua
-
Temporarily changing app config in tests
· almirsarajcic
-
Multi-process collaboration in Mox
· Deankinyua
-
Gracefully handle 404s and other errors in Phoenix using Plug.ErrorHandler
· amos-kibet
-
Cleaning up after tests (on_exit)
· almirsarajcic
-
Auto-disappearing flash messages in Phoenix LiveView
· almirsarajcic
-
Enhanced missing gettext translations check in CI
· almirsarajcic
May 2025
-
Using Playwright MCP in Cursor
· almirsarajcic
-
Improving code coverage with AI agents
· almirsarajcic
-
optimum_gen_infra v0.2.0
· almirsarajcic
-
Optimum Credo checks
· almirsarajcic
-
Cursor rules for Elixir and Phoenix app development
· almirsarajcic
-
Using Tidewave with new MCP Proxy (Rust)
· almirsarajcic
-
Custom Phoenix generator templates
· almirsarajcic
-
Code quality checks for AI code generation in Elixir apps
· almirsarajcic
-
Using Tidewave with MCP proxy (deprecated)
· almirsarajcic
April 2025
-
Setting up Tidewave in your Phoenix app
· almirsarajcic
-
optimum_gen_infra v0.1.5
· almirsarajcic
-
Accessing localhost app on other devices in the same network for testing.
· jrowah
-
Executing scripts inside Elixir releases
· almirsarajcic
-
Uploading files to the cloud (s3 compatible)
· Deankinyua
-
Enabling history in the Elixir's Interactive Shell (IEx)
· almirsarajcic
-
Handling Mux Video Uploads in LiveView with Process Messaging
· kagure-nyakio
-
Waiting on results of Replicate predictions using webhooks
· almirsarajcic
March 2025
-
Running multiple LLMs in Elixir as part of multiple FLAME pools
· almirsarajcic
-
Providing HTML for Swoosh emails
· almirsarajcic
-
Simplify Pattern Matching with Map Updates
· jrowah
-
Memoization in Elixir
· almirsarajcic
-
Separate layouts for different parts of the app
· almirsarajcic
February 2025
-
Checking for missing gettext translations in CI
· almirsarajcic
-
Generating multiple test cases from a single test in Elixir using a for-comprehension!
· amos-kibet
-
Working with ports
· almirsarajcic
-
Using obfuscated production data locally
· almirsarajcic
-
Backing up Fly.io PostgreSQL DB with a one-liner
· almirsarajcic
January 2025
-
Starting child processes depending on the environment
· almirsarajcic
-
Pluralization using Gettext in Elixir.
· jrowah
-
Checking the Mix environment in your Elixir app
· almirsarajcic
-
Debugging assigns
· jrowah
-
openssl deprecation fix in Phx.tools
· almirsarajcic
-
Adding binary id to phoenix apps
· jrowah
-
Sending a file to the user
· almirsarajcic
-
Phx.tools updates following Elixir 1.18 release
· almirsarajcic
December 2024
-
optimum_gen_infra v0.1.4
· almirsarajcic
-
Show relative time like GitHub
· almirsarajcic
-
Showing relative time in HEEX using Timex
· almirsarajcic
-
Show the time in user's timezone in Phoenix LiveView
· almirsarajcic
-
Upgrading Phoenix - the OCD approach
· almirsarajcic
-
Simple health check for Phoenix apps
· almirsarajcic
-
Reducing diff noise from Gettext translation files
· almirsarajcic
-
Reserved names for new Phoenix apps
· almirsarajcic
-
Facilitating Phoenix upgrade process
· almirsarajcic
-
Limiting IO.inspect/2 output
· almirsarajcic
-
Phx.tools updates following Phoenix LiveView 1.0 release
· almirsarajcic
-
Running seeds in production
· almirsarajcic
-
Optimizing Elixir CI in GitHub Actions
· almirsarajcic
-
Including dot files in the hex package archive
· almirsarajcic
-
optimum_gen_infra v0.1.3
· almirsarajcic
November 2024
-
Fixing slow caching in GitHub Actions
· almirsarajcic
-
Fixing cross-platform Docker image build issue on Apple Silicon
· almirsarajcic
-
Using npm dependencies in Phoenix apps
· almirsarajcic
-
Ignoring digested assets by git and Docker
· almirsarajcic
-
Phx.tools updates
· almirsarajcic
-
Streamlined Phx.tools installation
· almirsarajcic
-
Testing DateTime Equality in Elixir Tests
· amos-kibet
-
Purging Bumblebee AI models cache
· almirsarajcic
-
Running your own Hex server
· almirsarajcic
-
Deleting branches already merged to main
· almirsarajcic
-
Debugging GitHub Actions with SSH
· almirsarajcic
-
Silently failing code
· amos-kibet
-
optimum_gen_infra v0.1.2
· almirsarajcic
-
Reliable File Access in Elixir Release
· mbashia
-
Reduce waiting time for refute_has in Wallaby tests
· almirsarajcic
-
Fine-tuning Erlang build on macOS using .kerlrc file
· almirsarajcic
-
optimum_gen_infra v0.1.1
· almirsarajcic
-
Writing GitHub Actions workflows in Elixir
· almirsarajcic
-
Generate CI/CD and more for Elixir apps
· almirsarajcic
-
Install Erlang, Elixir, PostgreSQL, and Phoenix with one command
· almirsarajcic
-
Setting AppSignal revision
· almirsarajcic
-
Freeing up storage in a dev machine
· almirsarajcic