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.*

 
AAPL
$501.11
Apple Inc.
+2.43
MSFT
$34.64
Microsoft Corpora
+0.15
GOOG
$898.03
Google Inc.
+16.02

MacTech Search:
Community Search:

Software Updates via MacUpdate

CrossOver 12.5.1 - Run Windows apps on y...
CrossOver can get your Windows productivity applications and PC games up and running on your Mac quickly and easily. CrossOver runs the Windows software that you need on Mac at home, in the office,... Read more
Paperless 2.3.1 - Digital documents mana...
Paperless is a digital documents manager. Remember when everyone talked about how we would soon be a paperless society? Now it seems like we use paper more than ever. Let's face it - we need and we... Read more
Apple HP Printer Drivers 2.16.1 - For OS...
Apple HP Printer Drivers includes the latest HP printing and scanning software for Mac OS X 10.6, 10.7 and 10.8. For information about supported printer models, see this page.Version 2.16.1: This... Read more
Yep 3.5.1 - Organize and manage all your...
Yep is a document organization and management tool. Like iTunes for music or iPhoto for photos, Yep lets you search and view your documents in a comfortable interface, while offering the ability to... Read more
Apple Canon Laser Printer Drivers 2.11 -...
Apple Canon Laser Printer Drivers is the latest Canon Laser printing and scanning software for Mac OS X 10.6, 10.7 and 10.8. For information about supported printer models, see this page.Version 2.11... Read more
Apple Java for Mac OS X 10.6 Update 17 -...
Apple Java for Mac OS X 10.6 delivers improved security, reliability, and compatibility by updating Java SE 6.Version Update 17: Java for Mac OS X 10.6 Update 17 delivers improved security,... Read more
Arq 3.3 - Online backup (requires Amazon...
Arq is online backup for the Mac using Amazon S3 and Amazon Glacier. It backs-up and faithfully restores all the special metadata of Mac files that other products don't, including resource forks,... Read more
Apple Java 2013-005 - For OS X 10.7 and...
Apple Java for OS X 2013-005 delivers improved security, reliability, and compatibility by updating Java SE 6 to 1.6.0_65. On systems that have not already installed Java for OS X 2012-006, this... Read more
DEVONthink Pro 2.7 - Knowledge base, inf...
Save 10% with our exclusive coupon code: MACUPDATE10 DEVONthink Pro is your essential assistant for today's world, where almost everything is digital. From shopping receipts to important research... Read more
VirtualBox 4.3.0 - x86 virtualization so...
VirtualBox is a family of powerful x86 virtualization products for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers... Read more

Briquid Gets Updated with New Undo Butto...
Briquid Gets Updated with New Undo Button, Achievements, and Leaderboards, on Sale for $0.99 Posted by Andrew Stevens on October 16th, 2013 [ | Read more »
Halloween – iLovecraft Brings Frightenin...
Halloween – iLovecraft Brings Frightening Stories From Author H.P. | Read more »
The Blockheads Creator David Frampton Gi...
The Blockheads Creator David Frampton Gives a Postmortem on the Creation Process of the Game Posted by Andrew Stevens on October 16th, 2013 [ permalink ] Hey, a | Read more »
Sorcery! Enhances the Gameplay in Latest...
Sorcery! | Read more »
It Came From Australia: Tiny Death Star
NimbleBit and Disney have teamed up to make Star Wars: Tiny Death Star, a Star Wars take on Tiny Tower. Right now, the game is in testing in Australia (you will never find a more wretched hive of scum and villainy) but we were able to sneak past... | Read more »
FIST OF AWESOME Review
FIST OF AWESOME Review By Rob Rich on October 16th, 2013 Our Rating: :: TALK TO THE FISTUniversal App - Designed for iPhone and iPad A totalitarian society of bears is only the tip of the iceberg in this throwback brawler.   | Read more »
PROVERBidioms Paints English Sayings in...
PROVERBidioms Paints English Sayings in a Picture for Users to Find Posted by Andrew Stevens on October 16th, 2013 [ permalink ] | Read more »
OmniFocus 2 for iPhone Review
OmniFocus 2 for iPhone Review By Carter Dotson on October 16th, 2013 Our Rating: :: OMNIPOTENTiPhone App - Designed for the iPhone, compatible with the iPad OmniFocus 2 for iPhone is a task management app for people who absolutely... | Read more »
Ingress – Google’s Augmented-Reality Gam...
Ingress – Google’s Augmented-Reality Game to Make its Way to iOS Next Year Posted by Andrew Stevens on October 16th, 2013 [ permalink ] | Read more »
CSR Classics is Full of Ridiculously Pre...
CSR Classics is Full of Ridiculously Pretty Classic Automobiles Posted by Rob Rich on October 16th, 2013 [ permalink ] | Read more »

Price Scanner via MacPrices.net

Apple Store Canada offers refurbished 11-inch...
 The Apple Store Canada has Apple Certified Refurbished 2013 11″ MacBook Airs available starting at CDN$ 849. Save up to $180 off the cost of new models. An Apple one-year warranty is included with... Read more
Updated MacBook Price Trackers
We’ve updated our MacBook Price Trackers with the latest information on prices, bundles, and availability on MacBook Airs, MacBook Pros, and the MacBook Pros with Retina Displays from Apple’s... Read more
13-inch Retina MacBook Pros on sale for up to...
B&H Photo has the 13″ 2.5GHz Retina MacBook Pro on sale for $1399 including free shipping. Their price is $100 off MSRP. They have the 13″ 2.6GHz Retina MacBook Pro on sale for $1580 which is $... Read more
AppleCare Protection Plans on sale for up to...
B&H Photo has 3-Year AppleCare Warranties on sale for up to $105 off MSRP including free shipping plus NY sales tax only: - Mac Laptops 15″ and Above: $244 $105 off MSRP - Mac Laptops 13″ and... Read more
Apple’s 64-bit A7 Processor: One Step Closer...
PC Pro’s Darien Graham-Smith reported that Canonical founder and Ubuntu Linux creator Mark Shuttleworth believes Apple intends to follow Ubuntu’s lead and merge its desktop and mobile operating... Read more
MacBook Pro First, Followed By iPad At The En...
French site Info MacG’s Florian Innocente says he has received availability dates and order of arrival for the next MacBook Pro and the iPad from the same contact who had warned hom of the arrival of... Read more
Chart: iPad Value Decline From NextWorth
With every announcement of a new Apple device, serial upgraders begin selling off their previous models – driving down the resale value. So, with the Oct. 22 Apple announcement date approaching,... Read more
SOASTA Survey: What App Do You Check First in...
SOASTA Inc., the leader in cloud and mobile testing announced the results of its recent survey showing which mobile apps are popular with smartphone owners in major American markets. SOASTA’s survey... Read more
Apple, Samsung Reportedly Both Developing 12-...
Digitimes’ Aaron Lee and Joseph Tsai report that Apple and Samsung Electronics are said to both be planning to release 12-inch tablets, and that Apple is currently cooperating with Quanta Computer on... Read more
Apple’s 2011 MacBook Pro Lineup Suffering Fro...
Appleinsider’s Shane Cole says that owners of early-2011 15-inch and 17-inch MacBook Pros are reporting issues with those models’ discrete AMD graphics processors, which in some cases results in the... Read more

Jobs Board

*Apple* Retail - Manager - Apple (United Sta...
Job SummaryKeeping an Apple Store thriving requires a diverse set of leadership skills, and as a Manager, youre a master of them all. In the stores fast-paced, dynamic Read more
*Apple* Support / *Apple* Technician / Mac...
Apple Support / Apple Technician / Mac Support / Mac Set up / Mac TechnicianMac Set up and Apple Support technicianThe person we are looking for will have worked Read more
Senior Mac / *Apple* Systems Engineer - 318...
318 Inc, a top provider of Apple solutions is seeking a new Senior Apple Systems Engineer to be based out of our Santa Monica, California location. We are a Read more
*Apple* Retail - Manager - Apple Inc. (Unite...
Job Summary Keeping an Apple Store thriving requires a diverse set of leadership skills, and as a Manager, you’re a master of them all. In the store’s fast-paced, Read more
*Apple* Solutions Consultant - Apple (United...
**Job Summary** Apple Solutions Consultant (ASC) - Retail Representatives Apple Solutions Consultants are trained by Apple on selling Apple -branded products Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.