Some musings about the life of a programmer....
Two weeks ago, we held the second annual Oracle PL/SQL Programming conference (I talked about it in last week's blog on the Test-A-Thon). I gave the keynote speech on the first day. It was titled "Wake up and smell the methodologies". Generally, I urged PL/SQL programmers to take a look at the various methodologies out there, such as Extreme Programming, Structured Programming and Agile Software, to see how they could help our development practices.
But I started the keynote with some thoughts regarding the basic nature of our "work." And I thought you might like to read about them here, as well.
The basic idea is: wake up and smell the roses!
We programmers are incredibly fortunate people. Think about what it is we do to make a living. We sit around and think about stuff, that is, we use our
(brain),
and then we

(type it into the computer),
and then our employer gives us

(a very nice salary).
Wow! That is really cool. It is almost like getting paid to write poetry or letters to your sweetheart.
And here's another way of looking at it: when we write a program, we are generally solving logical puzzles. These puzzles happen to help a company solve a particular problem. Nonetheless, our "work" is very similar to playing

(Sudoku) all day long and then being handed a bunch of

(money) for the privilege.
Seriously, how can we call this work? I imagine that millions of people alive today would gladly give up a limb to have our jobs (please don't try to visualize that, ok?).
Now, it's true, there are parts of our job that don't involve writing code or solving logical puzzles.
We have to go to meetings, usually lots of meetings, and many of those meetings are very poorly run and incredibly boring.
Our work environments are often sub-optimal: few or no windows nearby, inability to open the windows that are close by (thereby left to breath re-circulated, dry air), stuck in gray cubicles that seem to suck the life out of you, and so on.
We sometimes have to "work" long hours, debugging code or meeting harsh, unrealistic deadlines.
And there are even times when we are forced to document our code. Oh, the tribulations we must bear!
But the next time you find yourself complaining, griping, whining about your fate in life, take a few moments to think about having a real job: a job in a factory that threatens repetitive motion disorder on a daily basis and is mind-numbing; a job in a farm, for which you receive less than minimum wage and no health benefits, in which you spend day after day bent over rows of tomatoes or beans; a job keeping the sewers in your city cleared and flowing.
And then give thanks to your lot in life, and express gratitude by writing the highest quality code you can, and test that code thoroughly so that your users don't have to deal with a perfect storm of bugs (and in case you don't already know it, you can use Quest Code Tester for Oracle, to automate your testing).
We don't work for a living. We play! Back to my games....