Smooth Token Emission for Elixium
We’ve recently implemented smooth token emission for the Elixium Network, which means that block rewards for miners will be more evenly distributed and will scale down without massive downward spikes. The algorithm for smooth emission is also weighted to distribute more tokens early on in order to incentivize early adopters.
ElixirMix Podcast 026 - Higher Level Functions with Bill Peregoy
In this episode of Elixir Mix, the panel talks with Bill Peregoy. We talk about coming to Functional Programming, GenStage, good macro hygiene, and much more!
How DeltaCrdt can help you write distributed Elixir applications
I created DeltaCrdt to help me build Horde, and this blog post is about how you can use DeltaCrdt to build your own distributed applications in Elixir.
Why you should not miss CodeBEAM Lite Amsterdam
The CodeBEAM lite Amsterdam edition is fully packed with great talks. Check out this blogpost for a sneak peak into the programme.
https://www.botsquad.com/beam/events/2018/11/06/codebeam-lite/
Unit testing functions that interact with other processes
In part 1 of this series I went over a couple rules that I follow when writing unit tests. Now I’m going to dig in to some of the specifics of how to unit test certain types of behavior that can be a little tricky to do properly. In part 1 I said that unit tests test all functionality within a single process. But then how can we unit test something that talks to another process?
CyberSource Payment System — The implementation guide using Elixir
The guide we wanted to have before integrating the Cybersource payment system into an Elixir module -> blog post.
Anise helpers/assertions for Absinthe Testing
Anise helpers/assertions for testing Absinthe Queries/Mutations/Subscriptions.
The Actor model for web clients using GenBrowser
GenBrowser enables web clients to send and receive messages like an Elixir process.
I have written the following introduction, including a brief comparison to Phoenix Channels
Going Bare Metal with Elixir and GRiSP
A blinking light tutorial on how to use Elixir on the GRiSP platform.
https://medium.com/@toensbotes/going-bare-metal-with-elixir-and-grisp-8fa8066f3d39
Phoenix 1.4 Chat Server: Part 2
In this episode we generate the needed contexts, schemas, migrations, controllers, views, and templates for users, their credentials and chat rooms. We also create relations between users and their credentials and set up password hashing.
Unlike Part 1, nothing in this one was specific to Phoenix 1.4.
Jupyter Notebooks with Elixir and RDF
I just published a post today ‘Jupyter Notebooks with Elixir and RDF: Using IElixir in JupyterLab with the SPARQL.Client package‘.
The post very briefly touches on the role of Jupyter Notebooks as computational notebooks which integrate live code, text, math and media.
It then shows how we can use the IElixir kernel to run a Jupyter Notebook with Elixir as our language of choice. Using the TestQuery module developed in an earlier post it shows how this can be used within a Juyter Notebook context to run SPARQL queries using the SPARQL.Client package directly from the notebook and to process the SPARQL query result sets.
Mafia game using Elixir + Elm
https://github.com/igor-drozdov/mafia is a web application for playing Mafia game offline
This is the blog post about the backend architecture behind this game: https://ihar.me/elixir/2018/10/26/mafia-werewolf-game-elixir-phoenix-elm/
𝕰𝖝𝖛𝖆𝖑𝖎𝖇𝖚𝖗 → Smart Validation In Elixir
Exvalibur
is the generator for blazingly fast validators of maps based on sets of predefined rules.
Under the hood, it generates a module with many different clauses of the same valid?/1
function with direct hardcoded pattern matches and guards on the input.
Here is the blog post shedding a light on what goodness it provides and h)ow is it implemented → https://dev.to/mudasobwa/–smart-validation-in-elixir-4bcm
POA Network, Compound, and ConsenSys announce collaboration on Ethereum client written in Elixir
NEW YORK, NY, October 31, 2018 — Today POA Network, Compound, and ConsenSys announce that they have formed a collaboration on an open-source Ethereum client called Mana written in Elixir.
The Dangers of Genservers
When I first started Elixir, I had a hard time figuring out if I should wrap all my code in a GenServer, or what the boundaries were while utilizing them.
In my new blog post I go over the pitfalls of using GenServers and potential strategies to avoid them.
#Spawnfest 2018 is less than a month away!! Get your team ready!
#spawnfest is happening in less than a month!!
The annual 48-hour free online development competition for the BEAM community around the world where you have exactly one weekend to create the best applications you can.
Participation in 100% Free of Charge and you can win some amazing prizes.
Register your team or just yourself and join us on November 24th-25th, 2018 :)
Don't Repeat Your Domain Knowledge
I often feel that we are not using modules/classes/functions to extract domain knowledge often enough.
In this post, I discussed why we need DRY and when is the best time to do it: https://dsdshcym.github.io/blog/2018/10/26/dont-repeat-your-domain-knowledge/
TL;DR:
- We need DRY because we need to eliminate the duplication of knowledge.
- Both “abstract later” and “abstract early” are bad.
- What we really should do is to look out for our domain knowledge and persist them as part of our code.
ElixirMix Podcast 025 - Rethinking Config with Saša Jurić
In this episode of Elixir Mix, the panel talks with Saša Jurić. We talk about Elixir configuration management best-practices, his new Elixir in Action (2nd Edition) book, and much more!