Reflections on 10+ Years of Pairing – What Works, What Breaks, and What’s Next

I started pair programming in 2000 on my first real software job, while I was still working on a computer science undergraduate degree. I’ve been mostly pairing in daily practice since then. First Impressions Matter My earliest perspectives on pairing are useful because I’ve seen bad results when people are denied the chance of finding […]

Editing the Future – Light Table, and Atom, and Then What?

Github recently announced their project to create their own programming editor called Atom. (Nice logo! *wink*) If you haven’t seen it, here’s a great hands-on post showing off its features. In 2012, Chris Granger announced a project called Light Table, which I think was a recent mile marker on the same road as Atom. Here’s […]

Testing In-House iOS Apps with a Simple Python Web Server

There’re a couple of ways to distribute iOS apps. Everyone knows about the App Store, but the more obscure modes of internal distribution are less common and more opaque. For instance, if you’re experimenting with Enterprise in-house distribution, you’re likely using some sort of mobile device management software. But what if you are a developer […]

Shared Understanding: Building Languages and Communities Around Software

Sometimes it’s hard to say the thing we want to see. As a dad, I’m fascinated by human language development; and as a software maker, I’m constantly engaged in sharing mental models. Atoms spend a lot of time communicating with customers to bring a shared vision to reality. Reflecting on that practice, I recently discovered […]

HTML5 Date Inputs and Ember.js

My team recently needed a date picker in our web app. We wrote tests and implemented a simple text field first as scaffolding. Call it YAGNI if you want — we really just weren’t excited about choosing from the long list of time-forgotten, unlovable JavaScript date picker widgets out there. Surprises from Chrome The next […]