• Java Result Type

    Result Type Result.java is a custom type. Code can be found here It is heavily modeled off the Result Type that exists in other functional and ML Languages (ex: Elm, Haskell, Rust). As described by the Rust documentation, “Result is a richer version of the Option type that describes possible...


  • React Patterns

    To wrap up my process of redux, I wanted to write a blogpost about a front end pattern from one of my previous projects that works well with redux. This post will go into how to break out code into separate files that will consolidate state, dispatching actions, and making...


  • React Redux

    The next step of the redux journey was to build out react-redux. Feel free to have a more detailed look at my code here. React Redux allows us to inject the state into our components. I also decided to inject in commands which are in charge of dispatching actions and...


  • Redux

    In order to have a better understanding of how redux works and the benefits of it I decided to rebuild it with some slight modifications inspired by one of my mentors. This post does assume knowledge of the basics of redux. It will go into the implementation of redux and...


  • Elasticsearch

    Use case at Edovo The company I work for, Edovo, had the desire rearchitect an old content system and rebuild it using Elasticsearch. I had the pleasure of working on this project. This being my first time using Elasticsearch I learned a lot. This post goes into how we architected...


  • Domains and Domain Name Servers


  • Including Files in Elixir

    When I first created my Elixir Phoenix project, I immediately noticed the wide use of alias, import, and use. While trying to understand the preexisting code, it led me to feel quite confused. Here’s a brief summary of what I learned, although for more information see the documentation alias alias...


  • Elixir Processes

    Elixir’s power comes from ability to handle concurrency very well. This blogpost and the next blogpost cover some basics to get started with concurrency in Elixir. Process vs. Threads A brief background on a thread vs. process. Both are independent sequences of execution. The main difference between the two is...


  • Plug Vs. Rack

    I’ve recently been dabbling a bit into Elixir and Phoenix. The often used analogy is plug is to Phoenix what rack is to Rails. As I was trying to understand plug I often tried to compare it to something that I was a little more familiar with - Rack. Here’s...


  • Dependency Inversion Principle

    This stands for the “D” in the SOLID principles. Formally the definition states: “High level modules should not depend on low-level modules, instead both should depend on abstractions” and “abstractions should not depend on details” So this means the abstraction layer should between the high level and low level classes,...


  • Comparisons of Middleware

    A few weeks back I had a blogpost that briefly defines middleware. For this post I wanted to go a bit further into middleware, how I used it, and different ways it can be used. How I Used It I used middleware for returning the appropriate Handler. A class that...


  • Arrays vs. ArrayLists in Java

    In Java, List is an interface. Two common classes that implement the List interface are ArrayList and LinkedList. The Java documentation states, the classes that implement the List interface are an ordered collection. It allows for operations such as accessing elements and inserting each element at a specific point. In...