Passion and Persistence
Well, it's the Memorial Day weekend here in Redmond, and I am in my office working for the second of the three days of the weekend. Just can't stay away.
Why?
Because for months now I have been trying to improve the efficiency of our team's automated tests, and also get all the content in them under control. Over the years (I'm afraid it was the KMDF side of the team, from which I originally came, that was the biggest culprit), bits and pieces of content- test tool binaries, script files, and the like- were placed on a server accessible to both us and the lab- none of it under source control, nor with any idea in most cases where it could be built from or symbols to it procured. Shefali and I have been whittling away at this problem for months now, and I'm finally close enough to having it work I'm determined to make that one last push to get the job done once and for all (except for the inevitable maintenance, and I've tried to be smart enough about designing my solution that this should also be easy).
We've got many hours of tests overall between KMDF and UMDF, and I've got to make sure all of them work before I tell the lab that this new stuff is the way it's going to be from here on out [not to mention there is going to be some peer review first, as well]. It takes a lot of time, and of course, none of this is committed or budgeted work. I'm filling in the idle time [among other things, I'm doing abusive searches of build release servers so I can figure out where some of the tools we've just stuck up there before actually appear in Windows builds- so my being here when almost no one else is proves to be somewhat considerate of me, as well] by writing blog entries, updating code, and working on even further out ideas I want to try out.
Not that it's all hard work. I've got the music turned way up (a live version of the Grateful Dead's "Casey Jones" of all things, right at the moment- so I hear my blog's title being raucously sung), and I'm having my usual whimsical fun with comment fields and the like. For instance, the job itself (which is working rather well, so far) is named "Sauron", and the Details tab (which is supposed to describe it) begins with this absurd off-the-cuff plagiarized quatrain [my apologies to the Tolkiens]:
One job to to run for all-
One job to find them;
One job to bring them all
And at the test box bind them.
So why do something this exhaustive,
and do it when I'm supposed to be relaxing, and when its unpaid time, and so on?
Because I care about it (passion) and because I'm not going to just give up because it isn't easy (persistence).
Besides, this reminds me of my early days at Microsoft (the days of OS/2, Windows 3.1, and what became Windows NT 3.1). The days where the 70 and 80 hour week were common and I usually didn't mind. The days when I slept on the floor of my office because I got to be too tired to drive home, even though it was only a block away [yes, I really should walk, but I find the idea daunting at the 1-5 AM hours I am usually coming to work- Redmond is usually safe, but why take the chance?]. The days when I wrote code because I thought I'd need it or because I wanted to try something that struck me as cool at the time. The days when I may have worked hard, but I was enjoying it so much it didn't feel like work.
They came to an end- the reasons why don't matter. At one point after that I was interviewed by a journalist / author (he was writing a book about the development of Windows NT, and I guess he thought I'd make for a mildly interesting highlight or side story), and I remember telling him "I'd sit at the keyboard and I couldn't type- I didn't want to type. I wasn't interested in programming anything- I'd never had that happen before". While I didn't put it that way, it was like being dead, but still being capable of breath and movement. In a very real way, that was behind my resigning at the time I did- partly protective (no way could I do a decent job in that state, and sooner or later that would result in some black marks on the record), and partly reactive (some of the roots were environmental, or so I felt- doesn't matter really, it was all so long ago).
Ever since then, I've been looking for that feeling- that sense of wonder- that confident feeling that if I could think of it, I'd find a way to use the technology available to me and my own capabilities to make it happen. I'd get occasional flashes of it, but never the full-blown, out and out desire to do nothing but work on something for endless hours, and actually achieving that goal. The closest I came was gaming, but to me that was always "play". "Work" was a better use of time, but it just wasn't engaging me.
When I decided to rejoin Microsoft, I was hoping I might finally find that desire and enthusiasm capable of being rekindled. Working as a contractor, I'd had urges in that direction [but you must charge for those hours- so the kind of thing I am doing now would be an abuse of the business relationship to either my employer or to their customer]. But it just seemed to sputter- there were brief flashes, but nothing consistent.
But now it looks like it is happening at last. Perhaps I do get another bite at the apple- I already feel younger for some reason. Perhaps I can take on big challenges and bring them to fruition, even though I am highly prone to "the lone wolf" style of addressing things. If it's happened- I know who to thank- Shefali, Abdullah, Scott, Darren, and everyone from them right on up to Messrs. Ballmer and Gates. For providing an environment (and yes, there is much more to that environment than just the chain I've listed) where I can be myself, and still accomplish things- maybe not great things, but at least things worthy of accomplishing. For listening to sometimes petty concerns and putting up with my foibles, inconsistencies and mistakes (especially Shefali in this case).
I hadn't thought about that before- perhaps the problem previously is I felt I had to be something other than what I am to succeed. Now I finally feel otherwise, and it is very liberating.
Well, perhaps I am deluded. While I see this as a good thing to do, and an improvement over the existing conditions, perhaps it will be judged otherwise. I am not using all the latest and greatest technologies to solve the problem, so perhaps it will lack appeal because of that. Time will tell, in either event. I'll deal with that as it comes.
In the meantime, I am going to do my level best to make this thing work, and I don't mind the time it is taking.
Because believe it or not, I am actually having quite a lot of fun...
[Segue into Grateful Dead [Wake of the Flood] Mississippi Half Step Uptown Toodeloo.... "along the Rio Grande, oh-..."]