TweetFollow Us on Twitter

March 94 - THE VETERAN NEOPHYTE

THE VETERAN NEOPHYTE

WHY WE DO IT

DAVE JOHNSON

[IMAGE 048-050_Veteran_Neophyte1.GIF]



In the interest of pushing back the boundaries of human knowledge in my own small way, I decided to conduct a little survey via e-mail. I asked only one question:

What's so interesting about programming computers, anyway?

I sent out 87 letters and received 37 direct responses, a 43% return rate! This is a fantastic return rate for a survey. As one respondent wrote:What an interesting survey! Getting hackers to talk about themselves should be easy!

It was.

To alleviate your suspense, here are the top two reasons programmers program, according to my survey:
1. Programmers like solving problems and puzzles. (49%)
2. Programming is a creative outlet. (36%)

In the survey itself I included some hypothetical answers to my own question, as follows:

Do you just like doing puzzles? Is it the money? Was it a horrible accident, and you were supposed to be a doctor when you grew up? Is it because you're really an artist, and computers are the best medium around? Is it because it's the only profession where you don't need to wear shoes to meetings? Is it because you get to hang out with smart people?

Unfortunately, while this accurately conveyed my enthusiasm for the subject, it also completely shredded any objectivity my survey might have had, and skewed the results sharply toward the tight, square little box of my preconceptions. Note that the top reason appears in this list, and furthermore it appears first. Coincidence? I think not. As one alert respondent pointed out, I even blurred the important distinction between what makes programming interesting and what makes it a nice business to be in. Sheesh.

Abandoning rigor and embracing whimsy, I decided to dump all the responses into one big text file and do a word frequency analysis of the whole thing, logging how many times each word appeared. Ignoring the common words likethe and the expected words likeprogram , the winner was problem, at 12 occurrences. Game came in a close second, at 11 appearances. Three words tied for third place, at 8 occurrences:fun, interesting, and think. Nowthis is a satisfying analysis!

Other frequently appearing words were these:puzzle, art, control, creation, enjoy, paid, challenge, complex, efficient, god, high, hooked, money, music, play,and solving. Taken together, they make astrangely accurate mantra about what programming is like, and probably describe in a more complete way than any individual answer why people program.

But let's look again at those top two reasons. In second place we have "Programming is a creative outlet." That fact was mentioned over and over again, but creativity comes in many varieties, and it's interesting to look at the metaphors people chose to describe the act of writing software. Interestingly, they fell into three very distinct categories: programmer as mechanic, programmer as artist, and programmer as God.

The similarities between computer programming and mechanical engineering may be deeper than it seems at first glance:

I got hooked on erector sets when I was young.
-- John Powers

But if programmers are just frustrated machinists, then why don't they get up from their computers and build real machines? Here's why:

On a computer, I can build an amazingly fantastic and elegant gadget, with thousands of working parts all cooperating pleasantly with one another, and I never have to get my hands dirty.
-- Jeremy Nguyen

If you're willing to build your machines behind the glass of a computer monitor, to build them out of logical stuff instead of real stuff, then suddenly the landscape of possible machines becomes effectively infinite. You can build any machine you canthink of, and all those pesky, annoying details like friction and inertia and tensile strength just fall away. For people who like to design machines, and especially for those who aren't so keen on the grease and skinned knuckles, this is a powerful attraction.

Other people chose to compare programming with creating art:

I'm not very good at art, but when I write something that works well I feel like an artist creating a piece of artwork.
-- Kevin Mellander

My father is a painter, and I grew up watching him continually producing new artwork . . . Software is just another medium, less messy, easier to change.
-- Fred Huxham

Programming is definitely a means of expression, and unlike other media software can simulate everyother medium; in Alan Kay's words it's ameta-medium. For those with an artistic leaning this is rich ground, indeed: you can create your artandyou can create new ways of creating art.

My own favorite creation metaphor is programmer as God:

I like it because you can play God, albeit on a microscopic scale. It's hard to explain, but writing code is like creating new life.
-- Dave Hersey

