Developer divide: 19 generations of computer programmers

If you're searching for a fountain of youth, the easiest way to get that feeling of continual rebirth is to hang around a few tech product launches. Every new rollout comes with the fresh, unabashed feeling that this has never been done before. Ever.

But it has. Apple has been bringing us "one more thing" for more than 30 years. Even the iconic commercial introducing the Macintosh is nearing 29 years old. Newness has never been so old.

PROGRAMMER PICKS: 6 tools for rapid mobile development

[ Get paid for your IT war stories. Send your tale to offtherecord@infoworld.com; if we publish it, you'll receive a $50 American Express gift cheque. | Learn how to work smarter, not harder with InfoWorld's roundup of all the tips and trends programmers need to know in the Developers' Survival Guide. Download the PDF today! | Keep up with the latest developer news with InfoWorld's Developer World newsletter. ]

Hype notwithstanding, the computer industry has already been through a number of generations. IBM has roots in tabulating companies that began about 130 years ago. That's three 40-year generations of tabulation and computing work without overlap.

In practice, new generations overlap quite a bit. The Internet is easily more than 30 years old, but it wasn't widely open to nonresearchers until about 20 years ago. During those 20 years, there have been at least three different bubbles, each with a feeling all its own.

These generations each have a distinctive flavor, often defined by a programming language or technology. They burst out with newborn fervor before settling into a comfortable middle age. They may not be on the top of the pop charts after a few years, but they're often still kicking because software never really dies. It's always running in some corner of a stack, somewhere somehow.

These new technologies often group programmers by generation. When programmers enter the job market and learn a language, they often stick with the same syntax for life -- or at least as long as they can before having to make a switch. It's not that it's hard to learn a new language; they're all pretty similar underneath. It's just that you can often make more money with the expertise you have, so the generations live on.

Here is our guide to some of the more dominant tech generations in computer history, as embodied by the programmers who gave them life. The list is far from complete, but if you've been coding for any amount of time, you will probably recognize many of these generational traits in yourself, your coworkers, and the programming community at large.

Punch-card programmers

The '60s-era computers received their instructions from a stack of card with punched holes, a scheme that dates to the earliest programmable looms for weaving cloth. Some enterprise programmers talk about old software as "dusty deck," which is largely a metaphor. There was recently a story about a punch card programmer for looms in England that still use the old technology to make lace.

Language of choice: Fortran

Special skill: Not dropping the deck of punch cards

Social media strategy: Joining the right country club

Other career choice: Advertising

Clothing: Dark flannel suit

Rhetorical tic: "They say there's a need for five computers, but I think doubling or tripling that estimate would be more accurate."

Car: Oldsmobile

Song: Ella Fitzgerald's "Mack the Knife"

Favorite artifact: Wreath made of punch cards

Space Shuttle programmers

This crew just retired with the Space Shuttle. During their years, they worked with 8086 chips and kept the shuttles running by searching eBay for replacement hardware. The Space Shuttle computers may not have had much memory, but they traveled farther and faster than all of the biggest mainframes or fanciest racks.

Language of choice: Assembly code

Special skill: Remembering which register is already swapped to RAM

Social media strategy: Logged into Facebook once last year; has friended spouse and two neighbors

Other career choice: Disco lighting designer

Clothing: Leisure suits

Rhetorical tic: "If we don't do it, the Russians will win."

Car: Cadillac Eldorado

Song: Frank Sinatra's "Fly Me to the Moon"

Favorite artifact: 8086 chip

Cray programmers

There was a time when the fastest computers were built by a relatively small company run by an enigmatic genius who spent his off-hours digging tunnels in his basement. That's a true fact about Seymour Cray, the genius who built the first generation of machines designed for big data sets and complicated mathematical analysis.

Language of choice: Cray's automatically vectorizing Fortran

Special skill: Knowing how to set up loops so that the Fortran compiler could vectorize them

Social media strategy: Going to the boss's July 4 BBQ and the company holiday party this year

Other career choice: NASA rocket scientist

Clothing: Short-sleeve white shirt with pocket protector

Rhetorical tic: "It's a classified project supported by the DoD."

Car: Nondescript sedan that blends into the NSA parking lot

