The WPF team have released an interesting document called the WPF Application Quality Guide. You can download it as a .doc file from that page, or just read it on line. It's an intruiging combination of handy links (Getting Started with WPF), overview diagrams, philosophy and advice around testing and development that would apply to non WPF projects as well, and very WPF-specific practices (should I derive from Control or UserControl?) aimed at testers and developers alike. The Word version runs to almost 80 pages but not all the sections will apply to every reader. You should take a look at it, for sure.

While I was in Redmond I met Alon Fliess, who like me is a C++ MVP and is exploring Windows 7 (and Vista before it) from a native point of view as well as a managed one. About two months ago he mused about the "rebirth" of C++ in these times, not just because some of those operating system APIs are easier to get to from native code, but also because of new native capabilities (the continued MFC updates, the native Web Services library, the concurrency services) that just keep being added to the arsenal available to C++ programmers. (He has some helpful links in the blog post - you could also search through here if you like.)

I think it's a good point. If you know C++, now's a good time to use it. If you don't, then hang around (at least virtually) with those who do - we can point out some cool things. And thanks to the magic of interop, wrappers, and C++/CLI, perhaps we can make some of those cool things a little easier to get to from managed code.

Rands has some cool advice for being a fantastic manager in a pretty big company leading a pretty big team. It isn't all applicable to managing a whole company and having no boss, as I do, or to leading a smallish team without hire and fire power, as many developers do when they first move to management. But a lot of it is. Try this for a start:

... at the end of the day when you ask, “What did I build today?” The answer will be a troubling, “Nothing”. The days of fixing ten bugs before noon are gone. You’re no longer going to spend the bus ride home working on code; you’re going to be thinking hard about how to say something important to someone who doesn’t want to hear it. There will be drama. And there be those precious seconds when there is no one in your office wanting… something.

If that resonates with you, read the whole thing. You'll be glad you did.

I've been in Redmond all week (some Windows 7-related fun that I'll discuss later) and rented a car. Look at the license plate I happened to get:

I don't know why it's Oregon. Probably all the Washington DEV plates are taken . When I first saw it, I said to myself "somewhere here there's a 22 year old developer who wishes this plate was available." It was several days before I remembered that Gregory Consulting was founded in 1986. Nice.

I love hand-edited blog aggregations. You get relevant technical material without the cute cat pictures. I have a gadget that shows me headlines from the blogs of my fellow Regional Directors, but anyone can have it. Here's how it looks on my sidebar:

If I click a headline, it pops out with a summary:

Click the more link and it goes straight to the post on the original site.

You can get the gadget from Live Gallery and install it on your own machine very easily. Alternatively you can see the aggregation in a browser at http://www.microsoftregionaldirectors.com/. I've said before what a smart group of people this is and how very much you can learn from following their blogs. It's all the more true when someone else does the monitoring and editing for you. Enjoy!

Brian Marble reports that the session selection process is almost complete. I submitted a few talks, of course, and I also know of at least one talk submitted by someone else in Microsoft with me as the speaker. The dust hasn't quite settled yet (the session titles should be on the web in February) but I do know that at least one of my sessions has been accepted. Yay! I'll add more details when it's official, but for now ... see you in LA in May!

You can register now, by the way, and get a nice discount and snag a good hotel room...

You know the deal when you demo beta (or worse, pre-beta) software. That stuff has audience detectors in it! Sure, it works on the plane, but just wait until you get in front of people. I’ve had my share of demo deaths, but I don’t think I’ve managed to look this cool about it:

I attended more events than usual in 2008, and I spoke at roughly the same number as usual, for me. But many people are saying they plan to attend fewer events in 2009 than usual, and what’s more they’re saying that might not be a bad thing. In a time when sessions are online, when you can search the web for the blog of the person who wrote the feature you’re interested in, why would you pay for a plane ticket and a hotel room, not to mention a substantial admission fee? I can think of at least three reasons why I do it: for the time spent with likeminded attendees, for the time spent with speakers, and as an oasis from my other obligations that’s devoted to this particular topic. There’s a fourth that you won’t notice unless you go to conferences that are well-curated: somebody is taking the time to select sessions, to select speakers, and even to get the sessions delivered in a sensible order. For more on this point, you should read Andrew Brust’s blog entry on the importance of track chairs in the 21st century.