Digests » 112
Amazing insights into errors and performance issues, plus host metrics and an easy to use custom metrics platform.
this week's favorite
A simple, in-memory queue with worker pooling and rate limiting in Elixir. OPQ leverages Erlang's queue module and Elixir's GenStage.
I write more functional code, avoid mutating data and side effects in methods, do not shy away from (modern) concurrency primitives, I explored alternative deployment options.
I'm sure most of people know that you can bind a value to an optional variable like this: _dont_care = 1
Property-based testing is a common tool to improve testing by testing properties of a piece of software over many values drawn at random from a large space of valid values. This methodology was first introduced in the paper QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs, which describes the basic idea and shows a possible implementation in Haskell.
Caching might be one of the most common and used techniques to improve performance, and in Elixir there are different options available; some of them very good options. However, most of them are focused on local caching, but let’s face it, we seldom deploy our systems in a single node, it’s not a common scenario, specially in the Elixir/Erlang world, is it?