IntelliJ Elixir v6.5.0

  • Elixir 1.5 grammar

    • not in
    • Precedence of @numeric and unary numeric prefix operators
  • Make binary infix vs unary prefix +/- handling more robust to support one(two, - three)
  • Call withCharSet(Charsets.UTF_8) on all GeneralCommandLines to prevent encoding errors on Windows.

Installation Instructions

Live coded chat app in 45 minutes

http://crowdhailer.me/talks/2017-10-31/live-coded-chat-app-in-45-minutes/

Several important areas for Elixir development today are covered. Using Docker for local development as well production deployment. Managing configuration for multiple services. Testing and documenting APIs.

Authex - a simple JWT alternative.

Many of our app API’s use the same process for JWT authentication and authorization. I finally had time to extract things into releasable libraries. A simple alternative to some of the other options available out there. Includes authentication, authorization, as well as blacklisting.

Hope someone can find it useful.

https://github.com/nsweeting/authex

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

Grokking the Y Combinator with Elixir

Trying to understand the Y combinator has always left me with a throbbing headache and a craving for pretzels. But recently, while reading through The Little Schemer, I had a moment of clarity which left me with a much deeper understanding of how the whole thing works.

Check out Grokking the Y Combinator with Elixir for a step by step breakdown of what the Y combinator is, why it’s interesting, and how it can be derived through plain old Elixir code.

Announcing Bootleg: Simple deployment and server automation for Elixir.

Many in the community are already aware of Bootleg, but I just published a quick “official” announcement over on the Lab Zero blog with a very quick guide to getting started.

https://labzero.com/blog/announcing-bootleg

Elite #judges at @spawnfest this year (@joeerl, @mononcqc, @cmeik)!

Check the lineup at https://spawnfest.github.io/judges / #erlang #elixirlang

Drab 0.6.1 is out, with better living assigns and shared commanders

Drab is an extension to Phoenix, designed to remote (from the server side) control the user interface.

The library has completely redesigned custom EEx engine, so it is not putting its <span> in every corner of your template anymore.

Also, this version introduces shared commander, allowing you to create components of Drab’s template + commander.

Check out the demo page, install, test, develop and enjoy!

Using PostgreSQL Jsonb columns in Ecto

How to query jsonb columns in Ecto using fragment: http://www.ubazu.com/using-postgres-jsonb-columns-in-ecto

Elixir Formatter Preview

Heard about the new formatter coming to Elixir? We take a look in our latest episode: https://elixircasts.io/elixir-formatter-preview

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

Tenth monthly bors newsletter

This October, a bunch of little usability improvements were made https://bors.tech/newsletter/2017/11/01/tmib-10/

Swoosh 0.11.0 is out! With AmazonSES & inline attachments

Here are the two highlights of this new version:

  • One of our most requested adapter is now available out-of-the-box: AmazonSES.
  • Inline attachments are now supported by all built-in adapters.

Installation instructions

Please give it a try and feel free to open an issue in the Swoosh repo if you run into any trouble.

New book: Phoenix for Rails developers

You invested thousands of hours learning Rails and how to master its features to build web applications. This book will help you to learn Phoenix, using the knowledge you already have.

http://www.phoenixforrailsdevelopers.com

Elixir on Docker

Quickly get started developing clustered Elixir applications for cloud environments.

https://github.com/CrowdHailer/elixir-on-docker

CaptainFact.io - Looking for Elixir/Phoenix developers (open source)

The project

CaptainFact is a collaborative, real-time fact checking platform. Its goal is to help us improve the way we consume medias on the Internet by collectively sourcing and debating about the content we see.

Think Wikipedia (sourcing) + StackOverflow (reputation, achievements) applied to our day-to-day information.

The project currently offers two linked tools:

  1. A real-time debate platform that allows us to have rich and focused discussions on a video by working point by point, argument by argument - instead of taking the content as a whole like almost all today’s comment systems do: https://www.youtube.com/watch?v=IJrmHU13lWY

  2. A browser extension that is bringing this information directly on the content you’re watching: https://www.youtube.com/watch?v=LsRkg2hRTiI

In the future we’d like to extends these functionalities to be able to work on news articles (text) as well. For more details about the reasons of the project, its philosophy and its goals, you can check this article.

Contribute

Though frontend’s and extension’s code are already available on our Github, we’d like to have some volunteer Elixir / Phoenix developers checking the API code before we release it.

There will also be a lot of other stuff to work on in a near future, like:

  • Migrating some parts of our -or maybe the entire- API to GraphQL
  • Implementing a notification system
  • Password-less authentication

You can contact us on Facebook or by email ([email protected]) if you’re interested in participating!

Elixir with Love Conference - Standard Ticket Prices Expire 11/2

Go to https://ti.to/elixir-with-love/2017 for your last chance to get tickets at standard rates. We have an amazing speaker line up! Learn more at elixir-with-love.com

What's wrong with a global User module?

We often see a User module in the root project directory. Here are some thoughts about its impact on the system architecture and some examples how to split it into cleaner and more isolated components.

Might be helpful to understand how to separate the code when using Phoenix Contexts.

https://medium.com/@mkaszubowski/whats-wrong-with-a-global-user-module-ed7ed013a519

Just in time for Spooktober: `Ghoul` 0.1.1: An undead cleanup crew for your processes

Ghoul.summon/2 raises one of the undead to stalk your process, waiting until just after death to consume the corpse… err… execute a custom callback.

Ghoul.reap_in/3 invites the carrion eaters to slay a misbehaving process after a timeout, unless reap_in is called again to set a new timeout, or cancel_reap or banish prevent the Ghoul from mincing up his tasty treat.


I’ve been using this in production for a few months, and it has elegantly solved some tricky issues; my current favorite is delaying a supervisor’s restart of a worker, but only when the worker exited while in a particular situation.

Check out the rest of the API over at the repo

Filtrex 0.4.1 Released

Sanely handling query parameters in your elixir application now works properly with multi-table Ecto queries in Filtrex 0.4.1.

Getting started with Mix format

How to use the amazing new Mix code formatter today - http://blog.janfornoff.com/elixir/2017/10/21/getting-started-with-mix-format.html

Implementing a Simple Neural Network in Elixir (free video for 24 hours)

Here’s a DailyDrip episode implementing a basic neural network in Elixir with Karmen Blake’s neural_network_elixir library: https://www.dailydrip.com/topics/daily/drips/implementing-a-simple-neural-network-in-elixir

I’ve been having fun digging into his code, and I’ll be doing more of that tomorrow.