Another Christmas gone, and its back to work writing docs for developers who refuse to read them before the product is released and then complain when the docs don't say what they wanted! Ah well, I'm getting used to it now. Just wait until I get promoted to Ruler of the Universe - things will be different then. I'll make it illegal to write code without providing a full spec first, or release products without giving the writer a month to get the docs finished. Well, why not? Here in England our Communist government make loads of laws much dafter than that.
Whoops, slipped into politics there Ė back off fast. After all, this is supposed to be a technical diary. Not that you'd realize from reading most of my usual rambling holiday notes and software diatribes. Though I will have another moan about airlines this month; but only 'cos I'm worried that I'm getting out of practice. Yes, you know who you are British Airways... it's no good hiding behind that check-in desk...
So, earlier this year when I had to make a last-minute trip to Redmond, I booked with BA online. I joined their "executive club", and booked though my club account. I stopped using BA a while ago because the seats were so small and narrow, but the flight this time was really very good. I was able to reserve bulkhead seats on all the flights when I booked, check in online, and the service was fine. Plus, even though I had to go through Heathrow (flying from Manchester), the connection was painless and they didn't lose my bag. I guess nobody was on strike that week.
This week, with another last-minute trip arising, I'm back on the BA Web site, log into my executive club account, and choose and book the same flights. However, it won't let me reserve a seat because I don't have enough executive points. So they obviously changed that. How many points do I need to get to the "silver" level and be able to reserve a seat? Onto the accounts page to discover that they've lost all my previous points Ė including the 5,000 free miles I got for joining the club.
On the 'phone to the "executive club services" people, but they say itís my fault for not checking that the points were still there, and they can't do anything about it. Oh well, I'll cancel the flight and go with US or American instead. But I have to speak to the customer sales services desk to do that. With both a cabin crew strike and a ground-staff strike planned for the next couple of weeks at Heathrow, you can imagine that the message on their sales line was the usual "...experiencing high call volumes..." thing. Yes, I bet you are.
So back onto the BA Web site. No, it doesn't let you cancel your flight. It won't even let me change my loyalty membership number to the American Airlines one that's got lots of air miles on it already. Ever feel like you've been "had"? Yes, BA, I do now. And I wonder, with all the hassle that will be Heathrow over the next couple of weeks, whether I'll actually get to Redmond at all. According to the news, there are still several hundred people camping out in departures who have been there since Christmas Eve. What a wonderful Christmas they've had! Still, at least they were near the shops to buy presents. And maybe my wife will buy me a private jet next Christmas...
Meanwhile, the software experimentation and "proper work" side of my life for the last month or so have involved one of my favourite subjects: manageable applications and the Design for Operations initiative (see http://www.codeplex.com/dfo/). I've worked on this on and off for a while, learning more than I really wanted to about MOM and System Center Operations Manager, instrumentation, health modelling, and associated topics. However, it's really great to see it becoming a real mainstream topic.
You'll be seeing new tools appear over the next month or so, including a superb enterprise application modelling add-in for Visual Studio. This makes it really easy to build visual models of an application, specify the instrumentation (events, perf counters, etc.), the health model, and the knowledge for fixing and validating errors. Then the tool will create the instrumentation helper classes, check code coverage of your application, and even generate a management pack for System Center Operations Manager.
And, like all of the patterns & practices tools, it's absolutely free. If you are building anything more than the most simple applications, it's well worth taking a look at the tool. There is also a manageability handbook available as a free PDF from the Codeplex site. It's not quite fully up to date at the moment (yes, I'm working on it as fast as I can), but it is a really useful guide to building manageable applications. Even if you don't follow the principles in their entirety, it will help you to think about how you can reduce the total cost of ownership of your applications.
Finally, this month I decided itís time to start thinking about and planning the upgrade to my public Web, email, DNS, and proxy servers. Like many people, I'm interested in using Virtual Server to simplify management and reduce the number of boxes. I did investigate a twin server fail-over solution using iSCSI storage, as described in the Virtual Server White Papers. Or, at least I did until I got a quote for the hardware. Yep, 64-bit servers are cheap, but the storage worked out at over 6,000 pounds! Altogether I'm looking at a hardware cost approaching 8,000 pounds - and that's without the software to run it all.
Then I discovered that you can't run Exchange 2007 in 64-bit mode on Virtual Server, which only seems to support 32-bit applications. Maybe Exchange doesn't run at its best on Virtual Server anyway, but there seems to be no point going to virtual application hosting if I canít include the mail server. I understand that the forthcoming Windows Server 2008 and its virtual application platform will support 64-bit hosted applications, so it's a good excuse to do nothing yet. Not that I need much persuasion to follow the "do nothing" course of action...