Please check out my main blog, Obi-Wan Kimberly Is Your Only Hope, where I write about web development and technical management!


Kimberly Blessing Hi, my name is Kimberly Blessing. I'm a computer scientist, Web developer, standards evangelist, feminist, and geek. This is where I write about life, the Web, technology, women's issues, and whatever else comes to mind.

Also by Kimberly

Geekout Blog Archive

Programming, Old-School Style

I have a fascination with old computers. Growing up, I heard stories of archaic devices used by my grandfather and his colleagues to accomplish their math and engineering work. Then I went through a few machines myself: the stand-alone Pong console, various TRS-80s, an Atari 2600, multiple Commodore 64s and a 128, finally making it into the x86 line. When I got a new computer, the old one didn’t become obsolete trash; it gained a sort of revered status. I’d leave it hooked up, always at the ready, and occasionally I’d take a trip down memory lane and load up some old programs, tinker with something new, or perhaps just bask in the glow of the TV screen/monochrome monitor. Yes, I’m a strange girl.

A DEC PDP-11 Ever since my first visit to the Computer History Museum, I’ve been fascinated by the DEC PDP-11. The PDP-11 was a series of 16-bit minicomputers which were programmed with toggles. Their design was strangely attractive. I saw plenty of PDP-11 parts for sale on eBay and wondered what it would take to build one. I figured there had to be an emulator out there, but I didn’t take much time to look around.

Well, it turns out there is. And there are instructions! Inspired by DePauw University’s (slightly cheesy, but fun) videos on programming the PDP-11, lab[oratory] is posting detailed instructions on using the SIMH simulator to program a simulated PDP-11! So join along in the play and experimentation, and program your very own PDP-11. It may not be as cool as handling those purple toggles, but it’s still fun.

Rock Paper Scissors Lizard Spock

I keep telling people that I’ll play ‘Rock Paper Scissors Lizard Spock’ with them, but I get blank stares in return. How does everyone not know about this game? Learn more from the following video, and watch The Big Bang Theory!

I helped elect a female president!

Yes, I wish I were talking about Hillary! But I’m not.

Instead I’m talking about the ACM elections, and the woman I’m referring to is Wendy Hall, CBE, Professor of Computer Science at the University of Southampton, Fellow of the Royal Academy of Engineering and the British Computer Society, co-founding director of the Web Science Research Initiative, and (if you couldn’t tell) one of my role models. So the votes have been counted and, come July 1, Wendy will also serve a two-year term as President of the ACM. Congratulations!

I should also mention that Wendy received the Anita Borg Award for Technical Leadership from the Anita Borg Institute for Women and Technology at the 2006 Grace Hopper Celebration (GHC) of Women in Computing, for which I was the webmaster — an awesome volunteer opportunity which just happens to be available! If you’ve got skills in WordPress then please apply!

And speaking of GHC, I also need to mention that registration for the 2008 conference is now open! After so many years of attending, stalking Telle Whitney, and volunteering, this year I’m finally going to be speaking on a panel! (Go me!) So, don’t miss this opportunity to interact with thousands of smart, successful, techie women — including Fran Allen!

Gosh I love being a woman in computing.

Code Monkeys vs. Code Ninjas

Software programmer Sara Chipps (yay! a woman!) has written an article titled Natural Programmers (Code Monkeys) vs. Career Programmers (Geeks in Suits). It’s probably the best non-techie explanation of the behaviors, habits, and beliefs of the “natural programmer” that I’ve read — and yes, I completely identified with much of what she wrote.

However, I have to take a step back and address an issue that I have with the two types of programmers she defines and the names she assigns to them.

First there’s the “career programmer (geek in a suit)”. These days I find that career programmers are not geeks, and they’re definitely not in suits (always business casual!). I’ve found that they’re in programming for the money; they learn enough to do their work — perhaps well, maybe even to get to the point of being perceived as geeky. But I also find that these people lack a true passion for the craft of writing code. Sara suggests that the career programmer is more of a business person, concerned with cost effective solutions, but I’m not even sure that’s true anymore. To me, this person’s work is just a job, and if flipping burgers paid as much as programming, they might be doing that instead.

Like Sara, I fall into her other category of “natural programmer”. But I am certainly not a code monkey — I am a code ninja! (Actually, with a nickname like “Obi-Wan Kimberly”, I’m probably a code jedi, but anyway…) I find the term “code monkey” to apply more to the previous category of programmer. Why? “Code monkey” implies that anyone can do what we do and that we work for bananas. “Code ninja”, on the other hand, says that we’re stealth and secretive, jumping out of the darkness when you least expect it. Our code takes you by surprise in its brilliance and our swiftness of execution is legendary. We could do no other job because we have trained for so long, perfecting our natural talent, and nothing else can satisfy our need for control over the systems we affect.

Sara closes her article with some OR logic about which type to hire, however I need to propose a more detailed and different solution. If you have only one programmer working for you, you probably don’t want either of these types — you need someone who really does fall into the gray area between the two extremes. (Yes, they are out there!) And if you have a team of programmers, you need a mix of these two types, and you need to put effort into getting them to communicate effectively with one another. Only then will you have both a killer team and killer code.

Cheap, programmable robot

Via the Institute for Personal Robots in Education:

Scribbler Robot

We’re pleased to let you know that the robot platform we developed for CS-1 instruction is now available for purchase.

The $149.95 platform includes a Parallax Scribbler robot, with an add on board developed at Georgia Tech. The complete diff-drive robot then includes: a color camera, bluetooth connectivity, a speaker, light sensors, and line sensors.

The robot can be controlled and programmed from a PC in Python using the Myro package developed at Bryn Mawr (included with the robot).

It is all part of our new curriculum for CS-1 centered on a robot context. The new textbook is also available online at our website.