Thursday, June 21, 2007

'Live to Code' versus 'Code to Live'

The Thought

Do people in your city "live to work" or "work to live" ? That is, does your city prioritize "the rat race" and climbing the corporate ladder, or does it stop and smell the roses, celebrating la joie du vivre ?

Which cities fit either description, in your view?

Often the answer depends on: (a) do you live there or vacation there (b) where you are in life (student, parent, etc) and, frankly, (c) the power of the media and their tourism marketing.

There is a Canadian city which I associate with "live to work". It is a truly great city, though, so I won't knock it by naming it. But, man, it is hustle-and-bustle all the time.

For me, the "work to live" is Paris. My biases are that I've had 2 fantastic vacations there, and recently saw the delightful, whimiscal indy movie, Paris, je t'aime.

They smell the roses in Paris. And the food, and the wine, my God, the wine. The unique sense of style: you want to approach strangers in the street and apologize for being under-dressed ("I didn't know there was a dress code!"). Art and music are highly prized endeavours. From a magnificent art gallery to the most modest bakery, there is a spirit in the air: a vibrancy, a passion. One can feel the same energy that inspired so many great philosophers, artists, chess players.

Once, along the Seine river, I approached an old man who was sketching. In my rusty French, I told him I was from Canada, and found Paris to be everything I had read when I was young. He breathed deeply, closed his eyes, and savoured the essence of the city, the moment. Oui, oui.... merci monsieur.

(I said something similar, but more romantic, to a tour guide, but suffice it to say that I made her day.)

The Point

Do you "code to live" or "live to code" ? Is coding fun -- something you want to do on your own time, or does it just pay the bills? Does a todo list of new languages (e.g. JRuby, Groovy, Erlang, JavaFX) turn your crank or make you roll your eyes?

I suspect that many readers may be like me: mostly "code to live" but sometimes stray and need to have the passion re-ignited. Though I'm in a good place right now, I have come to learn that the "ebb and flow" of that feeling -- joy to code (*) -- is natural.

I'm always interested in ways that people use to get the fire back... What do you do that makes software development feel like walking along the Seine in Paris?

Here are some of mine:

Birds of a feather. Whether it is a small Java users' group or a full-blown conference, it is energizing to catch the vibe of a group and of others' experiences. Most of my "down times" are when I'm too busy to go to meetings.

Bookstores. It is a derivative intellectual pursuit, but I enjoy merely browsing comp sci books. If you read just 10 introductions at your local bookstore, it is amazing what you can pick up. And for free, no less. What a scam! A double bonus is to actually (wait for it...) buy a book.

Testing. If you want to sneak a new technology into an organization, and still be productive, there is no better place than testing. Managers love the sound of it, and few people really care much about which technology is used -- particularly for exotic integration or performance testing. I once wrote a fun tool in Python that would hammer a web server.

Find a Problem. I blogged before about getting unhooked from a game, but there are other neat problems to solve. Solve Sudoku puzzles. Implement a domain-specific language for your Mom. The options are endless (Dr Dobb's has oodles) but especially when combined with a new language.

The Gist

That's some of the ways that I like to keep things exciting, to ensure that I "code to live".

How about you?

(*) Note: "code to joy" is different, rare and sublime... See the first post.

No comments: