ThinkingElixir 015: Inside Elixir Radar with Hugo Baraúna

In episode 15 of Thinking Elixir, we talk with Hugo Baraúna, the guy behind Elixir Radar, to get the inside scoop. Would you like to increase the chances of your blog post being featured by Elixir Radar? Hugo shares how! We also discuss his observations of Elixir adoption in companies, the type of community we have, early observations from the Elixir Ecosystem Survey, sustainability in OpenSource, his efforts to fund his time on Elixir Radar, and more!

Podcast Episode

Collectable: Custom Data Structures in Elixir, part 2

Continue creating a custom Array type in Elixir and learn about the Collectable protocol.

Migrating to Elixir with the Strangler Pattern

I think it’s fair to say that a good amount of folks - if not the majority of them - using Elixir in production today are doing so after migrating an application to Elixir from some other language instead of just building in Elixir from scratch. Of course this idea of re-writing an application is scary, and rightly so! But there are some ways to make this process simpler and less scary, and also to reduce the likelihood of introducing regressions during this process, and that’s what I go over in this post.

Shameless plug: Check out @elixirstatus' other community project:

Credo, a new static code analysis tool that acts as a code linter, but also focusses on teaching coding practices and code consistency.

Blazing with Phoenix: Project Structure

An article about how to layer your Phoenix project with a structure convention focused on developer productivity:

RestClient an open source LiveView project

I’ve just open sourced a REST API client demo using Phoenix LiveView.

Check it out

Using Ansible to Deploy Elixir Applications on Dokku

Beginners guide to building a Elixir application with Pheonix. A ‘liveblog’ of a rubyist learning Elixir.

IntelliJ Elixir v11.8.1


Bug Fixes

  • Vendor JInterface 1.11 to support BIG_CREATION when debugging. The JInterface on Maven Central has stopped being updated because the OTP Team didn’t actually maintain it, that was Basho, and Basho is gone now. This version of JInterface, 1.11, is from Erlang 23.0.4 from Homebrew, but with the formula edited (brew edit erlang) to add --with-java and then built with brew install erlang --build-from-source.
  • On Windows, the file.path to the debugger server files has \, but they aren’t escaped. Therefore, replace them with escaped version, \\ to fix debugging on Windows, but leave Linux and macOS unaffected. Installation Instructions

8th video in the series about building cryptocurrency trading bot in Elixir

8th video in the series about building cryptocurrency trading bot in Elixir - this time we will broadcast and store orders inside Postgres

we will modify the naive traders to broadcast the Binance orders structs to a new PubSub topic. We will add a handler function to the DataWarehouse.Subscribers.Worker module to be able to store the Binance Orders into the database. To be able to store them inside DB we will also add a migration script and Ecto schema.


Elixir Wizards Podcast Listener Survey Results

The latest Elixir Wizards post is out! Check it out here:

ElixirWeekly: The Elixir Community Newsletter, covering community news you easily miss, shared on ElixirStatus and the web, in one email every Thursday.

Phx.Gen.Auth usage and customization

A couple of posts on authentication with Phx.Gen.Auth and how to go about adding some simple customizations to the workflow and functionality.

Phx.Gen.Auth and Swoosh

In this episode we’ll update the example user notifications generated by Phx.Gen.Auth to trigger emails using Swoosh.

ThinkingElixir 014: LiveView and Airtable with Ricardo Garcia Vega

In episode 14 of Thinking Elixir, we talk with Ricardo Garcia Vega about how he paired a Phoenix application with no database Repo to an Airtable backend to quickly solve a problem but without compromising on speed or reliability. Includes great discussion of ETS tables, GenServers for syncing a cache, LiveView for live updates, links to great resources, a github repo for doing it yourself and much more!

Podcast Episode

Ash Framework - Looking for contributors and alpha users!

Looking for anyone interested in contributing to Ash, or trialing it during the alpha. Anyone who is interested will get as much in person attention from me (@ZachSDaniel1) as they need. Ash covers a lot of ground, so there is plenty to do! Check out the community page on the website for information on how to get involved.

Morphix 0.8.1 released! Now with minor bug fixes!

Morphix is a tiny library of functions to perform transforms on maps and arrays.

Morphix provides atomorphification (transforming string keys to atoms in maps) at either the top level or at all depths. This release fixes a bug with the atomorphification methods, which were throwing uncaught errors on maps with non-printable binary keys.

Keys that cannot be transformed to atoms will be ignored.

Use Ecto Embedded Schemas to Back Phoenix Forms

A blog post showing how to use Ecto’s embedded_schema to create form modules to use with Phoenix:

Modular software design - 10 common mistakes

Since the introduction of Phoenix Contexts, modularity is a popular topic in the Elixir community. Here are 10 common mistakes that might hurt your modular design:

Elixir Wizards S4E18 Eric Steen on Neuroevolution in AI

Latest episode of Elixir Wizards is out today! Check it out here:

Geo encoding and displaying maps with OpenStreetMap and LiveView

A series of blog posts and an example LiveView application that demonstrate GEO location of an address and displaying the location on a map.



Dictator 1.0: tiny library under a new perspective

Dictator is a tiny authorisation library that allows you to easily control what your users see. We finally got around to version 1.0. This version took a big refactoring, with some good additions: a clearer API and router-based policies.

Announcing Alchemy Conf: More than a conference

14 & 15 May 2021, in Braga, Portugal, Alchemy Conf, a new Elixir conference, will be taking place. CFPs will be opening soon. In the meantime, explaining what Alchemy Conf stands for and how everything will happen: