• Home
  • About
  • GitHub
  • Keybase
  • LinkedIn
  • Projects
  • Subscribe
  • Twitter
  1. 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 a year ago
  2. Achieving Multiple Routing Keys in RabbitMQ Exchanges

    One of the key features inside RabbitMQ is the ability to easily route messages between exchanges and queues, using any number of provided routing patterns. Out of the box, RabbitMQ provides a variety of algorithms to use when routing (based on the AMQP). You can route using the following algorithms:…

    Approximate 5 min read published a year ago
  3. 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 a year ago
  4. 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 2 years ago
  5. 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 2 years ago
  6. Stash: a user-friendly wrapper for ETS/DTS caching in Elixir

    Erlang (and by extension, Elixir) comes with a sweet little memory storage library called ETS (Erlang Term Storage). This provides an awesome way to store a whole bunch of values in memory, without having to write your own implementation, or pull in large third-party libraries. The issue with ETS is…

    Approximate 1 min read published 3 years ago
  7. Writing SipHash: my introduction to NIFs in Elixir

    After recently discovering SipHash when searching for a solid algorithm to use in another project, I decided to take a shot at writing an implementation in Elixir as an exercise (having only started picking up Elixir in the last few weeks or so). The project is available on GitHub and…

    Approximate 3 min read published 3 years ago
  8. Introducing Oryx; a convient scaffolding library for Node.js and Express

    Say hello to Oryx. Oryx is a project I have been working on for a little over a month now, born from another project I'm currently working on (but haven't yet released). It's designed to be a fairly straightforward way to set up an Express app to use models and…

    Approximate 2 min read published 3 years ago
  9. Java 8 Custom Collectors: Jackson ArrayNode

    Streams are one of the niceties provided in JDK 8 and they provide extreme flexibility to the user. They make it extremely easy to transform Collections in some way, either serially or in parallel. One of the most awesome things about Streams is that they're extremely extensible. The example we're…

    Approximate 4 min read published 3 years ago
  10. Using MongoDB with Elixir, Phoenix and Ecto

    This is as much for my reference as anyone else's, so I hope everything is clear enough for newcomers. Update: Refer here for an example project following the method below. Due to having gotten a little bored with Node.js in recent times, and also a lack of engagement with…

    Approximate 5 min read published 4 years ago
Newer Posts
Page 2 of 3
Older Posts

© 2019 Isaac Whitfield.