• Home
  • About
  • GitHub
  • Keybase
  • LinkedIn
  • Projects
  • Subscribe
  • Twitter
  1. Building Simple APIs with Hyper and Usher

    When writing a web service, I often lean towards using tools that are as minimal as possible. One pretty obvious reason for this is the avoidance of dependencies you either don't want or don't need in your project. Whilst I'm not someone who goes out of their way to avoid…

    Approximate 11 min read published 2 years ago
  2. Easy Concurrency Locking in Erlang/Elixir

    Out of the box, Elixir and Erlang offer a very powerful tool for serializing access to a resource via the GenServer included in OTP and surfaced in the Elixir standard library. As a GenServer processes messages it receives both in order and synchronously, it becomes a great tool for simulating…

    Approximate 5 min read published 2 years ago
  3. Visualizing Developer Download Counts

    This short post is about a small application I wrote to track developer stats, named My Dev Statistics. If you want to skip to the finished product, you can find the application on both the iOS App Store and Google Play. For a long time now, I've wanted to build…

    Approximate 4 min read published 2 years ago
  4. Easily Analyzing Your S3 Buckets

    Amazon S3 is a storage solution used by pretty much everyone these days. Due to this there are naturally a bunch of tools for doing almost everything you can think of with S3. This post is about a tool I wrote to retrieve metadata about S3 buckets. If you don't…

    Approximate 2 min read published 3 years ago
  5. Filtering Duplicate Log Entries via Rust and Runiq

    If you work on any kind of backend system, odds are you're familiar with the pains of trawling through files looking for something specific only to discover huge amounts of entries which are basically all the same thing. Perhaps you have a really cool API that everyone calls all the…

    Approximate 6 min read published 3 years ago
  6. Automatic Bang! Function Generation in Elixir

    Elixir developers typically conform to the standard of returning Tuple structures from functions which can either succeed or fail in order to effectively signal their status to the caller. Whilst this encourages the caller to directly handle the various cases which can arise, sometimes you just know that everything was…

    Approximate 3 min read published 3 years ago
  7. Bulk Indexing with the Elasticsearch Java REST Client

    With the introduction of Elasticsearch v5.0.0, Elastic began to recommend moving to their new REST client for server interactions rather than the transport client that was shipped previously. The intent was to make a HTTP client which would act with little to no interaction with the internal Elasticsearch…

    Approximate 5 min read published 3 years ago
  8. A Year with Cachex in Production

    A little over a year ago I began working on what would become my first real project in Elixir. Without going into too much detail, it was a re-imagination of a legacy system designed to handle many incoming data streams quickly and reliably. It seemed like a good fit for…

    Approximate 6 min read published 4 years ago
  9. Introducing Vessel: A Bridge Between Elixir and Hadoop

    Disclaimer: I should point out that I wrote this project for those who are already working with Elixir and have need of integrating their existing codebases with Hadoop. I'm going to try assume limited knowledge of Hadoop/Elixir within this post - but I apologise if it goes a little…

    Approximate 10 min read published 4 years ago
Page 1 of 1

© 2021 Isaac Whitfield.