Song: Wendy Carlos and Benjamin Folkman's "Switched-On Bach"

Favorite artifact: Cray sitting in the National Cryptographic Museum outside Fort Meade

Cobol programmers

The first big adopters of computers never would have succeeded without a simple mechanism for writing software that supported the core business. Cobol was the first great tool for writing what the enterprise programmers call "business logic."

Other language of choice: Fortran

Special skill: Trying to keep on using self-modifying code like ALTER X TO PROCEED TO Y

Social media strategy: Sends out Christmas cards printed on paper

Other career choice: Stereo designer

Clothing: Tracksuit left over from an early morning mall walk

Rhetorical tic: "It's cool."

Car: Honda Civic

Song: Gillian Hills, "Zou Bisou Bisou"

Favorite artifact: Something signed by Grace Hopper

Basic programmers

It was first invented to help Dartmouth students learn how to write endless loops, but it became the dominant language of the early personal computer generation when Bill Gates released Microsoft Basic. All of the early games and software for the PCs were written in Basic. Today it lives on as Visual Basic, a popular language for anyone using the .Net platform.

Other language of choice: Assembly code

Special skill: Using GOTO without creating spaghetti code

Social media strategy: Going to Studio 54

Other career choice: Fast-food restaurant developer

Clothing: Bell bottoms

Rhetorical tic: "It's easy."

Car: Last convertible

Song: Blondie, "Heart of Glass"

Favorite artifact: Cassette version of Microsoft Basic

C programmers

The language began as one step above assembler, but grew hand in hand with all of the variations of Unix. Today it's still used by those who love Unix and its latest dominant variant, Linux. It remains the tool of choice for those who want to program "close to the metal" and not rely on automatic mechanisms like garbage collectors.

Other language of choice: C++

Special skill: Remembering to free everything malloced

Social media strategy: Posts to Usenet three times a month

Other career choice: Bell telephone switch technician

Clothing: Red Hat T-shirt from the early days

Rhetorical tic: "Wouldn't you rather handle the memory yourself?"

Car: Original Toyota Land Cruiser

Song: Something by the Ramones

Favorite artifact: Bell Labs coffee cup

C++ programmers

When C programmers looked at the idea of object-oriented programming, they created C++, a baroque version that worked best when the programmer was able to keep track of all the complicated ways code could interact. It took all of the garage-grade DIY intensity and added another way for programmers to prove themselves worthy.

Other language of choice: C

Special skill: Multiple inheritance

Social media strategy: Friendster

Other career choice: Pinball wizard

Clothing: Jeans jacket with safety pins

Rhetorical tic: "Java pretty much broke object-oriented programming."

Car: Ford Explorer

Song: The Clash's "Clash City Rockers"

Favorite artifact: Borland C++ T-shirt

Objective-C programmers (first generation)

There are two groups of people who fell in love with Objective-C: the people who bought a NeXT machine and those who bought an iPhone. The first generation went on to rescue Apple in its darkest days and pull it back from the brink.

Other language of choice: Smalltalk

Special skill: Using InterfaceBuilder

Social media strategy: Subscribes to 42 mailing lists

Other career choice: Wall Street investment banker

Clothing: Hawaiian shirt

Rhetorical tic: "You mean C++ doesn't do that for you?"

Car: Mazda RX-7 or BMW 325

Song: Anything by Bob Dylan, Grateful Dead, Cat Stevens, or anyone else liked by Steve Jobs

Favorite artifact: NeXT machine

Perl programmers

The simple language for manipulating text files appeared around the same time as the Internet, so when people needed to fix Web servers, they turned first to Perl. If you have text in one format and need to change it -- "massage it," in Perl parlance -- it may only take 10 to 20 characters. Most of the Perl scripts may be short, but that never stopped some true believers. Slashdot, after all, was built with Perl.

Other language of choice: Unix shell scripts

Special skill: Regular expressions

Social media strategy: Arguing on Slashdot

Other career choice: Roboticist building simulated dinosaurs for malls

Clothing: Jacket and T-shirt

Rhetorical tic: "It's the duct tape of the Internet."

Car: Tuned Honda Civic

