Sign in

David Bernheisel

@david.bernheisel.com
1.2K followers 168 following 288 posts

erlef.org Board Member | Working at tv-labs | bernheisel.com | Founder of zest.dev (consultancy) #ElixirLang

PostsRepliesMedia
Reposted by David Bernheisel
Brian Meeker @brianmeeker.bsky.social · 11/09/2026
Big thanks to everybody who came out to #ElixirConf lightning talks tonight. My repo for verified pub/sub is available at github.com/CuriousCurmu.... Feedback welcome before I publish the first version of the Hex package. #ElixirLang
github.com
GitHub - CuriousCurmudgeon/verified_pubsub: Builds compile-time checks on top of Phoenix.PubSub, similar to Phoenix.VerifiedRoutes. Define your topics and messages up front and get compile-time valida...
Builds compile-time checks on top of Phoenix.PubSub, similar to Phoenix.VerifiedRoutes. Define your topics and messages up front and get compile-time validation. - CuriousCurmudgeon/verified_pubsub
1216
Reposted by David Bernheisel
Erlang Ecosystem Foundation @erlef.org · 01/09/2026
We are happy to announce that Oban Pro oban.pro has joined in financial support for the EEF. com.erlef.org/wg/sup/2026/... @oban.pro
com.erlef.org
Oban Pro Support
Oban Pro, offering and supporting Oban, the most widely used Elixir queuing system, has become a sponsor of the EEF by providing financial support. Oban Pro layers on the advanced features needed to…
0266
Reposted by David Bernheisel
Tobias Pfeiffer @pragtob.bsky.social · 20/08/2026
TIL: hex now has built-in dependency cooldown support! 🎉 Thanks team! 💚 hex.pm/blog/hex-v25...
hex.pm
Hex v25 released
A package manager for the Erlang ecosystem
0257
Reposted by David Bernheisel
Tyler A. Young ⚗️🧑🏻‍💻 @tylerayoung.com · 20/08/2026
TIL `Phoenix.PubSub.subscribe` is not idempotent; if your process calls it twice for a given topic, you'll get two notifications for each message posted to it. Or... if you call it 4,000 times, once on each update to your LiveComponent, you'll get 4,000 messages. Ask me how I know. 🫠 #ElixirLang
4264
Reposted by David Bernheisel
Steffen Deusch @steffend.me · 19/08/2026
There are no major CVEs for latest Phoenix 1.5+. We provide security patches for the last 4 minor versions, which include 1.5, 1.6, 1.7 and 1.8 at the moment. Apps using old Phoenix should still update, for sure, but not necessarily for security reasons. See github.com/phoenixframe....
152
David Bernheisel @david.bernheisel.com · 14/08/2026
New #ElixirLang ERLEF sponsor site is up, hopefully providing much clearer impact sponsors have on the community sponsor.erlef.org If you're at a company that uses the BEAM, send the site to your CFO and give back!
sponsor.erlef.org
Support the Erlang Ecosystem Foundation
Sponsorship powers our working groups, security advisories, and the events the BEAM community runs on.
01212
David Bernheisel @david.bernheisel.com · 28/07/2026
@gworkman.bsky.social @peterullrich.com glad to see ya'll starting up Macro Mayhem! warms my little heart Let me know if y'all want a guest sometime :)
240
Reposted by David Bernheisel
Peter Ullrich @peterullrich.com · 28/07/2026
🚨 Announcing our new Podcast 🚨 Gus (@gworkman.bsky.social) and I have started a new #ElixirLang Podcast Macro Mayhem - @macromayhem.fm We cover Elixir news and general industry topics every 2 weeks. Our first episode is out now, available on all podcast players or on our website: macromayhem.fm
macromayhem.fm
Macro Mayhem
The latest Elixir news and general software industry topics
35922
David Bernheisel @david.bernheisel.com · 24/07/2026
Next time you're upgrading Phoenix and you're using AI assistance, try pointing it to elixirstream.dev/gendiff/api and tell me how it goes. cc @steffend.me #ElixirLang
elixirstream.dev
https://elixirstream.dev/gendiff/api
# gendiff — Markdown API for coding agents Generate a diff of a project generator's output between two versions, rendered as Markdown built for LLMs. Fetch one URL, get the diff — no UI needed. ## E...
0164
Reposted by David Bernheisel
Tyler A. Young ⚗️🧑🏻‍💻 @tylerayoung.com · 23/07/2026
Semi-serious proposal: can we make open source sustainable by offering maintainers $x00/hr to review PRs opened against their projects? I think I could legitimately make the business case to get work to fund this on projects that are otherwise very quiet.
251
Reposted by David Bernheisel
ElixirConf @elixirconf.bsky.social · 22/07/2026
Can the BEAM handle intensive scientific computing? Join Jacob Johnson at ElixirConf US to see an engine processing NASA planetary data in pure Elixir. No NIFs or C bindings. Don’t miss his live 3D celestial sphere demo and architecture deep dive! 📍Chicago & Virtual elixirconf.com/participants...
082
Reposted by David Bernheisel
razorgirl @razorgirl.diy · 18/07/2026
hooked my datalog engine into the LSP too and now it renders statically computed supervision trees for the application by analyzing the compiled bytecode
The supervision tree for Oban
1231
Reposted by David Bernheisel
Zach Daniel @zachdaniel.dev · 15/07/2026
Announcing our Keynote speaker for #AshConf! @ajetha.bsky.social has built an award winning CRM, daylite.app, which was featured at WWDC, all while migrating a mature and complex codebase to #ElixirLang and #AshFramework. Come to Sweden on October 3rd (the day after Goatmire) to hear all about it 😎
2185
David Bernheisel @david.bernheisel.com · 15/07/2026
oh hey, I wrote an NES emulator in Elixir 60fps (on my machine) with sound. This is Castlevania 3 which might be the toughest one to emulate. github.com/dbernheisel/... #ElixirLang
Castlevania 3 running in an Elixir-native NES emulator
1112825
Reposted by David Bernheisel
Tyler A. Young ⚗️🧑🏻‍💻 @tylerayoung.com · 29/06/2026
OMG, latest version of Hex (`mix local.hex --force`) prints out CVEs that affect your packages any time you run `mix deps.get` 🤩 #ElixirLang
mix deps.get output, showing Earmark 1.4.48 marked as "RETIRED!" and "VULNERABLE!" due to CVE-2026-48591, "Stored XSS via unescaped HTML attribute values in earmark"
05111
Reposted by David Bernheisel
ThinkingElixir @thinkingelixir.com · 23/06/2026
The final episode! After 6 years, we close with news on LiveView 1.2 colocated CSS, Earmark’s retirement, Sagents v0.8.0, #Postgres 19, SpaceX buying Cursor AI for $60B, and what’s next for David and Mark! @elixir-lang.org #ElixirLang www.youtube.com/watch?v=p5FW...
youtube.com
Thinking Elixir Podcast 309: The Final Episode
YouTube video by Mark Ericksen
53113
Reposted by David Bernheisel
Leandro Pereira @leandrocp.bsky.social · 18/06/2026
Earmark has been retired. First, I want to highlight the impressive work of everyone maintaining it for so many years, really valuable work! MDEx has a migration guide if you choose it mdex.hexdocs.pm/earmark_to_m... and contributions are welcome. #MyElixirStatus
mdex.hexdocs.pm
Earmark to MDEx Migration — MDEx v0.13.0
1194
Reposted by David Bernheisel
ThinkingElixir @thinkingelixir.com · 16/06/2026
Elixir v1.20 is officially a gradually typed language, HexDocs moves to per-package subdomains, the #Miasma worm hits 73 @microsoft.com @github.com repos, and more! @elixir-lang.org #ElixirLang #security www.youtube.com/watch?v=mlSq...
youtube.com
Thinking Elixir Podcast 308: Elixir Goes Gradually Typed
YouTube video by Mark Ericksen
0102
Reposted by David Bernheisel
German Velasco @germsvel.com · 16/06/2026
The mix task, as you might guess, is `mix crap` 🤷 It'll show you potential crap in your codebase. My goal is for @david.bernheisel.com to say it out loud in the last Thinking Elixir podcast 😅
1112
Reposted by David Bernheisel
johanna @jola.dev · 09/06/2026
In my continuing struggle to find a way to use LLMs while staying firmly engaged in the design of the code, here's a blog post about using LLMs like dynamic programming books. It suggests code, you type it out jola.dev/posts/treati...
jola.dev
Treating LLMs as programming books | jola.dev
Thoughts on an approach for using LLMs effectively for coding without losing engagement and cognitive effort.
2192
Reposted by David Bernheisel
Davide Aversa @davideaversa.it · 04/06/2026
I always liked Elixir, but I never gave it a real shot because I never really enjoyed working with dynamic languages. In recent years, they have done amazing work on gradual typing, and now I officially have zero complaints. elixir-lang.org/blog/2026/06...
elixir-lang.org
Elixir v1.20 released: now a gradually typed language
From Elixir v1.20, every program is now gradually type checked in search for verified bugs and typing violations.
0162
Reposted by David Bernheisel
Christophe @genserver.be · 05/06/2026
Finally got around to getting env-guard.hexdocs.pm/EnvGuard.html published on hex.pm! :) I've been using it a lot, but never managed to get it into a package.
env-guard.hexdocs.pm
EnvGuard — env_guard v1.0.0
293
David Bernheisel @david.bernheisel.com · 05/06/2026
Removed Dialyzer. Thank you Elixir 1.20.0 #ElixirLang
chore(ci): remove dialyzer
Merged by dbernheisel
merged 7 commits into mainfeels good meme man
3251
Reposted by David Bernheisel
ThinkingElixir @thinkingelixir.com · 02/06/2026
It’s true! After 6 years of weekly episodes, the Thinking Elixir Podcast will be ending on June 23rd. Three episodes left. It’s been an incredible run and I’m grateful for every listener who came along for the journey. #podcast #MyElixirStatus #ElixirLang
245812
Reposted by David Bernheisel
Peter Ullrich @peterullrich.com · 25/05/2026
🚨 Update hackney 🚨 A **bunch** of vulnerabilities I reported in hackney were just disclosed. Please upgrade to 4.0.1 ASAP. I know this is gonna start dependency hell so please take some time for this. Please RT for reach. #ElixirLang cna.erlef.org/cves/
cna.erlef.org
List of Issued CVE’s
This project handles the CVE Numbering Authority (CNA) for the Erlang Ecosystem Foundation (EEF).
43023
David Bernheisel @david.bernheisel.com · 20/05/2026
Oh hey! Look at that! I'm a board member of the ERLEF now! Thank you for your votes!! Very happy to serve! erlef.org/blog/eef/ele... #ElixirLang
erlef.org
Erlang Ecosystem Foundation - Supporting the BEAM community
7423
Reposted by David Bernheisel
Parker & Shannon @oban.pro · 12/05/2026
A solid day optimizing Oban's metrics layer. We sped up a common operation used in Web by ~1200x, and all other operations are < 1ms!
3252
Reposted by David Bernheisel
ThinkingElixir @thinkingelixir.com · 12/05/2026
EEF 2026 election candidates are out, Elixir-Vibe launches tools to fight #AI code #slop, erlang_python 3.0.0 embeds CPython into the BEAM, ElixirConf EU 2026 videos are dropping, and more! @elixir-lang.org #ElixirLang #python @elixirconf.bsky.social www.youtube.com/watch?v=t-Vu...
youtube.com
Thinking Elixir Podcast 303: The Taming of the Slop
YouTube video by Mark Ericksen
0104
Reposted by David Bernheisel
Gus Workman @gworkman.bsky.social · 04/05/2026
After watching @wojtekmach.bsky.social's ElixirConf EU talk about creating desktop apps with ElixirKit, I was inspired to give it a try. Introducing Nerves Desktop - an app for discovering and managing Nerves devices on your network github.com/nerves-proje... #ElixirLang #Nerves
github.com
GitHub - nerves-project/nerves_desktop: Desktop app for managing Nerves devices
Desktop app for managing Nerves devices. Contribute to nerves-project/nerves_desktop development by creating an account on GitHub.
5277
Reposted by David Bernheisel
Parker & Shannon @oban.pro · 30/04/2026
Oban Pro v1.7.0 is out with: 📡 Signals and awaiting 🫆 Unique workflows ⚖️ Rate limiting overhaul 📦 Chunking overhaul 🪝 Global cancel/discard hooks 📇 Improved indexes Plus dozens of other improvements, and it unlocks all the features in Web v2.12. oban.pro/docs/pro/1.7... Signaling shown here:
1295
Reposted by David Bernheisel
Ben Collins @bencollins.bsky.social · 01/05/2026
Goodbye, get lost, and we'll see you soon.
Infowars.com -- Off Air
391302923597
David Bernheisel @david.bernheisel.com · 17/04/2026
I wrote a small little Ghostty app to register `ssh://` URLs on macOS. Hopefully this helps someone :) github.com/dbernheisel/...
github.com
GitHub - dbernheisel/ghostty-ssh: Ghostty SSH URL handler for mac
Ghostty SSH URL handler for mac. Contribute to dbernheisel/ghostty-ssh development by creating an account on GitHub.
110
David Bernheisel @david.bernheisel.com · 15/04/2026
I always do this: `mix <tab> <tab> <rage tab>` and then realize completions aren't built in for mix. so I hacked together something truly awful, but it works github.com/dbernheisel/... Add this ^ to your zsh fpath and then you have more helpful completions, including flags. #ElixirLang
mix deps.unlock --unused
 -- switch --
