1. What do you do?
2. What are you listening to right now?
The Gold We’re Digging by Parts & Labor
3. Describe your personal style in one word.
4. Fill in the blank. Contrary to popular belief I ________. I’m not sure it counts as a popular belief, but I once had a man on the 71 bus very earnestly tell me that I should go live in Alaska. Apparently if I showed up with a roll of quarters and the clothes on my back then the country’s largest state would take care of me. This is, in fact, not true. While I enjoy snow a little bit I don’t think I’d fancy a winter quite that long, and I always kind of think moose are up to something.
5. If you could build any app, what would it be and why?
Maybe this isn’t a problem everyone has and it’s just me, but I’m constantly running across links or videos or blog posts or whatever that either a) I know I’m going to need/want sometime in the future, but not right now or b) are just generically cool but not of any immediate significance. I’ve experimented with lots of places to put these like delicious (or its many offshoots), random notes files in dropbox or sticky notes in a file somewhere, but all those have the same problem: they do an excellent job at storing the data, but are terrible at reminding me about it. I’ll find something like a Chrome plugin that lets you have ssh sessions in your browser, which is really cool, but I don’t want to use it now (it’s in beta, I don’t have any strong need for it, etc) and so I’ll file it away for later and then when it’s later and I actually could use it, I don’t even know it exists. If I remembered I could easily search my delicious for it, but I don’t even remember that there’s something worth searching my delicious for. What I’d really like is something that I can feed links to, and it’ll periodically (maybe every morning?) pick one at random and tell me about it. That way these cool things can stay at the periphery of my attention, and while I might not get reminded about them exactly when I need them, they won’t be lost down the memory hole forever.
6. What 3 things would you bring to a deserted island? A record player, a copy of London Calling and a robot that I can set to press a button every hundred minutes or so.
7. When did you last laugh? I laugh exactly once a year on April 16, when the winners of the latest round of the Lyttle Lytton contest go live.
8. What is the last thing you bought? Excluding lunch, I recently upgraded my work peripherals with a Das Keyboard, a Microsoft Arc Touch Mouse, a Whitelines notebook and a Lamy Safari fountain pen.
9. What are your biggest pet peeves? I made the mistake of reading something on the internet the other day, only for someone to (without a trace of irony) use the word ‘irreguardless’ in a sentence. I think I threw up a little in my mouth. There are so many things that have to go wrong before that word makes its way across a keyboard, it boggles the mind.
10. Name something that makes you smile. The word ‘assassafrassinate.' There’s a line somewhere between wordplay and incompetence that makes ‘irregardless’ terrible and ‘assassifrassinate’ wonderful, but I’m not certain where it is.
11. If you could teach a college course what would it be? CS 350 – How to Actually Write Software. A lot of practical software development skills –version control, testing, how to effectively collaborate with a team, planning and estimation to name a few – are largely ignored or glossed over in a traditional CS curriculum, or at least were in mine. The most common reason for this I’ve heard is that a Computer Science degree is supposed to impart you with theoretical knowledge about computation, rather than prepare you to be a worker bee in the engines of industry. That may be true, but it ignores the fact that even in the rarified air of academia people still need to produce useful software, and that doing that is orders of magnitude easier when you have the right tools. I use git on every piece of code I write, even projects that never leave my local machine, because it’s just that useful. In my entire time as an undergraduate I never had a professor suggest that I should write an automated test suite to make sure that my code was doing what I thought it was. In retrospect, I wouldn’t be surprised if writing effective tests wouldn’t have bumped a few of my projects up a letter grade. If that would have been so useful to me as a student, I can’t imagine it wouldn’t be just as useful for postgraduates and researchers. Given that these techniques are so fundamental to just about every level of writing code, it’s downright absurd and foolish that they aren’t more widely taught.