It is the closest I can get to being God (without lifetimes of sadhana). I get to sculpt a little "life-form" that, while admittedly unsophisticated, has a satisfying degree of autonomy.
-- Corey Vian

Since software is something that's dynamic in time and semi-autonomous, it can fairly convincingly imitate living things, in much the same way that machinery often can. But since the software "machines" that computers allow us to construct can be orders of magnitude more complex thanmachines in the real world, their resemblance to life can be much more compelling, much more striking.

The joy of solving problems (or thecompulsion to solve them, as the case may be) seems to be the major reason people program. My favorite survey response of all sums this up nicely:

The reason I program is because I'm a compulsive problem solver and my computer is a never-ending source of problems.
-- Craig Prouse

It's the twin meaning of "never-ending" that I love so much here. The fact that the problems never end is one of those "both blessing and curse" features that computers seem to overflow with. On the one hand, it means that we have an inexhaustible source of puzzles and problems to slake our thirsts, but on the other hand it means that we can never really be finished, and like Sisyphus rolling his stone up the hill, we are doomed to repetitive toil, solving the same kinds of puzzles over and over again.

Here are some of the other reasons people gave, which didn't fall neatly into any category:

It's basically because I have all these ideas in my head, and a computer is the best way to get them OUT of my head . . .
-- Jeff Barbose

Solving the problems is fun, but I must admit that I enjoy the company of the machine -- it's not every day you meet somebody who will associate with you unconditionally.
-- Steve Beitzel

I program to get back at my senior year English teacher. I once got a bad grade on an English paper, and she couldn't give me any concrete reasons why. She just didn't like it. The computer, on the other hand, always gives me a reason why I'm incorrect. It's a game I play with my Mac . . . There are a bunch of rules and it tells me (usually via a bus error) that I broke one.
-- Konstantin Othmer

It's the one thing in my life that is easy to debug.
-- Michael Weingartner

These last two hint at something else that I think might be important. In sharp contrast to the real world, the world of the computer is reassuringly knowable. What this means is thatcomputer problems always have answers. There is always a discoverable reason behind a computer's behavior, and I can't help wondering whether this is one of the major reasons people get such satisfaction from programming.

Most questions we ask about the real world turn out to be hopelessly complicated. How can we improve the economy? No neat and tidy answer to that one. Why does your child love those particular red plastic boots so much? That's not really answerable in any complete way. Why is ice slippery? Why is the sky blue? How do birds know when it's time to fly south? None of these questions have clean answers.

Ironically, though, there seems to be a basic human need tofindanswers. Look at the huge amount of time and energy we spend trying to discover and proclaim truths about our world. Religion, art, and science are all manifestations of the human desire to understand. So it's no surprise that computers, with their fantastically complex but ultimately knowable behavior, are extremely satisfying artifacts to spend time grappling with. Finding the answers can be enormously challenging, but there's always an answer to be found:

It gives me one thing I *know* I can boss around.
-- Jim Luther

Amen.

RECOMMENDED READING

  • Dreams of Reason by Heinz R. Pagels (Simon and Schuster, 1988).
  • The Hidden Life of Dogs by Elizabeth Marshall Thomas (Houghton Mifflin, 1993).
  • Tuesday by David Wiesner (Clarion Books, 1991).

DAVE JOHNSON's favorite book between the ages of 5 and 11 was the World Book Encyclopedia. Sometimes in the early mornings, before anyone else was awake, he'd sneak out of bed, creep quietly through the dark and silent house to the living room, and slip a volume from the shelf. ("M" is fondly remembered to this day: matches, monsters, motors . . . ) Stopping off in the kitchen for a stack of cookies, he'd make his way back to his bed, and stay there reading and generating crumbs as the sun came up.*

Thanks to all the survey respondents and to Jeff Barbose, Michael Greenspon, Bill Guschwan, Mark ("The Red") Harlan, Bo3b Johnson, Lisa Jongewaard, and Ned van Alstyne for their always enlightening review comments. *

