ElixirStatus celebrates first birthday, introduces ElixirWeekly

I wrote a blog post about ElixirStatus becoming one year old around now (beta phase was a year ago) and the recent introduction of ElixirWeekly.

Filtering has_many relationships in Ecto

How do you filter has_many relationships based on a key from the association table?

Let’s find out.

Indented HTML syntax for Elixir

Looking for Jade or HAML for Phoenix?

Expug is a new HTML template engine. Multiline statements, correct line numbers on stack traces, Phoenix integration, and more! It’s an Elixir implementation of Pug (formerly known as Jade).

Still a few more things to go until 1.0.0, but it’s sturdy enough at 0.6.0, and improves upon existing template engines for Elixir today.

http://hexdocs.pm/expug

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

Writing your own Elixir pipe operator

https://t.co/XxE7N8xqwB

Self-referencing many-to-many relationships using Ecto

I’ve decided to do the backend for a new app I’m creating myself, using Elixir/Phoenix. I’ve been learning Elixir for the past few months and thought it would be a great opportunity to put what I’ve learned to good use.

There’s a lot of documentation about the new many_to_many macro in Ecto 2 — but somehow, it still was a bit of a pain to get this right the first time. I couldn’t find a concrete example of how a self-referencing many-to-many relationship would work with Ecto, and after some digging and the help of the awesome Elixir community, I got it working. I’m writing this post just to put this out there so you can go through this quicker.

Read here.

Distillery vs Exrm vs Relx

I was asked to describe what Distillery is, and how it relates to Exrm and Relx, and I attempted to do so in a brief blog post here.

I Accidentally Some Machine Learning - My Story of A Month of Learning Elixir

About a month ago I was in-between jobs - I had two weeks to rest up, recharge and get ready for my new job. So I thought, I should use those two weeks to learn something new…

I just wrote a blog post on my past month of learning Elixir and some Machine Learning. :)

User management and Authentication with Coherence

Looking for an Authentication package similar to ruby’s Devise? Checkout Coherence on hex https://hex.pm/packages/coherence

Track changes to your Ecto model with whatwasit

Just released a package for tracking changes to your Ecto models for versioning and auditing.

The installer generates a migration file and a models/whatwasit/version.ex file to your project for easy customization.

You can check it out on hex https://hex.pm/packages/whatwasit

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

Using Environment Variables with Elixir and Docker

In an existing organization, Docker is a great tool to homogenize your infrastructure. Along with Exrm, I use Docker to run the same code in both the staging and production. In order to connect to different database servers, I use environmental variables to configure the server at run time.

In this blog post, I cover how to load those environmental variables in your config for both your binary and mix tasks.

Phoenix API versioning: URL

API versioning plays a big part in how an API can evolve, affecting not only technical decisions, but also product decisions. In this post, I show how simple it can be achieved with Phoenix:

http://elviovicosa.com/blog/2016/07/22/phoenix-api-versioning-url.html

Auto slug field for Ecto models

A little but configurable helper with you slugs: https://github.com/sobolevn/ecto_autoslug_field

It can generate slugs from multiple fields and always override existing slugs (if you want so). Check it out.

Phone v0.3.1 released. A hex package to get info from phone numbers.

This update corrected some issues with Croatia numbers.

Hex

Github

Exception tracking from Elixir to Airbrake

Airbax is Elixir client for Airbrake/Errbit based on awesome Rollbax.

https://github.com/adjust/airbax

You're Smart Enough for Elixir

I’ve written a blog post on the Spreedly engineering blog about my experience coming to Elixir from an object oriented background.

Concurrency is hard and complicated with threads and mutexes and so Elixir must be hard and complicated right? Elixir must be a language for serious programming programmers doing serious programming!

What I found was that concurrency doesn’t have to be the hard part! Elixir doesn’t solve the concurrency problems of a language like Ruby… it avoids them entirely!

https://engineering.spreedly.com/blog/youre-smart-enough-for-elixir.html

BeamBA 2016 - Meetup @ Buenos Aires / Sept. 28th

The community of Erlang, Elixir, Efene, LFE devs around Buenos Aires is congregating again for a new meetup on Sept. 28th, 7PM at Inaka’s offices. We’re looking for speakers (remote ones accepted, of course). If you have something to share with us, please fill in the CFP before Sept. 12th.

Already looking forward to meet everyone again!

Picking apart an Elixir macro

We use the “env_helper” package as an example to pick apart exactly what each line of a Macro does. Most suited to beginners wondering exactly what is up with this “quote/unquote” stuff.

https://medium.com/perplexinomicon-of-philosodad/using-macros-to-handle-environment-variables-in-elixir-87bc81ea83dd#.2d33byv7v

Building a simple chat using Phoenix Framework’s Presence and React

Presence module in Phoenix Framework is awesome. We show you how you can use it with React to build a chat.

https://blog.diacode.com/building-a-simple-chat-using-phoenix-framework-presence-and-react

ElixirStatus & ElixirWeekly

ElixirWeekly is the latest addition to this site.

I wrote a blog post how it came about.

Stemmer - An English (Porter2) stemming implementation in Elixir

Just released v1.0.0-beta.1 with 100% compatibility with Porter2!

https://github.com/fredwu/stemmer