alltom.com

Thoughts On: Every Programmer is Different

This week offered a fun juxtaposition of ideas:

It reminded me of one of my struggles during the research that produced my debugger, Theseus. I wanted to see how people used debuggers while programming, so I invited six people to the lab, gave them programming challenges, and took notes.

While it was possible to draw general conclusions about some aspects of how people code, I almost didn't want to. Every single one of those people had such different approaches to using debuggers that all I really wanted to do was study more programmers.

If the distribution were bimodal (e.g. there are people who use debuggers and people who don't), then even with N=6 people, I would have likely seen two people who were alike. But although my memory of the interviews is fuzzy, I distinctly remember being hesitant to put any of the people I watched into the same group.

So when it comes time to evaluate a software language, library, or tool, I have to resign myself to several facts:

So how can a team decide between using Django and Meteor for a project? Between Go and Rust? Promises and callbacks?

I dunno. Poll all the stakeholders?