Smarter Rails Services with Active Record Modules

MVC is Not Enough! We're familiar with the MVC (Model-View-Controller) pattern that Rails offers us––our models map to database tables and wrap our data in objects; controllers receive requests for data and serve up data to the views; views present the data. A common analogy is that of a… »

Redis as a Shared Data Store Between Rails Apps

In my previous post, we laid out a few scenarios in which two (or more!) separate Rails applications need to access the same data. Normally, shared data + lots of data === lots of expensive and slow database queries. One solution to this problem is to create a very special database that… »

Managing Multiple Databases in a Single Rails Application

What? Why? It may sound crazy at first, since most of the Rails applications we tend to work with connect to just one database. But, it actually isn't that unusual to have a single app communicate with more than one database. Consider the following use cases: source You have a… »

Executable Elixir: Working with Escripts

In my previous post, we built an Elixir OTP application that implemented a supervisor tree to clone down repositories and check them for code quality with the help of Credo. Now, we'll build a command line interface for our application and make it executable with the help of Elixir's escripts.… »

Elixir Linter: Building an OTP Elixir Code Quality Engine with Credo

While learning Elixir, I've found that it's often-times similar feel to Ruby can be both a blessing and a curse. One the one hand, its semantic and eloquent style makes it feel familiar and manageable. On the other hand, being a part of the well-established Ruby community has spoiled me… »