When we last saw our Test-Driven Game Loop, we hadn’t really made it very far, at least in terms of production code. This is what...more.
Test Driving an algorithm is a tricky thing. Developers tend to get stuck in one of two ways: They see that they have the algorithm...more.
Recently I was working with a team of two other developers, remote from each other. I noticed that in the morning they would have a...more.
It was RailsConf in 2007. Micah and I were between sessions, with me following him everywhere because he knew people and I did not. We...more.
A while back I wrote a little about bugs. I got a few questions and objections and the most common one goes something like this:...more.
We take responsibility for the correctness of our code by testing it thoroughly. We do not tolerate preventable defects. —from the 8th Light Principles of...more.
Putting extensive business logic in Rails controllers is bad and you should stop doing it. I suppose I should demonstrate why that's true with an...more.
My first exposure to mock objects was in C++, where they are practically indecipherable to the TDD newbie, so I didn't use them. That may...more.
I'm writing this blog from the train, my head hung in shame. I'm taking a course in Game Optimization and today something exceptionally embarrassing happened....more.
If you follow me on twitter @paytonrules you’ve probably seen me griping at various times about writing a testing framework for Objective-C. I’m currently writing...more.
After 3 long years of searching, and several rejections (you know who you are), I finally have an apprentice. I’ve asked him to blog every...more.
The lovely wall you see before you is the wall of my son’s bedroom, freshly stripped of wallpaper. Note the beautiful drywall exposed in some...more.
Oh how fast a week goes, especially when it's short. Did you know that Midsummer is arguably the biggest holiday in Sweden? And did you...more.
After attending tonights got:ruby I became obsessed with and started installing rvm. It worked swimmingly. I’m looking forward to getting my development machine off of...more.
Before I get into some of the details of day #2 at eLabs, let me dispell a few myths about Sweden that my American readers...more.
Today was day one of my Craftsmanswap with eLabs developer Anders Tornqvist, and so far they have treated me with the hospitality and graciousness I...more.
This blog post originally appeared on a blog I maintain for my current game development class. Generally speaking my posts over there are pretty specific...more.
Hi my name is Eric, and I have made a mess. There I said it. I’m not proud of it, but I believe a couple...more.
It’s with great pleasure that I announce the creation of chiPhone, the Chicago iPhone developer’s group, with our first meeting on July 23rd at 6:30....more.
TDD on the iPhone is a challenging experience, especially when you’ve been spoiled by Ruby like I have been, but it can be done. I...more.
While working on the slides for our upcoming talk on TDD for iPhone I asked Eric Meyer why we need the Dependency Inversion Principle. He...more.
Quick announcement, Selenium on Rails has been released, now supporting Rails 2.2 and with the latest Selenium Core. Numerous bug fixes are in this release...more.
A couple of weeks ago I had to add a feature to some code that was written almost two years ago. It was a pretty...more.
Remember when I used to post here? Not that I’ve ever been prolific but there is a reason I haven’t posted in 53 days, well...more.
I went to WWDC last week 1, and while I was there I got a chance to talk to a couple of their engineers and...more.
OCP was defined in 1988 in Bertrand Meyer’s book “Object Oriented Software Construction” as follows: “Modules should be both open (for extension and adaptation) and...more.
I have three step-children and I rarely promise them anything. It’s not because I’m a horrible father, but because a promise is a fundamentally special...more.
I gave a Chirb presentation last night on RubyCocoa, which went reasonably well. I’ve presented the slide here. Please be aware that the slides may...more.
Last year I wrote a RubyCocoa tutorial that’s been aggregated in a few places and referenced a couple times. By my standards it was an...more.
Recently I wrote the beginnings of a blackjack game in Java, and I found myself making a common error. The Java gameplay mechanic uses a...more.
Recently I was adding some accessors to a ruby class on the fly, and I kept getting confused by a certain code block. The code...more.
I hate debugging. Loathe it, despise it, pick your synonym and I’ll use it. Computer programming is building something out of nothing, making the computer...more.
A little more than six years ago I started my first, and hopefully last, job at a massive cubicle farm. On my first day I...more.
Admit it, you’re new to Rails. You just got your new spiffy Rails job, and they gave you a Mac, formerly the computer of long-haired...more.
Last December I went to to StarEast in Orlando because my fiancee is a tester and I well, I like sun. While there I picked...more.
Ever write an entire blog post, spend significant time on it, correct it, and eventually grow to love it, only to discover two months later...more.
I’m a bit overdue on blogging, so in lieu of the normally brilliant and insightful commentary on the state of…er something…I usually put here I...more.
Did I say I was tired yesterday? That wasn’t tired, this is tired. I’m currently training for the marathon, and today I was scheduled for...more.
Well it’s day three and I’m exhausted. As you may have noticed I posted at 3 AM last night, and getting up at 8 AM...more.
Hello again from RailsConf. I’ve gone through five presentations. I don’t have any enormous revelations, and no good pictures yet, but I do have some...more.
Of course if you’re reading this you’re probably at RailsConf so hello from here. I’m right next to you actually, to your right. Yep that’s...more.
Recently I had the pleasure and frustration of working the net-sftp gem for Ruby. Pleasure because it’s a well written library, with an easy to...more.
Occasionally even great developers fall into bad habits, and the rest of us do it more than occasionally. This is especially true when under deadline...more.