Today my first MSDN article was posted "Using the WiX Toolset to Integrate Setup into Your Development Process". I must say it is a pretty cool but strange feeling to see it posted up there in black and white. What I thought would be a 6 page article turned into a 21 page introduction. There are currently no plans to do more articles but I do hope if this article goes over well that I'll be asked to come back and write another few.
Anyway, the story how this article came to be is actually kinda' interesting. You may not be aware of this, but most (all?) of the example code attached to articles on MSDN in the last year or so is actually packaged by the WiX toolset. It amuses me to think that the example code for an article about the WiX toolset was packaged by the WiX toolset. Not exactly as interesting to think about as the compiler that compiled the first compiler but I can be easily amused.
The WiX toolset was picked up for the job of packaging example code from MSDN when the then-recently-hired Chris Sells was looking for a tool that could be used in the automation of packaging. Chris had tried using VSI (the setup/deployment projects in Visual Studio) and found, as many developers do, that the VSI tool was not completely helpful. So Chris fired of some random emails to a few mailing lists that I hang out on asking how to build MSI files in an automated way. Naturally, I pointed him at the then-still-under-massive-development WiX toolset.
As Chris was reading through the documentation (WiX.chm) learning how to use the WiX toolset, he fired off an email to me. "Rob," he said, "you should write an article for MSDN." I was interested but didn't think I really had anything to say. I told him to look up again sometime later.
Well, Chris pinged me at the beginning of the year asking, "You still interested in writing an article?" I thought now was the time. If I told him to wait again then he might not ask me again. So I said, "Sure, give me a month. I'll write about the WiX toolset." That is exactly what he was looking for.
I spent the first three weeks of February thinking about what I should write. There were so many things I could talk about, where was I to start? I actually came up with three or four different starting points before realizing that I needed to talk about something else first. Eventually, I realized, I needed to start at the beginning and explain why the WiX toolset is what it is. So I told the story behind my philosophy.
Everything in the article actually took about four days to write. I started on a Thursday evening and worked that evening plus Friday evening trying to get the first two sections right. I knew once the introduction of the article was done the rest would just flow. Honestly, I was more worried the article would end up being only a few pages long and Chris would want something else. However, once I got past the introduction Saturday and half of Sunday I wrote 18 pages, wrote the example code, and tested it multiple times to make sure everything worked. That ended on March 7th.
After a couple emails back and forth with Chris (over the next three weeks since I was crazy busy) we had the final draft that you now see posted on MSDN. Even now there are small things that I wouldn't mind going back and fixing. You know make a sentence clearer, remove an extra word, or add something small that might make it a little clearer. But overall, I'm pretty happy with the result. Hopefully, you'll find it useful too.