SWIM: The scalable membership protocol #DistributedSystems #Networking #Protocols
Raft: Consensus made simple(r) #DistributedSystems #Consensus #Databases
TCP Flow Control #Networking #Tech #Databases
A Primer on Database Replication #Databases #Replication #Tech
Exponential Backoff in RabbitMQ #RabbitMQ #SoftwareDevelopment #Tech
Speaking Rabbit: A look into AMQP's frame structure #AMQP #Networking #Protocols
Process registry in Elixir: a practical example #Elixir #Programming #SoftwareDevelopment
Understanding Shell Script's idiom: 2>&1 #ShellScript #Programming #Tech
Getting started with Plug in Elixir #Elixir #Programming #WebDev
The actor model in 10 minutes #SoftwareDevelopment #DistributedSystems #Programming
Rethinking your shebang #Programming #SoftwareDevelopment #Scripting
Stop using tail -f (mostly) #SoftwareDevelopment #Databases #Networking
Creating a RubyGems plugin #Ruby #Gems #Dev
Understanding Bundler's setup process #Ruby #SoftwareDevelopment #Bundler
Vim as the poor man's sed #Vim #TextEditor #Programming
Vim registers: The basics and beyond #Vim #Editor #Programming
Implementing a Priority Queue in Ruby #Ruby #DataStructures #Programming
Enough sed to be useful #Tech #Programming #CLI
Understanding Ruby's idiom: array.map(&:method) #Ruby #Programming #SoftwareDevelopment
The role of a reverse proxy to protect your application against slow clients #Networking #Security #SoftwareDev
Working with HTTP cache #HTTP #Caching #WebDevelopment
An introduction to UNIX processes #Unix #Programming #Systems
Designing good APIs - Avoiding the type marshalling trap #SoftwareDevelopment #APIDesign #Databases