Hi, I'm Blake Williams

I'm a full-stack developer living in Boston, MA. I currently work at GitHub where I primarily write Ruby/Rails and a bit of TypeScript. I care a lot about building the right thing and writing great code.

May 1st, 2013

Developing Gems with TDD and Minitest: Part 1

If you’ve ever used Ruby you’d know that Gems are fundamental to any Ruby project. Despite Gems being so important it can be intimidating to write your own gem let alone how you should test them. This will take us through writing and testing a very basic static blog generator.

April 14th, 2013

Wrapping a jQuery plugin with Ember.js Views

Whenever I’m working with Ember I often find myself wanting the functionality that a jQuery plugin provides. It may not be obvious, but we can wrap jQuery plugins inside of Ember views and use these plugins just like any other Ember view.

January 17th, 2013

System Wide Install With rbenv

This post is going to cover installing rbenv 0.4.0 system wide and is largely taken from the old rbenv wiki page titled “Shared Install of rbenv” which was been taken down at some point.

November 3rd, 2012

A brief introduction to Backbone

Backbone.js is about 5kb of awesome that will give your application a basic structure and set of tools that allow you to build client side MVC applications that pulls data from RESTful JSON API’s and then displays and modifies that data based on user events. This is a basic introduction to some core concepts that will help you get started with Backbone.

October 22nd, 2012

I Love Percent Syntax and So Should You

As a Rails developer I sometimes deal with a lot of strings in various ways and it’s a huge pain when the strings require interpolation contain a lot of double quotes. Instead of escaping all of those double quotes you should use percent syntax. Ruby percent syntax gets past this by allowing you to use nearly any character as the delimiter for your string and works with non-interpolated strings, interpolated strings, regular expressions, arrays, and even shell commands.