Serializable Service Objects

I have to admit, I really like using Service Objects when I'm working in Rails. By which I mean, a tableless object that has domain knowledge for a particular interaction.

Malachite: Go inside Rails

A couple of weeks ago, I was fiddling around with using FFI to call code written in Go.


Refactoring by Martin Fowler should be required reading for every developer that's been professionally coding for at least a year

How I Review Code

Ok, I've had a few beers, and I've got my favorite record playing (2112 by Rush, of course) so now I can write about code reviews.

The New Turing Omnibus

The New Turing Omnibus is a collection of 66 essays in Computer Science, written by A.K. Dewdney. Just as the title would suggest, it's meant to evoke the imagery of a bus traveling through the countryside taking in the scenery of a nice sabbatical.

Reading List Update

A long time ago I brought up the matter of reading Computer Science books to backfill my education on the matter.

Why I'm excited about React.js

Even after a bad experience with client-side MVC, I'm excited to try React (it's totally different). The Flux pattern detangles client-side spaghetti and makes code which is more reusable and more easily reasoned about.

Co-Controllers in Rails

Four months ago, I started work on a new product. My coworker and I were talking about strategies we wanted to take on this green field project, and we came across a thought-provoking gist by DHH. I'm not fully aware of the whole origin story of it, but his Tweet indicates it's a pattern they u...

Setting Up Go

Having helped a couple dozen people get going with Go

Introduction to Go (golang), Part 1

If you read this blog for any amount of time you’ll know that I really like technology, specifically web development technologies. I’ve written about my experiences with Ruby on Rails, Batman, and a few curiosities along the way.

Solving a Hard Problem for Ruby with Go

About a year ago, I was tasked with solving a hard problem (a tricky resource reservation problem with arbitrary quantities and spans). As with all problems, there were constraints in this case use Ruby, use MySQL, make it respond in under 100ms, handle spikey traffic.

ActiveModel: Model

I started reading ahead into ActiveRecord…whoa…that’s some crazy stuff right there. Mind was blown with the sprawling nature of it…so many avenues and byways of logic, it’s going to take some serious time to get to the bottom of that. In the mean time, let’s jump into ActiveModel in earnest....

ActiveSupport::Concern Digression

It happened again. While reading through ActiveModel I realized that I had skipped over something cool in ActiveSupport, so I’m going to circle back and cover it.

ActiveModel: Autoloading Digression

Having just returned from vacation I now continue my read through of the Ruby on Rails source code by looking at Active Model.

ActiveSupport: Testing and Stringy Booleans

One of the things that I really like about the Ruby community is the serious focus on testing. When you’ve really got your testing dialed in, there’s a tremendous sense of peace knowing that you can refactor to your heart’s content…and add new functionality of course…that too.

ActiveSupport: Self Deprecation and Deprecations

As I write today’s journal, I am struck with how I’m not the ideal tour guide of the Rails source. Having never contributed to the code and coming at it with fresh eyes, I’m bound to get things wrong in my notes here. Hopefully when I do, you fabulous readers out there can provide some corre...

ActiveSupport: thanks, try, tap

The more time I spend with the Rails source, the more I appreciate it. I’ve always appreciated it for what it could do, but now I’m appreciating it directly, for what it is. I find it to be quite elegant, pragmatic, aesthetically pleasing, and educational. Inside the black box, it’s...

ActiveSupport: Hash Extensions

At RailsConf this year, Aaron Patterson talked a bit about “aggressively trimming negativity” from his life and focusing on the positive things. I’m working on that as well, which is part of the genesis of this Rails source journal. People like to complain about things, the more familiar the...

ActiveSupport: Humor, Defaults, Security

Reading the source of Rails gives insight into the minds of the contributors over the years. It lets you know how they like to write code (of course), but it also gives you little glimpses into the personalities of particular people who shaped Rails in big and small ways. As a reader, you wa...

ActiveSupport: Array Extensions

It seems like such a simple thing, but I’m really enjoying reading the source of Rails. I’m finding all sorts of hidden gems (ouch).

Reading the Source of Ruby on Rails

I have decided to read the whole source of Ruby on Rails and make notes as I work my way through it. I have used the framework for far too long without doing such an obvious step and have just accepted the “magic” of how things work. Well, I’d like to see how the magic is made, and perhaps i...