--all           -- unlocks all dependencies
--check-unused  -- checks that the `mix.lock` file has no unused dependencies. This is useful in pre-commit hooks and CI sc
--filter        -- unlocks only deps matching the given name
--unused        -- unlocks only unused dependencies (no longer mentioned in the `mix.exs` file)
5164
David Bernheisel @david.bernheisel.com · 15/04/2026
I've been annoyed with doc hovers in Neovim being just raw markdown. This is fine but could be better. Eg, docs in Elixir are often written for ex_doc/hexdocs.pm which supports some extensions like admonition blocks and tabs. This renders like crap though in Neovim So I fixed it.
1142
David Bernheisel @david.bernheisel.com · 13/04/2026
TVLabs has a bunch of repos coming soon :) One's already published: github.com/tv-labs/bash this is a full Bash implementation in Elixir (for better or worse), and supports a virtualized filesystem and `defbash` so you can insert your own native Elixir functions into your bash. #ElixirLang
2131
David Bernheisel @david.bernheisel.com · 13/04/2026
I was able to wire up Popcorn to run Elixir and PGlite to run Postgres, both in the browser. This means we can have an interactive and safe sandbox for arbitrary code. Which means a really good experience learning Ecto on a website. I'll publish it soon :) #ElixirLang
25310
Reposted by David Bernheisel
Paweł Świątkowski @katafrakt.eurosky.social · 13/04/2026
Localize, a successor to ex_cldr, is out now: github.com/elixir-local... #ElixirLang
github.com
GitHub - elixir-localize/localize: Localization for Elixir
Localization for Elixir. Contribute to elixir-localize/localize development by creating an account on GitHub.
0101
David Bernheisel @david.bernheisel.com · 13/04/2026
`phoenix_seo` now supports a convention for building llms.txt with your app. More importantly, agents may be requesting a markdown version of your page. The readme has a tip on how to do this with LiveViews hexdocs.pm/phoenix_seo/... #ElixirLang
hexdocs.pm
SEO v0.2.1 — Documentation
2132
Reposted by David Bernheisel
Homebrew New Packages @homebrew-new-pkgs.bsky.social · 02/04/2026
🍻 expert 🍻 Official Elixir Language Server Protocol implementation 🔗 expert-lsp.org #homebrew #newpkg #macos #linux #formula
0195
Reposted by David Bernheisel
Erlang Ecosystem Foundation @erlef.org · 20/03/2026
The NYC Elixir Meetup, organized by @davelucia.com and Kate Rezentes, brought the community together for a great evening of talks and shared experiences. Dan Janowski joined to share how to get involved with the Foundation
093
Reposted by David Bernheisel
Parker & Shannon @oban.pro · 03/03/2026
Workflows in Oban Web are coming along nicely...
3141
Reposted by David Bernheisel
Jason @peregrine.bsky.social · 04/03/2026
Now you can render to a terminal using Easel using the same Canvas API. github.com/jeregrine/Ea...
062
Reposted by David Bernheisel
ThinkingElixir @thinkingelixir.com · 03/03/2026
News includes Expert LSP releasing its first RC, Elixir v1.20 compile time improvements up to 20% faster, #Livebook Desktop moving to Tauri with #Linux support, a new erlang-python library for ML/AI integration, and more! @elixir-lang.org #ElixirLang #AI #ML www.youtube.com/watch?v=Ed83...
youtube.com
Thinking Elixir Podcast 294: Compile Times, Language Servers, and Python, Oh My!
YouTube video by Mark Ericksen
0103
Reposted by David Bernheisel
Hugo Baraúna @hugobarauna.com · 03/03/2026
Livebook desktop now supports Linux! #ElixirLang
2377
David Bernheisel @david.bernheisel.com · 28/02/2026
I build a Neovim blink.cmp source for Hex.pm. Now you can search hex packages from your mix.exs file, and autocomplete versions. github.com/dbernheisel/...
3295
Reposted by David Bernheisel
Dorgan @dorgan.ar · 22/02/2026
The first release candidate for Expert is out! You can read the announcement here: expert-lsp.org/the-first-re... #ElixirLang
expert-lsp.org
The First Release Candidate | Expert
15519
Reposted by David Bernheisel
Zach Daniel @zachdaniel.dev · 17/02/2026
arxiv.org/abs/2602.12670 This is why hexdocs.pm/usage_rules exists. Package authors need to be providing the context that will guide your agent to successfully use their package. As their library changes, they can update their agent guidance. #ElixirLang
arxiv.org
SkillsBench: Benchmarking How Well Agent Skills Work Across Diverse Tasks
Agent Skills are structured packages of procedural knowledge that augment LLM agents at inference time. Despite rapid adoption, there is no standard way to measure whether they actually help. We prese...
2142
Reposted by David Bernheisel
Mark Ericksen @brainlid.bsky.social · 12/02/2026
Introducing Sagents -- an open-source #ElixirLang framework for building #AI agents with human oversight, composable middleware, and real-time Phoenix LiveView integration. Built on OTP. Each agent is a supervised GenServer. Watch the full demo: www.youtube.com/watch?v=r-14...
youtube.com
Sagents: Build AI Agents in Elixir with Human Oversight, SubAgents, and Real-Time Debugging
YouTube video by Mark Ericksen
53710
Reposted by David Bernheisel
Parker & Shannon @oban.pro · 13/02/2026
Elixir and Python jobs running together, living side-by-side in the same Oban Web dashboard
1325
Reposted by David Bernheisel
Parker & Shannon @oban.pro · 12/02/2026
Cron status and management, coming soon to Oban Web
0235