ElixirMix Podcast 080: The Big Elixir Favorites
In this episode of ElixirMix, we talk about The Big Elixir conference. In addition we discuss medical messaging and HL7, leex and yecc for parsing, custom application scripting, Eric’s ponchbrella project design, kuberneetus, and much more!
Advent of Code Elixir Starter template
https://github.com/mhanberg/advent-of-code-elixir-starter
This is an Elixir starter template for the Advent of Code challenges.
It includes tests for each day, a mix task to run each part, and the ability to benchmark your solutions using Benchee.
How to generate a Pid-File for an Elixir app
Process IDs are very important in Unix. It’s standard for services to create a file called a “Pid-File” that has the ID of its currently running process so that other applications can discover the PID of the service and manage it. Management tools such as Systemd make heavy use of Pid-Files.
Neither plain mix applications nor Phoenix apps generate Pid-Files by default, but there’s a great drop-in solution in the form of a library called pid_file
.
I made a quick tutorial and screencast that covers setting it up.
An Ueberauth Oauth 2 Walkthrough
Let’s set up 3rd party Oauth so our users can log in with Google, Facebook, Twitter, Slack, Github or other services!
Ueberauth is a library that makes it easy and here’s a full walk-through of a Phoenix app using it to implement Google login.
All code is shown and explained but due to the number of moving parts, it’s a walk-through, not a screencast.
IntelliJ Elixir v11.4.0
Enhancements
-
Previously, the arity of a function or macro could only disagree with the definition and resolve if
-
The arity of the call was in the arity range of the defintion and the
ResolveResult
was marked as avalidResult
. -
The code is marked as
incomplete
(because the IDE detects typing, etc) and the arity mismatches and theResolveResult
is marked as an invalid result. By marking all arity mismatches, regardless of incompleteness of the code as an invalid result, Go To Definition and Show Parameters works when the the arity is incorrect. This males Show Parameters work while typing out a call without the correct number of commas and allows jumping to the definition while typing out the call too.
-
The arity of the call was in the arity range of the defintion and the
Understanding LiveView: build a Gallery app
Understanding LiveView: build a Gallery app
This is the third part of a small series on Phoenix LiveView.
I show at first how to build a simple first version of a gallery app, using a fixed list of images.
Then I refactor the code, decoupling the logic from the liveview part - this makes easier to add a thumbnails functionality.
In the last part I then show how to use :timer
to send messages at a regular interval, implementing an automatic slideshow.
Elixir Wizards S3E2 - José Valim on Performance and More
Our guest for ElixirWizards S3E2 was José Valim, creator of Elixir! We talked with him about performance, problem-solving, time management, and more.
ElixirMix Podcast 079: Oban with Parker Selbert
In this episode of ElixirMix, we talk with Parker Selbert about his background job processing library Oban. We cover why Oban uses Postgres over other options, being used at scale, his recipe articles, a LiveView UI and much more!
Running in Production Podcast 003: Using Phoenix to build an Elixir / Phoenix learning platform called Alchemist Camp
In this episode of Running in Production, Mark Wilbur talks about how he uses Phoenix and Elixir to build and deploy his Elixir / Phoenix learning platform called Alchemist Camp.
Commanded and EventStore 1.0
The v1.0 release of the open source Commanded and EventStore libraries is here. Allowing you to build event-driven Elixir applications following the Command Query Responsibility Segregation and Event Sourcing pattern (CQRS/ES).
KomachiHeartbeat v0.5.0
I’ve released KomachiHeartbeat v0.5.0! KomachiHeartbeat provides an easy way to health check your Elixir system. In v0.5.0 I add a feature BeamVital
to monitor major Erlang VM metrics📈.
VS Code Broken for Elixir?
You tried the ElixirLS extension for VS Code and gave up? This guide helps you diagnose and fix issues getting you back on the productive Elixir development path!
Earmak's AST feature helps modifying markdown cleanly
I’ve created a library earmark_hashed_link which adds link to hashed text in a markdown. This library is smarter than just replacing text. It doesn’t add link to hashed text in comment/blockquote/code etc.
I hope this is also a nice example that earmak’s new (experimental) AST feature.
PgMoney - the library I wish I had not - released
I migrate my customer’s ERP data using Elixir. The database involved uses PostgreSQL’s money
data type which is not natively supported by Postgrex
.
This is a library which should not exist, but the data type is out there and needs some interfacing. It emits some basic telemetry events to be able to keep track of rouding losses like laid out in Mathias Verraes‘ superb article Emergent Contexts through Refinement
in DDD - The First 15 Years.
This is my first contribution to the elixir community, after getting hooked using Elixir 13 weeks ago and I strongly welcome feedback.
You find the sources on GitHub and documentation on hex.pm.
It was a joy writing this library.
Cheerio
Call for Talks – FOSDEM 2020 – BEAM Devroom
the Call for Talks for the BEAM FOSDEM 2020 Devroom ends in just 2 days! submit your talk ASAP! 👨🔬💧 https://beam-fosdem.org/call-for-talks/
#myelixirstatus
#fosdem
#elixir
#beam
#erlang
@elixirlang @erlang_org @TheErlef
Elixir Wizards S3E1: Dr Jim Freeze on Hiring, Training, and Functional Programming – Working with Elixir
Elixir Wizards (formerly Smart Software) season three is here! Our first episode is a conversation with the founder of ElixirConf, Dr. Jim Freeze.
Phoenix LiveView Tutorial, Part 3: PubSub Updates, Pow Authentication
After bootstrapping the Messenger app, Michal’s article explains how to use Phoenix PubSub & Pow for live updates and authentication.
Supercharge Your Elixir and Phoenix Navigation with vim-projectionist
Toggle between alternate files, edit files by type, and create files with templates — all with vim-projectionist. If you’ve never used it, you’re in for a treat.
https://thoughtbot.com/blog/supercharge-elixir-and-phoenix-navigation-with-vim-projectionist
AskimetEX, Askimet Anti-Spam service for elixir projects
I created a new package AskimetEx for handle Askimet Anti-Spam inside elixir projects. It’s my first package so please have a look at the code, reviews are welcome.
Fault-Tolerant GTD
Inspired by Erlang, I find a great way to save all my tasks that are overdue: fallback to an easier task, a.k.a “Fault-Tolerant GTD”.
Fault-Tolerant GTD - Yiming Chen
Most of the time, we apply what we learned from our daily life to programming, but we can also do the opposite. A great programming paradigm like Erlang can be so helpful for our daily life, too!