Dave welcomes feedback on his musings. He can be reached at JOHNSON.DK on AppleLink, dkj@apple.com on the Internet, or 75300,715 on CompuServe.*

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Adobe Premiere Pro CC 2015 9.0.1 - Digit...
Premiere Pro CC 2015 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous Premiere Pro customer). Premiere Pro CS6 is still available for... Read more
Adobe After Effects CC 2015 13.5.1 - Cre...
After Effects CC 2015 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous After Effects customer). After Effects CS6 is still available... Read more
Adobe Creative Cloud 2.2.0.129 - Access...
Adobe Creative Cloud costs $49.99/month (or less if you're a previous Creative Suite customer). Creative Suite 6 is still available for purchase (without a monthly plan) if you prefer. Introducing... Read more
Tower 2.2.3 - Version control with Git m...
Tower is a powerful Git client for OS X that makes using Git easy and more efficient. Users benefit from its elegant and comprehensive interface and a feature set that lets them enjoy the full power... Read more
Apple Java 2015-001 - For OS X 10.7, 10....
Apple Java for OS X 2015-001 installs the legacy Java 6 runtime for OS X 10.11 El Capitan, OS X 10.10 Yosemite, OS X 10.9 Mavericks, OS X 10.8 Mountain Lion, and OS X 10.7 Lion. This package is... Read more
Adobe Muse CC 2015 2015.0.1 - Design and...
Muse CC 2015 is available as part of Adobe Creative Cloud for as little as $14.99/month (or $9.99/month if you're a previous Muse customer). Muse CS6 is still available for purchase (without a... Read more
Adobe Illustrator CC 2015 19.1.0 - Profe...
Illustrator CC 2015 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous Illustrator customer). Illustrator CS6 is still available for... Read more
Corel Painter 14.1.0.1105 - Digital art...
Corel Painter helps you create astonishing art in a variety of media. Paint with vivid oil paints, fluid water colors, and earthy charcoals. Corel Painter flawlessly recreates the tones and textures... Read more
Pacifist 3.5.4 - Install individual file...
Pacifist opens up .pkg installer packages, .dmg disk images, .zip, .tar. tar.gz, .tar.bz2, .pax, and .xar archives and more, and lets you extract or install individual files out of them. This is... Read more
Dropbox 3.8.4 - Cloud backup and synchro...
Dropbox is an application that creates a special Finder folder that automatically syncs online and between your computers. It allows you to both backup files and keep them up-to-date between systems... Read more

Mazes of Karradash (Games)
Mazes of Karradash 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: The city of Karradash is under attack: the monsters of the Shadow Realms are emerging from the depths.No adventurer is... | Read more »
Battle Golf is the Newest Game from the...
Wrassling was a pretty weird - and equally great - little wressling game. Now the developers, Folmer Kelly and Colin Lane, have turned their attention to a different sport: golfing. This is gonna be weird. [Read more] | Read more »
Qbert Rebooted has the App Store Going...
The weird little orange... whatever... is back, mostly thanks to that movie which shall remain nameless (you know the one). But anyway it's been "rebooted" and now you can play the fancy-looking Qbert Rebooted on iOS devices. [Read more] | Read more »
Giant Monsters Run Amok in The Sandbox...
So The Sandbox has just hit version number 1.99987 (seriously), and it's added a lot more stuff. Just like every other update, really. [Read more] | Read more »
Fish Pond Park (Games)
Fish Pond Park 1.0.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.0 (iTunes) Description: Nurture an idyllic slice of tourist's heaven into the top nature spot of the nation, furnishing it with a variety of... | Read more »
Look after Baby Buddy on your Apple Watc...
Parigami Gold is the new premium version of the match three puzzler that includes Apple Watch support and all new content. You won't simply be sliding tiles around on your wrist, the Apple Watch companion app is an all new mini-game in itself. You'... | Read more »
Swallow all of your opponents as the big...
Eat all of the opposition and become the largest ball in Battle of Balls now available in the App Store and Google Play. Battle of Balls pits you against other opponents in real time and challenges you to eat more balls and grow larger than all of... | Read more »
PAC-MAN Championship Edition DX (Games)
PAC-MAN Championship Edition DX 1.0.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.0 (iTunes) Description: It’s Your World. EAT IT! Get ready for more ghost chain gobbling and frantic action in PAC-MAN® CE-DX! The... | Read more »
incurve (Games)
incurve 1.0 Device: iOS Universal Category: Games Price: $.99, Version: 1.0 (iTunes) Description: Get ready for 2 different gravities Goal is to hit as many white dots on your way up.When you're touching the screen, the dots have a... | Read more »
Crossy Road has its Own Merch Store Now....
Do you like Crossy Road? I mean do you really like Crossy Road? Well then you're in luck! Hipster Whale has opened up a Crossy Road store, so you can show off your fandom via official T-shirts. [Read more] | Read more »

Price Scanner via MacPrices.net

Sale! 13″ 1.6GHz/256GB MacBook Air for $1099,...
B&H Photo has the 13″ 1.6GHz/256GB MacBook Air on sale for $1099 including free shipping plus NY tax only. Their price is $100 off MSRP, and it’s the lowest price available for this model. Read more
iPad mini 4 To Be Upgraded To iPad Air 2 Spec...
There’s a certain inevitability about making Apple product predictions this time of year. Come September, we can pretty reliably count on the release of refreshed iPhones, along with the iOS 9... Read more
Apple restocks refurbished Mac minis for up t...
The Apple Store has restocked Apple Certified Refurbished 2014 Mac minis, with models available starting at $419. Apple’s one-year warranty is included with each mini, and shipping is free: - 1.4GHz... Read more
13-inch 2.5GHz MacBook Pro on sale for $899,...
Best Buy has the 13″ 2.5GHz MacBook Pro available for $899.99 on their online store. Choose free shipping or free instant local store pickup (if available). Their price is $200 off MSRP. Price is... Read more
21-inch 2.9GHz iMac on sale for $1299, save $...
Best Buy has the 21″ 2.9GHz iMac on sale today for $1299.99 on their online store. Choose free shipping or free local store pickup (if available). Their price is $200 off MSRP, and it’s the lowest... Read more
Free Image Sizer 1.3 for iOS Offers Photo Edi...
Xi’An, China based G-Power has announced the release of Image Sizer 1.3 for the iPhone, iPad, and iPod touch, an important update to their free photo editing app. Image Sizer’s collection of easy to... Read more
Sale! 13″ 1.6GHz/128GB MacBook Air for $899,...
B&H Photo has the 13″ 1.6GHz/128GB MacBook Air on sale for $899 including free shipping plus NY tax only. Their price is $100 off MSRP, and it’s the lowest price available for this model. Read more
13-inch Retina MacBook Pros on sale for $100...
Best Buy has 13-inch Retina MacBook Pros on sale for $100 off MSRP on their online store. Choose free shipping or free local store pickup (if available). Prices are for online orders only, in-store... Read more
Will BMW’s i3 Electric Vehicle Be The Automo...
The German-language business journal Manager Magazin’s Michael Freitag reports that Apple and the German performance/luxury automaker Bayerishe Motoren Werke (BMW) are back at far-reaching... Read more
Sale! $250 off 15-inch Retina MacBook Pro, $2...
B&H Photo has lowered their price for the 15″ 2.2GHz Retina MacBook Pro to $1749, or $250 off MSRP. Shipping is free, and B&H charges NY sales tax only. They have the 27″ 3.3GHz 5K iMac on... Read more

Jobs Board

*Apple* Customer Experience (ACE) Leader - A...
…management to deliver on business objectives Training partner store staff on Apple products, services, and merchandising guidelines Coaching partner store staff on Read more
Project Manager - *Apple* Pay Security - Ap...
**Job Summary** The Apple Pay Security team is seeking a highly organized, results-driven Project Manager to drive the development of Apple Pay Security. If you are Read more
*Apple* TV Product Design Internship (Spring...
…the mechanical design effort associated with creating world-class products with the Apple TV PD Group. Responsibilities will include working closely with manufacturing, Read more
*Apple* Watch SW Application Project Manager...
**Job Summary** The Apple Watch software team is looking for an Application Engineering Project Manager to work on new projects for Apple . The successful candidate Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.