Erlang VM provides outstanding observability. It takes just a few lines to question VM about any process it runs. It is safe and performant enough to be used in production, given due diligence.
Two major features available in the BEAM are sequential tracing (younger runtimes call that distributed tracing) and function call tracing. In this article I am going to talk about the latter.
Continue reading “The Power of Erlang Tracing”
What is faster in Erlang, maps or records? Should I use lists:filter or a list comprehension to remove odd elements from the list? How fast is my random number generator?
Continue reading “erlperf 2.0: benchmarking Erlang code”
Erlang’s virtual machine, BEAM, is incredibly stable. It’s not often that I see SIGSEGV or something more elaborate. But when it happens, what options do I have other than analysing code dump? How do I debug the BEAM itself, when I have a test case crashing the emulator?
Continue reading “Debugging the BEAM”
Work of fiction, inspired by The Configuration Complexity Clock. Any resemblance to actual persons, living or dead, or any production code is purely coincidental.
Continue reading “Keep It Simple”
peer: a new module in OTP 25, designed to facilitate multi-node testing with Common Test.
Erlang distribution is one of the most important features of the VM and runtime. Transparent message exchange between processes running on different nodes is incredible. But how do I test it?
Continue reading “peer: distributed application testing”