I saw a post on LinkedIn that Professor Brad Myers of Carnegie Mellon received a Perlis award for human-centered methods to democratize programming.

This brought up some memories for me. I applied to both Carnegie Mellon and MIT for college, and their human-computer interaction departments were really interesting to me. I think I got accepted to at least one but I can’t remember. Instead I chose to go to Georgia Tech, and then after a semester transferred to a small liberal arts college to finish my computer science degree. After graduation I worked at a nonprofit that is large but whose software development team was small.

For a while I thought my choices had meant giving up on an interest in research and human-computer interaction. But instead I’ve ended up learning more about human-computer interaction by being out in the industry. At the nonprofit I asked “why is writing software for this organization so hard? The needs are straightforward. We should be able to write this software quicker and more reliably with more junior developers.” Since then I’ve joined Big Nerd Ranch, a melting pot of different software platforms and approaches, with many developers investigating the latest innovations in different technologies. I’ve learned from all of them and been inspired by some.

I’ve come to a professional focus over the years, and recently I’ve started summarizing it as “making software easier through removing accidental complexity and promoting evolutionary design, good abstractions, and end-user programming.” I’m glad that others are researching from a theoretical starting point, but for myself I’m glad to be learning and experimenting about these things from a hands-on starting point. If nothing else, it’s a great way to validate that human-centered computing isn’t just a university hobby: it’s an attempt to meet real needs at real organizations like the nonprofit I worked at, and like our clients at Big Nerd Ranch.