Programmer Personality Types: 13 Profiles in Code

Programming Personality Type No. 3: The Future CIO

They can write code if they have to, but a PowerPoint slide about UML documents is their genre of choice. And you'll know you're in a meeting with one because your smartphone will beep with a LinkedIn invitation from them within five minutes of sitting down.

The Future CIO is keen to always seem ready to help, but if you push for more than a quick scan of a document, they'll resort to their favorite programming pattern: delegation. "This is probably better handled by Chris over there."

For the Future CIO, everything is an organizational argument made up of subpoints about skill sets, procurement, and process.

Car: Expensive lease

Relationship status: Applying Kanban principles to stalking the boss's daughter

Household chore: Recharging the iPad

Role model: Steve Jobs

Pet: "You think my hair just does this itself?"

Favorite programming construct: UML

Drink: What the CEO is having

Programming Personality Type No. 4: The Old Guard

If a problem comes up, they say, "We solved that years ago with Multics" or some other long-dead pile of code. They too often reminisce of the days when there were only one or two bugs because the entire program was just a few bytes long. And how they could toggle in their code in less time than it takes your fancy machine to boot and churn through all of the startup code and virus checks.

The real Old Guards like to point out that their favorite computer didn't need to boot because the iron-core memory didn't shut down when the power disappeared. They can talk for hours about how they would take a 2KB array of iron core over a 2GB stick of RAM any day. After all, most hassles that database programmers endure are problems simply because the RAM fails when the power disappears. The old iron-core machines never needed to worry about transactions or synchronization algorithms because iron-core just worked.

Car: Pacer

Relationship status: Married to high school sweetheart

Household chore: Studying a home's history by looking at the molding

Role model: John Adams

Pet: "Those are Fido's ashes next to my grandmother's on the mantle."

Favorite programming construct: JZ EQU

Drink: Old Fashioned

Programming Personality Type No. 5: The Dynamic Typist

If really pushed, lovers of dynamically typed languages will admit that, yes, the troubles of the Middle East and the potential dangers of climate change are worse than having to specify the type of data that will be stored in a variable. But they really would like to avoid being pinned down or constrained. Choosing a type closes doors, and closing doors brings them that much closer to death.

The Dynamic Typist don't see a variable that's now half full because everyone knows it requires a float and an int; they see it as half empty because maybe, just maybe, you'll want to stick a string or a self-balancing B-tree with invertible index. You never know when that might come in handy, they'll point out.

Car: Anything from Zipcar

Relationship status: Open for anything

Household chore: Adding X-10

Role model: Inventor of Swiss Army Knife

Pet: "Whatever finds its way into this terrarium, we'll call it Foo."

Favorite programming construct: Creating variables on the fly

Drink: An empty cup to fill themselves at the fast-food restaurant

Programming Personality Type No. 6: The Faker

They got through college snarfing open source code and flirting with the competent TAs. When it was time for group projects, they showed up with cookies or beer, just to make sure no one noticed how many bugs were in their code. Now they've turned that degree into a real job with responsibilities, but they're smart enough to recognize that a bit of smiling and political savvy can keep the winning streak running.

Maybe they volunteer to take over the thankless jobs, like keeping the build tool running. Then they can scold the other programmers and maybe get them to take over their own tasks. Or maybe they just talk about configuration and the right names for the methods -- anything to avoid actually writing the instructions inside the methods.

Car: One of those Hyundais that looks like a Jaguar

Relationship status: Living with long-term secret significant other

Household chore: Cleaning by dumping everything into a heap in the closet

Role model: Guy from "Catch Me If You Can"

Pet: "Stuffed animals don't shed."

Favorite programming construct: DLL

Drink: Iced tea in a scotch glass

Subscribe to the Daily Downloads Newsletter

Comments