All in and shipped out. Reflecting on the last year.

It is the last day of 2008. Jenny mentioned this morning that she thought we had been through a lot of change. I immediately agreed. I said I felt we were at the end of the beginning. Let's recap.

On the personal side, about half way through the year Jenny and I finally decided that we would sell "my house" in preparation to find "our house". We spent all of the summer updating the house to sell in a very tough market. We painted everything inside and out, updated the kitchen and all of the bathrooms, planted plants and flowers then watered and watered. Finally, by August the house was on the market

44 days later, after three open houses and too many showings to count we had an offer. Looking back Jenny and I were incredibly fortunate. Not fortunate just because the average time on market was 90 - 120 days and the market took an incredible beating shortly after we closed. We were fortunate because the day we had a solid offer, Jenny and I found our dream house. The sellers had a contingent offer on another house but were about to give up since their house was not closing.

In a very stressful two weeks Jenny and I negotiated the final deal on the house we were selling and made a contingent offer on the dream house. There were several days where it felt like everything would just come unglued. But by the beginning of November we were moved in and still pinching ourselves that we now lived in such a beautiful house. I expect Jenny and I will be here for quite a long time firmly ending the semi-nomadic life of early adulthood.

On the professional side, this year has been the most action packed 12 months of my life. Lots of code checked in and shipped out. Let's just go through the list.

At the beginning of the year we declared WiX v2 Production/Stable. That was a huge accomplishment only overshadowed by the announcement that WiX v3 would be shipping in Visual Studio. Technically speaking it was last year that I announced that the WiX toolset would ship as part of Visual Studio but it was this year that I feel we really made significant progress toward actually shipping. We made necessary the adjustments to the WiX v3 roadmap to stay on track and over the last 6 months the WiX v3 bug count has plummeted. Every Thursday of every week this year I have enjoyed the hours spent with all the people that volunteer on the WiX toolset. It's a great project with great people.

Microsoft StoreAll the other professional excitement happened at the end of the year. First, I announced that I was joining the Live Mesh team during all of the turmoil of preparing a house for sale. However, I couldn't talk about the project I was leaving since it didn't officially launch until November: Microsoft Store. Trevin Chow, the lead Program Manager, had a good blog entry about the launch of Microsoft Store. A little later he wrote an in depth entry about the piece of the project that I worked on most: the Microsoft Store Download Manager. Those two blog entries provide a pretty good overview of what I was working on for most of 2008. That team was a lot of fun and I really liked the way the Download Manager turned out. I stop by and talk to friends on Microsoft Store team every once in a while since the WiX Working Group meets on the 4th floor of their building.

Of course, the end of the year finds me on the Live Mesh team. The weeks before the PDC were some of the most intense days of programming since I left college. Delivering a technology that forms the linchpin of several executive key notes at one of the largest gathering of developers for the Microsoft platform is a bit awe inspiring if not incredibly tense. In the days since, we've been gathering feedback about how the technology previews are being used and creating a plan for the next year to come. But this blog entry isn't about the future so I'll stop there. <smile/>

As I noted in the beginning it feels like I'm at the end of the beginning. I've enjoyed getting here and now I'm looking forward to finding my way into the future.

Have a Happy New Year!

 

WiX v3 toolset end of the Beta imminent.

Last week Bob pushed the latest WiX v3 release to SourceForge. The original intention was to declare that drop as the final Beta build for WiX v3. However, I changed my mind for two reasons.

First, I know a lot people don't pick up weekly releases, only SourceForge drops. Sad but true. Since it had been a while since the last SourceForge drop and I wanted to make the drop then watch to see if anything new came up. Nothing has.

Second, we were very close to zero bugs on the core toolset and had a couple extension bugs that could be considered blockers. With an extra two weeks I was pretty certain that we could knock out a few more of those. Bob and I have made good progress through those this week (holidays can be good for the volunteer hours).

That means it is very likely that next week's release will be pushed as the "official WiX v3 Beta release".

You might wonder what it means for a project already called "beta" to have an official Beta release. In this case the Beta release marks the turning point where all of the major features for this release are finished and the bug flow such is under control and on a solid downward trend.

The goal is to provide a build and encourage all WiX v3 users to upgrade. That way we focus our efforts on finding all of the remaining bugs and figure out what bugs get fixed in WiX v3 and what gets moved to WiX v4. If you've found a bug in the WiX toolset get it filed soon.

Bob Arnson is actually the architect of this plan for finishing WiX v3 in 2009 so look for more details on Bob's blog over the next nine months.

 

MSI SDK

The MSI SDK (also known as the Windows Installer SDK) is here http://msdn.microsoft.com/en-us/library/cc185688.aspx. For some reason the major search engines don't rank it highly.

You can also download the MSI SDK (which gets you the documentation in .CHM format plus several useful tools such as Orca).

 

Geek humor: I am a duplicated bot.

Every once in a while something amusing happens on the wix-users mailing list that makes me chuckle. Sometimes, when they are short, I post them to my Twitter account. This morning I came across a new email to the mailing that started with "Hi Rob" which seemed a bit odd since there are hundreds of people on the list. Sébastien Mouren apparently found it interesting too since he made an amusing response:

Hi, it's not Rob here.

I'm Sébastien, a duplicated bot that has inherited a limited part of Wix Rob's knowledge. I am not a fully featured Wix bot since I'm not able to develop for the Wix toolkit.

