Monitoring the Erlang VM With AppSignal's Magic Dashboard

Walk through monitoring the Erlang VM with the metrics automatically shown in AppSignal’s Magic Dashboard - https://blog.appsignal.com/2020/02/04/elixir-monitoring-erlangvm-with-magic-dashboards.html

gen_rmq 2.4.0 version release (with Telemetry support)

GenRMQ is a set of behaviours meant to be used to create RabbitMQ consumers and publishers.

Changelog:

IntelliJ Elixir v11.5.0

Enhancements

  • Ignore the incompleteCode flag and instead always use the criteria used when incompleteCode was set.

    name prefixexact nameResolveResultvalid
    N/AN/A

    This extends #1617 to more cases.

    • Qualified calls (Process.flag(...), etc)
    • Type specs (@spec foo(...))
    • Aliases (alias Foo...)
    • Module Attributes (@attribute)
    • Variables (foo)
    • Protocol reserved module attributes (@protocol and @for)

Bug Fixes

Installation Instructions

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.

Trans has been updated to 2.2.0

Trans, the small library for embedded translations in Elixir schemas has been updated to 2.2.0.

The main change in this new version is that Trans.Translator.translate/3 can now receive a string, allowing us to use the output of Gettext.get_locale/0. For example, we can now write:

Trans.Translator.translate(Article, :title, Gettext.get_locale())

This release also removes Faker as a dependency, updates ExDoc and removes support for Elixir versions older than 1.6 (which are not officially supported by the core team anymore).

You can see the release notes on GitHub or fetch the new version from hex.pm.

Expecting the Unexpected in Elixir

A recent project created for the Stockholm Elixir meetup group. I used Elixir and Scenic to create a fault-tolerant spaceship dashboard for Kerbal Space Program (with a brief NASA history lesson)

Read on Medium

Simple Phoenix LiveView App: Planning DB Schemas

This is a continuation of the Simple Phoenix LiveView App series that started with basic setup and a minimal interactive app that captured keyboard events last time.

This time we’ll plan out schemas, look at the relatively complex associations used in a large content site like Alchemist Camp, as explained in the earlier series, and then decide on a good schema structure for this newer, simpler app.

Screencast + article + diagrams: https://alchemist.camp/episodes/phoenix-live-view-db-schemas

Elixir Wizards S3E10 - Sophie DeBenedetto and Meryl Dakin on Training and Building Elixir Projects Under Constraints

Latest episode released today! Check it out here: https://podcast.smartlogic.io/s3e10-debenedetto-dakin

How to Get Your Elixir Application Ready for CI/CD

Explore a wide array of Elixir ecosystem tools that can help you create top-notch CI pipelines.

https://blog.appsignal.com/2020/01/29/how-to-get-your-elixir-application-ready-for-ci-cd.html

Deploying Phoenix to Ubuntu using Edeliver and Distillery

A series designed for those getting started with Elixir and deployment.

https://phxroad.com/devops/deploy-elixir-phoenix-ubuntu-vps

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

Real World Phoenix |> Rendering Markdown

In this post Tjaco explores how to render markdown files directly in a Phoenix app and investigates the underling mechanism of Template Engines.

https://realworldphoenix.com/blog/2020-01-28/rendering_markdown

Job Processing with Oban

In this episode we’ll look at how to use the Oban package to handle background job processing.

https://elixircasts.io/job-processing-with-oban

How to configure Sublime Text 3 to use Elixir Language Server

Today I upgraded my development environment by installing Elixir LS and actually it’s pretty nice!

A proposal for an Absinthe application structure

One of the great things about GraphQL is how broad the abstractions are. Everything is just an “object”, with “fields”! This makes things infinitely composable, and is where a good deal of the power in GraphQL comes from. But, like all things, there are downsides to this - first and foremost (in my opinion) is that it makes organizing a project difficult. Because you can do just about anything, you might end up doing that, and having a fairly difficult time of finding things and knowing where to put stuff. But, most importantly, this can make talking about GraphQL applications difficult since some of these terms are really murky.

http://www.devonestes.com/a-proposal-for-absinthe-project-structure

Credo v1.2.0 released

I released v1.2.0 of Credo, the static code analysis tool emphasizing code consistency and teaching.

For details, please refer to the CHANGELOG.

Credo

Code BEAM STO very early bird tickets available now!

Code BEAM STO is back with a festival of talks by and for the Erlang, Elixir, Phoenix, LiveView, Nerves communities! Get the best rates now! Book conference and training tickets now!

https://codesync.global/conferences/code-beam-sto/

Lonestar Elixir Scholarships

In an effort to improve diversity and benefit the Elixir community, we are offering 15 scholarships to the Lonestar Elixir conference to underrepresented folks in tech - women and minorities. We’d love for you to join us February 27-28, 2020 in downtown Austin, Texas! If you are interested, go to [link] https://lonestarelixir.com/scholarships and send us an email! Come join us!

Lumen - Elixir in the Browser

My thoughts on Lumen and a guide to trying the current bleeding-edge development version yourself. Where you can write Erlang or Elixir to run in your browser. Thanks to the Lumen team for the help on all of this.

https://underjord.io/lumen-elixir-in-the-browser.html

A layered object store design in Elixir (Part V) - The Web layer

This is the final layer for our object store responsible for exposing it over the web. It exposes endpoints: /upload for uploading a file and /file/:file_id for getting a file by ID.

We used simple and elegant plug abstraction for providing an HTTP interface with routing, avoiding use of any web frameworks: though Phoenix is quite modular, it may not be needed for thin Web layers (as they should be).

https://vflare.org/2020-01-23-a-layered-object-store-design-in-elixir-part-V/

Elixir Wizards S3E9 - Brooklyn Zelenka on Functional Programming

Check out the latest episode of Elixir Wizards here: https://podcast.smartlogic.io/s3e9-zelenka

Cool Elixir libraries

All Ruby/Rails developers know that for features neither provides, there is probably a Ruby Gem contributed by someone in the community that solves that problem.

Elixir’s equivalent to Ruby Gems are Hex packages. Hex is a package manager that provides reusable libraries for both Elixir and the Erlang ecosystem…

Cool Elixir libraries