What, Exactly, Is a RESTful Resource?

I was recently looking on the web for a very clear description of what a RESTful resource is. Clear and accurate definitions were few and far between, so I decided I’d write one. What Is a Resource? A resource is: a noun that is unique and can be represented as data and has at least […]

Babies vs. Zombies

I’ve put the slides online for my Boston Ruby Group talk “Babies vs. Zombies”. In the talk I mentioned the excellent paper Big Ball of Mud and the fascinating study “How Many Variables Can Humans Process?”.

The $100,000 Career Mistake Rubyists Make

Are you a good Ruby on Rails developer that loves to code? Have you published a high-quality, successful gem? If not, you may be making a mistake that could cost you as much as $100,000. If this surprises you, there are three things you should realize: Fact #1: If you can create a high-quality, successful […]

Don’t Play Football with a Basketball

The Wicked Good Ruby Conf got off to a great start today with a powerful singing performance by Liana Leahy and a wonderfully inspiring and sobering keynote by Sandi Metz. After the keynote, I attended the talk Wicked Bad Ruby by Matt Aimonetti and it really struck a chord with me. The discussion afterwards with […]

Adding Tabs to Your Rails App Just Got a Whole Lot Easier with Tabulous 2

The tabulous gem has continued to grow in popularity ever since I released it in 2011. Since so many people have found it useful, I decided to give it some love. Tabulous 2 is a complete rewrite, featuring a simpler syntax and new behavior. Tabulous is designed to be perfect for quick prototyping, robust enough […]

So What, Exactly, Is the Purpose of a Rails Controller?

Have you ever hesitated when trying to refactor a controller for simplicity? Sure, you know how to write a controller so that it “works”. You even know how to organize your controllers in a resource-oriented, RESTful way. But when it comes to understanding the purpose of controllers, they’ve always seemed a bit fuzzy. And they’ve […]

Experimenting with the Architecture of Ember.js

What do you get when you cross Ember.js with the Single Responsibility Principle? I recently decided to find out by refactoring the architecture of Ember.js so that each class had only one responsibility. This is the result of my experiment. Three Layers You can think of a software application as having three layers, each having […]

From Ruby to JavaScript

Last Tuesday I spoke at the Boston Ruby Group about strengthening your JavaScript skills. I’ve put the slides online. Enjoy!

Stop Using Single Point Estimates

Estimating how long it will take to develop software is difficult. Fortunately, as an industry we’ve moved away from big-planning-up-front, exhaustive Gantt charts and toward a more agile approach. Unfortunately, we’ve stuck with single point estimates which have some significant disadvantages when compared to range estimates.

Are You a Good Programmer?

If someone asks you to recommend a good programmer, who comes to mind? Do you consider yourself a good programmer? What criteria do you use to judge?