But has your question has reached the "read documentation" level technical support, I'm able to understand it and hopefully to answer it.

I've lost count of the number of times I've said I wish I had a clone to get everything done. Little did I know it had already happened! In this case, even with the limited inheritance, more bots out there answering WiX questions well (or, at least, amusingly) is much appreciated.

And Sébastien thanks for the chuckle this morning.  Keep answering the questions, you know I am.

 

Anniversary at the end of the beginning.

A year ago I wrote about the quiet day of reflection on my first wedding anniversary.  Today was a weekday, a work day and my job rarely allows the time to sit back and think about where I've been and what I've done personally.  So I bailed early and ran a few errands gathering components for the small gift I gave Jenny tonight when we celebrated.

While running errands and after watching the historic events of the evening, I reflected on the last year.  Easily the most dramatic event of the last year has been the process of selling "my" house and buying "our" house.  We don't get to move in until this weekend but I had the vague notion that some "next phase of life" was around the corner when I "my" house was sold and completely empty a couple weeks ago.

At this point, my friends probably think (and my parents probably hope) that I mean "kids" but I don't.  Not yet anyway.  I think it's something simpler than that.  Something like the end of the beginning.

Normally when I think of "the end of the beginning" "the beginning of the end" immediately comes to mind.  But not this time.  Instead I'm thinking "comfortable".  Not the type of comfortable where you stop doing and stop growing.  More the type of comfortable that serves as a solid foundation for reaching further and doing bigger things, new things.

Now, I don't know what those things are right now, I haven't turned that corner yet, but one thing is certain to me.  I am officially declaring November 4th a personal holiday.  From now on I will be taking that day off every year.  After that, I don't know.  For now... I'll just keep coding. <smile/>

 

How to determine if you are installing on Windows Client vs. Windows Server.

This question just floated by and I had a similar question recently so I thought I'd capture it here to point search engines in the right direction.

Q:  How do I determine if my MSI is being installed on Windows Client or Windows Server?

A:  The Windows Installer provides the MsiNTProductType Property that is set to "1" for Workstations (aka: Client) and "2" for Domain Controllers (a Server albeit a rare Server) and "3" for Server (aka: uh, Server).

Here are a couple independent (and hopefully) self-explanatory examples using WiX syntax:

<Condition Message="[ProductName] is a consumer application and is not
supported on Windows Server.">Installed OR 1=MsiNTProductType</Condition>

<Condition Message="[ProductName] modifies the Active Directory and therefore
should only be installed on your Domain Controller.">Installed OR
2=MsiNTProductType OR OVERRIDE_DC_RECOMMENDATION</Condition>

<Condition Message="Windows Server is required by [ProductName].">Installed OR
1&lt;MsiNTProductType</Condition>

Remember the Installed Property is in all of those Conditions to ensure that the MSI can always be uninstalled. It may take some imagination to bypass each Condition (like an OS upgrade) but better safe than sorry.

WiX Working Group Wrap-up, October 23rd 2008

This wrap up is mostly content free but maybe the context is interesting.

If it hasn't been clear from Bob's weekly highlights, we're all about fixing bugs in the WiX toolset right now. Not much to report this week but next week should have more interesting details... and I'll hopefully have my hair cut.

"Its more about context than content."

Qik is working on my phone again so I thought I'd try getting back on the video horse. I conned Bob into holding the phone for me. But, I was still nervous about starting. So, we were talking a little bit and I realized that I was starting to address a comment left on my blog a long time ago.  The comment went something like, "I prefer when you write blog entries instead of embedding video content because I can digest the text better than the images."

To loosen up a bit, I told Bob to record and I'd take a shot at answering the comment:

So to summarize, these videos aren't really intended to deliver technical content. Instead they are attempts to provide more context about the people that are doing the technical things. There is a lot more to the people that write the letters that appear on your screen and I'm experimenting with ways of expressing that.

I'm obviously still experimenting with the new technology here so your feedback is very interesting to me.

 

Promoting from within.

For most people this isn't going to be a surprise and many may even ask what took so long. To be truthful the keys were granted a few weeks ago, I'm just finally getting around to blogging about it.

Over the last couple years, Bob Arnson has become a vital member of the WiX toolset going far beyond the call of duty. His first core role was taking ownership of the WiX UI providing some key functionality to the WiX community. Bob also became the regular "answerer of questions" on the wix-users mailing list taking a huge load off my shoulders. In the last year, Bob has contributed to all facets of the toolset and participates in or leads all major decision making for the WiX toolset.

Needless to say, Bob has become a vital member of the WiX community and I appreciate his efforts whole heartedly. I rely on Bob's contributions so much that three weeks ago I promoted him to co-administrator of the WiX toolset on SourceForge

Like all good promotions, nothing really changes (well, there is a 100% increase in pay). Bob has already been doing this job for a while now and we're really just improving our bus factor.

Seriously, though, this is recognition of Bob's outstanding work on the WiX toolset. If you haven't sent a happy thought to your friendly neighborhood WiX volunteer, send a happy-gram to Bob and thank him for his efforts.

 

WiX weekly builds back on track.

I just received notification that this week's weekly build of the WiX toolset has just been released. Since SourceForge moved their servers from California to Chicago we've been having issues getting builds posted regularly. The mistakes were all on our side (we missed the memo about some key configuration changes) and after a few goofed builds we appear to be back on track.

Sorry for any trouble these issues might have caused. Now back to the coding.