In November of 2002, the SCP project (to build a controller ship for home automation) was winding down. As happens when projects end-of-life, one of the things that management does is to divvy up the members of the team - sometimes the lead takes a bunch of the developers on the team with them to wherever they end up going, sometimes other leads take developers.
I wasn't sure what I was going to be doing once SCP finished, until the dev manager for the Audio/Video Devices Group in eHome stopped by my office.
He wanted me to move up onto the audio group to work on a project that would make UPnP devices full fledged Windows devices - basically by bridging the network space into the Windows devices hierarchy. I worked on it for a couple of months, and developed a prototype, but it didn't really go very far.
My lead on the team realized that this was going nowhere and he asked me if I was willing to help out by working on some "audio policy" work that the rest of his team was doing.
I was cool with it (I'm usually cool with changes like that), so I went to work on the audio policy infrastructure in Windows Longhorn.
My work was to be a relatively small part of a rather ambitious venture that the AVDG group was embarking on, but it was mine 🙂
Along the way, I had a major work reset (I was asked to do the HTTP server for the Windows Media Connect product), two or three reorgs, a change in managers, and a major feature reset, but the heart of my little feature managed to remain in the plans throughout it all. I've also picked up another feature along the way, but my heart has always been with the original feature.
Well, on Friday of last week, we finally RI'ed our changes from our feature branch into the aggregation branch (for what those terms mean, see this PPT that Mark Lukovsky gave at Usenix several years ago). This means that the features that I started working on back in 2002 are finally on their way to being part of the core Windows Vista product. It's been a long two and a half years, and an even longer two and a half weeks (I went into 14 hour day work mode two weeks ago), but we're finally almost done!
Last Wednesday, we had a review of the feature with Jim Allchin, and it was unbelievably successful - he suggested some useful changes to the UI, but overall, he absolutely loved the feature.
I cannot describe how stoked I am about this. When I first saw the UI, I couldn't decide if I wanted to shout in triumph or cry with joy seeing this new feature (I chose the shouting :)).
I'm still being coy about the details (sorry, I'd love to, but I've been told I can't talk about details, some of the rough ideas have been disclosed at several conferences in the past, but not the details) but for now, the train has left the station, our stuff is going in!
Edit: Clearly I'm "details" oriented 🙂