Cocoa for the soul
26 June 2007 10:37 am UTC
I read on a photography web site that there are two kinds of photographers.
The professionals shoot for a living, and they know all about the market: what types of photos sell, how to price them, how to produce them quickly, and so on. They show up on the job, take the shots most likely to please the customer, and move on. Expensive equipment, to the pro, comprises simply the tools of the trade.
Amateurs shoot for the love of it. They experiment, they explore, and they regard their tools as artworks in themselves. They spend hours in the heat, or cold, or rain, waiting for the light to change. The word amateur itself stems from the Latin amator, lover or devoted friend. The site’s author claimed that the best photos come from amateurs, and I think he has a point.
And so I wonder, does a similar principle operate regarding software developers?
When I retired a few years ago I spent the first year parsing some Shakespeare plays into XML. What tedium! I examined every word, every punctuation mark, compiling the differences among Folio, the Quartos, and the leading conflated texts. My work would not have provided great value until all the plays were completed. With each play requiring six months of work, that project would have taken 18 years. Nobody would have used it but a few Shakespeare scholars, and the more I learn about them, the less I like them.
So I took up Cocoa programming. I had done a lot work with Visual FoxPro, SQL, Perl, and so on (all self-taught; my training and career was as a lawyer, from which I am recovering nicely, thank you) but never got around to learning C. I dabbled with Pascal back in System 6 days because that’s what the Inside Macintosh books used, and I’d been a Mac fanatic since 1985. I still miss the keyboard on my Apple //c. It was my good fortune to start with the Hillegass book, and before you could say res ipsa loquitur I was coding in Cocoa.
In some ways, as a Cocoa developer I’ve got it made. My wife and I live comfortably enough on our pensions. The app I’m developing always seems to be about a year away from beta. I spend as many hours as I can, every day, writing code. And I get paid for breathing! I don’t have to sell anything. There are no deadlines, no code reviews. If some fundamental aspect of my project needs changed, requiring the rewriting of a few klocs (thousand lines of code–thanks, Verity Stob), then I just do it instead of working around the problem. I can afford to go to WWDC every other year. Ah, the good life!
Artistic temperaments need a means of expression. I used to play some musical instruments, dabbled in painting and in acting (I’m directing a play right now), wrote a novel and self-published a book of poetry. I wasn’t particularly talented at any of those activities (well, maybe the poetry). Perhaps I’m not particularly talented at writing code either. I’m certainly no professional. Still, maybe my application will turn out like the great photograph taken by an amateur: beautiful and moving because of the artist’s patient toil in the morning light.
Leave a Comment
There are no comments for this article.