Song: Pantera's "Cemetery Gates"

Favorite artifact: First edition of O'Reilly's Perl handbook

PHP programmers

Many PHP programmers fell into PHP by accident. They were creating HTML, and they needed a bit of dynamic logic. One tag led to another, and they found themselves creating websites and content-management systems with the code.

Other language of choice: JavaScript

Special skill: Juggling the coding layer and the HTML markup

Social media strategy: More than 1,000 friends on Facebook; still logs into MySpace

Other career choice: Mortgage broker

Clothing: T-shirt depicting logo of pre-bubble startup you've never heard of

Rhetorical tic: "Monetize the eyeballs."

Car: Aging SUV

Song: The Cure's "Just Like Heaven"

Favorite artifact: Orange moped from Kozmo

Java programmers

It was the first great serious language for the Internet, driven by the promise of running everywhere. The desktops never surrendered to the server farms, but the introductory programming classes did. Today it lives on in the hearts of Android programmers.

Other language of choice: Pascal

Special skill: Creating extralong variable names in camel case so that the code is self-documenting

Social media strategy: Attends local Java Users Group meeting each month; checks Java.net account for new meetings

Other career choice: Y2K programmer

Clothing: Java One polo shirt

Rhetorical tic: "The JVM will just handle it in another thread."

Car: Mazda Miata

Song: Talking Heads' "Wild Wild Life"

Favorite artifact: Something signed by Jim Gosling

C# programmers

They fell in love with Java but remained loyal to Microsoft, perhaps because the boss insisted on keeping it a Microsoft shop. The code looks similar. The idioms work the same way. It's pretty much the same as Java, but with a few nice fixes worked into the mix.

Other language of choice: .Net

Special skill: Navigating the .Net documentation

Social media strategy: Wondering whether Skype counts as social media

Other career choice: Starbucks barista

Clothing: Freebie Windows 98 tennis cap

Rhetorical tic: "It's really more efficient than the JVM."

Car: Toyota Prius

Song: Nirvana's "Come As You Are"

Favorite artifact: A Windows 8 phone

JavaScript programmers (first generation)

The first group of JavaScript programmers weren't really programmers but Web designers who needed their page to do a bit more. Many just wanted to check the input to make sure it was legit, but an annoying few ushered in the unending era of garish animations.

Other language of choice: HTML

Special skill: Remembering to put the function between script tags

Social media strategy: Going to a friend's GeoCities page

Other career choice: Chain restaurant manager

Rhetorical tic: "It works on IE 5.5 but not 6.0 yet."

Clothing: Parachute pants

Car: Ford Taurus

Song: Beastie Boys' "So What'cha Want"

Favorite artifact: Netscape Share Certificate

Ruby on Rails programmers

It takes all of 10 minutes to wrap a nice website around MySQL, then years to fiddle with it. The Ruby language offers a clean, low-punctuation syntax, while the Rails framework makes it easy to type the smallest files around. It's almost as if it were designed by carpal-tunnel sufferers.

Other language of choice: SQL

Special skill: Getting your stack to run on JRuby

Social media strategy: Writing a personal version of Facebook in 20 lines of code

Other career choice: Molecular gastronomist

Clothing: Plaid shirt and jeans

Rhetorical tic: "You just need a few tables and you're done."

Car: Minivan

Song: "The Rails Song"

Favorite artifact: 37 Signals T-shirt

Objective-C programmers (second generation)

The second generation of Objective-C lovers appeared during the app gold rush after Apple opened up the iPhone to apps written by outsiders. Suddenly a language slowly dying was reborn.

Other language of choice: JavaScript

Special skill: Figuring out how to make the layout manager work

Social media strategy: Posts pictures to Instagram and Hipstamatic but never uses words

Other career choice: Mortgage foreclosure processor

Clothing: Hoodie

Rhetorical tic: "This will sell millions."

Car: BMW

Song: Feist's "1234" or anything else chosen for an Apple commercial

Favorite artifact: iPod with a wheel

This story, "Developer divide: 19 generations of computer programmers" was originally published by InfoWorld .

1 2 Page
Join the discussion
Be the first to comment on this article. Our Commenting Policies