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.


The Elegant Universe

String theory, string theory, string theory. Is it real or imaginary? Who knows? But Brian Greene (former prof at Cornell) sure loves it and wants everyone to believe in it. I'm not convinced.

Smalltalk Best Practices

Want to write code in an Object Oriented Language that is nice for your future self and your friends? This is a good place to start. Provides names to common patterns and pitfalls.


Another one that I really need to write a long review. . .this book is awesome. Hard science, crazy out there ramifications of science that still feel like they might be plausible, and a really interesting story to boot.

Pale Blue Dot

Sobering reflection on how inconsequential we are, populating just one tiny planet in the vast cosmos. But hey, reality check! He then paints a humanistic future, love Carl.

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 use in Basecamp to avoid bloating a controller.



Yeah, best sci-fi of all time and I NEED to write a review. I know. This is so high for me because it (as far as I know), originated a lot of the elements of modern sci-fi that I prize, stuff later found in Ender's Game and the like.

The Dark Side of Why I Write Software

Motivation is a big part of programming for me. Why I do what I do...why write programs when there are many other options for what to do with the hours in which I work? And closely related, why write _this_ kind of program vs another kind of program?


An Amazon Story

This last week I was sitting with friends around a campfire and told the following true story. They found it rather interesting, so I figured it was worth retelling. The truth is, my career has been a really weird one...there's nothing linear about any of the progression through work that I've chosen. It has been a truly wild ride, but I'm getting ahead of myself.


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.


Ready Player One

OMG, so much fun in the nostalgic romp that is this trip through VR and the 80s. Wildly entertaining and worthy of a full length review.

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.


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 corrections in the comments section which I can fold back into the body of the post.