Continuous Integration: Early indicators mean inexpensive fixes

Earlier this year, I bought a car—my first new car. Although it fills me with sanctimonious hybrid glee (it really does), it’s making me neurotic with instrument panel indicator lights. The low-tire-pressure indicator after the weather turned cold. The insistent … Continue reading 

Posted in agile, unit testing | Tagged | Leave a comment

Best-Kept Secret: MS Word’s Selection Pane saves time, reduces frustration

It’s probably because I never learned to play first-person shooters, but I have a devil of a time in Word selecting the element I want out of a page full of drawing shapes. Trying to select a text box, I … Continue reading 

Posted in Uncategorized | Tagged , , , | Leave a comment

Running JavaScript… With Sneakers!

Code-review time. I haven’t written significant JavaScript in forevs, but I hit upon a use case well suited to it, had a blast coding it up, and am confident that I’ll be completely mystified by it three months from now. … Continue reading 

Posted in arduino, JavaScript, refactoring | 5 Comments

Come to my Arduino talk: Home-built video game console

This Thursday at CTXNA, I’ll give an intro to the Arduino microcontroller, including a walk-through of how I followed PragPub’s instructions to build a video game console. Please join us! No experience necessary. Interactive and fun. Bring your Arduino projects … Continue reading 

Posted in arduino, electronics | Leave a comment

Legacy Operating Systems and Legacy Languages: If it ain’t broke, it still needs fixing

In my travels I’ve encountered systems chugging happily along on outdated, discontinued, unsupported technology stacks. Apps written in VB6, FoxPro, Classic ASP, still running without a hitch because the kinks had been shaken out years ago… Software users delicately avoiding … Continue reading 

Posted in refactoring | Leave a comment

When to use a Mock and When Not To

When I sit down to write a unit test, my first step is to describe for myself, in English instead of code, what I intend to test. The words I choose give clues as to the structure of the test … Continue reading 

Posted in Rhino Mocks, unit testing | Leave a comment

An Object Lesson in Binary Compatibility

A riddle for you, friends: When is changing a method from return void to return Something a breaking change? If you already know the answer, then why hadn’t you told me? Could’ve saved me a fair bit of embarrassment. Ah … Continue reading 

Posted in Open-Source Software, refactoring | 4 Comments

True Confessions, Public Shaming, and Test-Driven Development

Okay, I admit it. Sometimes I write unit tests second instead of first. I also bite my nails and rest my elbows on the dinner table. But when I’ve got a bug to fix, and I’ve already found the offending … Continue reading 

Posted in unit testing | Leave a comment

Using Syntax to Model the Domain

I’m fascinated by the small syntactic decisions that bring code closer to representing the business domain. Never mind the class inheritance examples from text books (“Dog IS-A Pet,” which has nearly never been relevant), I mean using properties, methods, and … Continue reading 

Posted in DDD | 6 Comments

Diffing Files to Avoid Easy Goofs

A good habit learned at my last job has saved me a lot of embarrassment and bugs (same thing): Before committing a set of changes to source control, I look at the diff of each file. Look at the changes, … Continue reading 

Posted in Uncategorized | 8 Comments