Skip to main content

Benjamin Oakes

Photo of Ben Oakes

Hi, I'm Ben Oakes and this is my geek blog. Currently, I'm a Ruby/JavaScript Developer at Liaison. Previously, I was a Developer at Continuity and Hedgeye, a Research Assistant in the Early Social Cognition Lab at Yale University and a student at the University of Iowa. I also organize TechCorridor.io, ICRuby, OpenHack Iowa City, and previously organized NewHaven.rb. I have an amazing wife named Danielle Oakes.

Filtering for the month March, 2017. Clear

Docker, Locales, and Ruby

by Ben

# Set the locale
RUN locale-gen en_US.UTF-8  
ENV LANG en_US.UTF-8  
ENV LANGUAGE en_US:en  
ENV LC_ALL en_US.UTF-8

Soruce: Docker and Locales.

Fixes invalid byte sequence in US-ASCII in Ruby when using Docker.  Found via this prmd issue.

travis-watch – Stream live Travis CI test results

by Ben

Stream live travis test results of the current commit to your terminal. Exits with the proper exit code too!

Source: juliangruber/travis-watch

Embracing Change: Rails 5.1 Adopts Yarn, Webpack, and the JS Ecosystem

by Ben

With the inclusion of webpack and Yarn, the Rails team is showing a great deal of maturity and humility, recognizing that the web is no longer rendered only from the server, but also dynamically from the client. Not only has the team embraced these changes, but they are incorporating them in such a way as to make it feel like there’s a “Rails Way” to do JavaScript.

Source: Embracing Change: Rails 5.1 Adopts Yarn, Webpack, and the JS Ecosystem – Pixelated

Right to Repair: Why American Farmers Are Hacking Their Tractors With Ukrainian Firmware

by Ben

On its face, pirating such software would seem to be illegal. But in 2015, the Librarian of Congress approved an exemption to the Digital Millennium Copyright Act for land vehicles, which includes tractors. The exemption allows modification of “computer programs that are contained in and control the functioning of a motorized land vehicle such as a personal automobile, commercial motor vehicle or mechanized agricultural vehicle … when circumvention is a necessary step undertaken by the authorized owner of the vehicle to allow the diagnosis, repair, or lawful modification of a vehicle function.”

Source: Why American Farmers Are Hacking Their Tractors With Ukrainian Firmware – Motherboard

peardeck/prometheus-user-metrics

by Ben

User Monitoring for Prometheus

Prometheus, a Cloud Native Computing Foundation project, is a systems and service monitoring system. This project provides the infrastructure you need to do end-user monitoring in Prometheus as well.

Source: peardeck/prometheus-user-metrics

linkerd: Resilient service mesh for cloud native apps

by Ben

Resilient service mesh for cloud native apps

linker-d is a transparent proxy that adds service discovery, routing, failure handling, and visibility to modern software applications

Source: linkerd

Page Objects in Ruby

by Ben

Clean Up Your Acceptance Tests with Mâché — Josh Bassett
natritmeyer/site_prism

What is the Liskov Substitution Principle?

by Ben

Functions that use pointers or references to base classes must be able to use objects of derived classes without knowing it.

Source: What is the Liskov Substitution Principle?

How to win at Tetris (and code)

by Ben

Problems in our code are less like “debt” & more like the clutter of unfilled lines that accumulate in Tetris, slowly but surely reducing our maneuvering room.

Source: How to win at Tetris (and code)

Tetris as a metaphor for technical debt.