Monitoring Your Elixir App with Prometheus
At SmartLogic we use Prometheus to monitor our Elixir applications. This post goes over how to set up instrumentation of your application and the basics of viewing those metrics in Grafana.
https://blog.smartlogic.io/monitoring-your-elixir-app-with-prometheus/
GenBrowser, send messages to your clients like any other process
https://github.com/crowdhailer/gen_browser
Client server is just another distributed system, lets have a process model that covers them all.
Project is in a very experimental state at the moment, keen to get feedback on the idea/api as I invest more time in extracting the pieces
Using Nix in Elixir projects
I started to use Nix instead of asdf to setup the environment for my Elixir projects. After a few weeks of tweakings on different projects, I’ve written an article to share my configurations.
https://medium.com/@ejpcmac/using-nix-in-elixir-projects-ff5300214e70
ActiveRecord vs. Ecto Part One
Data is a core part of most software applications. Mapping and querying data from a database is a recurring task in the life of a developer. Because of this, it is important to understand the process and be able to use abstractions that simplify the task.
https://blog.appsignal.com/2018/09/28/active-record-vs-ecto.html
Elixir: Generating a new Application with Mix - [003]
Mix is the de-facto standard tool when it comes to working with elixir. In this episode we’ll get familiar with it by generating a project.
Writing safe NIFs in Rust with the Rustler package
A brief explanation and summary of how to write safe NIFs for Elixir in Rust using the Rustler package https://medium.com/@jacob.lerche/writing-rust-nifs-for-your-elixir-code-with-the-rustler-package-d884a7c0dbe3
Living the Simple Life with Recursive Parsing and Serialization
I just finished a huge refactor of my in-progress Bitcoin node that makes use of recusion to simplify the parsing and serialization of Bitcoin network messages. Check out the full article!
Elixir: Runtime vs. compile time configuration
There has been a lot of talk and many slightly outdated posts on handling Elixir configuration, especially in production. So I wrote a few words to clear some things out: https://www.amberbit.com/blog/2018/9/27/elixir-runtime-vs-compile-time-configuration/
How to use Elixir protocols
Using Protocols to decouple implementation details https://www.jackmarchant.com/articles/using-protocols-to-decouple-implementation-details
What is NervesHub? Meet the Elixir OTA Firmware Update Server for IoT Devices
NervesHub is an extensible web service that allows you to manage over-the-air (OTA) firmware updates for Elixir and Nerves. Built with Phoenix, NervesHub delivers first-class support for hardware deployments directly from the command line.
Zero dependency pagination (Phoenix)
This episode covers making a Pagination module, and using from controllers and contexts. We’ll build it for our StatWatch project, but the same strategy works for any Phoenix app. We’ll paginate two different views, first a simple index view and then a more complex one where the paginated part is pre-loaded into another schema.
ElixirMix Podcast 020 - Chris McCord and "LiveView"
In this episode of Elixir Mix, the panel talks to Chris McCord, the creator of Phoenix. We talk about his new “LiveView” project and what that could mean for development. We get updates on his other projects like Firenest and the upcoming Phoenix 1.4 release, and much more.
Ecto Stale Entry Error – Solving This Cryptic Elixir Error
The Ecto stale entry error (Ecto.StaleEntryError) can be a bit cryptic. Find out one cause of this error and how to fix it. https://adamdelong.com/ecto-stale-entry/
ExVenture Updates for September
ExVenture is a text based MMO game server. The last month in ExVenture saw a lot of bug fixes, pulling out Squabble, and some updates to the web client. I was also able to push performance to over 7000 concurrent bots!
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released , fixing a memory leak and adding the new counter merge operator: https://gitlab.com/barrel-db/erlang-rocksdb . It’s already available on hex: https://hex.pm/packages/rocksdb Enjoy!
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released , fixing a memory leak and adding the new counter merge operator: https://gitlab.com/barrel-db/erlang-rocksdb . It’s already available on hex: https://hex.pm/packages/rocksdb Enjoy!
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released , fixing a memory leak and adding the new counter merge operator: https://gitlab.com/barrel-db/erlang-rocksdb . It’s already available on hex: https://hex.pm/packages/rocksdb Enjoy!
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released
erlang-rocksdb 0.22.0 a binding of rocksdb for #Erlang based applications has been released , fixing a memory leak and adding the new counter merge operator: https://gitlab.com/barrel-db/erlang-rocksdb . It’s already available on hex: https://hex.pm/packages/rocksdb Enjoy!
ElixirMix Podcast 019 - Brooklyn Zelenka: Elixir I assume Witchcraft...
In this episode of Elixir Mix, the panel talks to Brooklyn Zelenka who lives in Vancouver, Canada. Listen to the panel and the guest talk about various topics, such as: different Elixir libraries, Quark, Witchcraft, Exceptional, ConsenSys, Meetup, among others.
Game of life with elixir and Scenic
To get to know Scenic I wrote a visualization for my (old) elixir game of life implementation. https://forvillelser.vorce.se/posts/2018-09-18-game-of-life-in-elixir-and-scenic.html