[non-scala]
"There's always a missing quote" - me
I was looking for a way to open this post with a brilliant quote about setting up personal objectives but after spending several seconds (at least) searching the web, I found none which meant precisely what I wanted to convey about having personal objectives. So I may just tell my own story.
First year
Two years ago, I had this so original New Year idea of choosing 2 personal objectives for the year to come. Notice that I didn't say "resolution". This wasn't something I wanted to drop after half an agonizing month. My choice was: "Learn Ruby" and "Learn Japanese".
"Learn Ruby" was very obvious considering my Java monotheism at that time and the relentless voice in my head moaning: "Leaaarnnn a new language each yeaaaar".
"Learn Japanese" was less obvious. I wanted to work in Asia and having just a little bit of Vietnamese on my resume didn't seem very professional. But why Japanese? Because it looked very far from what I knew, and I thought: cool, I will read imported mangas! (If you told me that I would actually end up in Tokyo 1 year later, I would have swallowed my chopsticks!).
Besides that, having 2 Japanese languages as "The objective of the year" look damn cool (Hey, you know that Ruby is also a Japanese language?)
Verdict, one year later. I had done a nice immersion in Ruby, touching Rails, Camping, doing code katas, using it for mundane scripting, bugging my coworkers,...
Japanese, on the other hand was embarrassing. A friend of mine told me: "Ah ah, you learn Japanese, good. Ohayo gozaimas'!". I said "What?". He had just told me "Good morning".
My conclusion was: it's funny to have objectives, especially if you only have to fulfill the ones you fancy for real.
Second year
I tried the same experiment for the following year. But that time I was really leaving for Japan! With a job in finance, which I hadn't done for some time, using a thousands-of-java-classes software. Since I am a sensible person, I thought: don't put too much pressure on your shoulders: new life, new challenges, do something reasonable.
My official and much touted objectives for 2007 were: "Learn Japanese" (and start with "Good morning" maybe this time) and "Learn my new company's product and succeed in my company".
Where are we, one year later?
- "Learning Japanese" was a self-sustaining objective since I had company-provided lessons starting from August. It's much easier with a teacher than alone. Go to the class, do your "Shukudai" (homework) and it should be fine
- "Learning my company product and succeed in my company" is well,... a terrible objective per se. It was more a way of saying: focus on your job, not on something else. A non-objective, not very motivating in itself, I'm addicted to my job anyway. Besides, this is not something I totally own. There are so many things which are truly out of my control (like not being authorized to blast atrocious code or organize projects in a truly agile mode)
This year
So what's in for this year? If I choose objectives for 2008, I:
- authorize myself to change my mind anytime. Life's too short and anyway my experience shows me that this cannot work if it's not pure pleasure
- select something which is deeply motivating, like learning something intriguing and new for the learning freak that I am (though I wish I was motivated by more cooler things to show-off in parties. Monads are hot on reddit but try that during a diner)
- try not to put too much on my shoulders, because sleeping should not be Option[Sleep]
"I can't do everything,..., today" - my wife, pretty submerged
[non-scala]
Now, dear Scala readers, here are my objectives for this year:
- continue to support specs, fixing issues and listening to users. I don't plan any major feature excepted maybe having another go at integrating JMock. However I will certainly add a myriad of small stuff (like a "skip" method, in 1.1.5)
- contribute to the lift project by adding documentation, specs and tests. I expect to get a deep knowledge of that awesome web framework, quality interactions with the community, personal satisfaction from contributing to others work, improvements for specs
- [as time permits] keep an eye on LiteralSpecifications with specs by creating a front-end wiki allowing you to write your specifications using a Markup language annotated with Scala code. The long-term objective is described in this paper
Happy New Year 2008, I have no doubt that it is going to be a great "Scala year" despite the unavoidable hype and FUD!