Struck sullen by seasonal affective disorder? Soaring airfares got you grounded? Well, Windows developer, be of good cheer, for Microsoft has delivered you from your holiday doldrums. The retail release of Visual Studio 2008 is available now, and that means one of two things: Don't bother showing up for work after the holiday break unless you know it off by heart, or start planning that "training" junket for early in actual 2008.
Adobe's Flash made the world safe again for sites that demand native browser extensions, and Silverlight pushes .Net and Windows Media to Windows and OS X clients as embedded objects that have an enticing YouTube-inspired "click to play" icon that downloads Silverlight.
Microsoft has gotten the message that free tools get developers educated and excited, and while IT shops rarely jump language or OS platforms, developers do. Microsoft's Express editions of Visual Studio 2008 went live for download simultaneously with commercial releases of Visual Studio 2008. Microsoft has used employee blogs to build developer communities, and VS 2008 Express Editions has a dedicated blog ostensibly devoted to those who enjoy writing code.
Microsoft's blog-as-landing-page approach sends me on a tangent: Coding4fun is an authorless blog, which might be construed by the audience that Microsoft hopes to reach as a misuse of the web log ethos. Blog, schmog; blogging purity is headed the way of open source.
Coding4fun is a portal, more like an open source project's news page than a blog. Everyone who wants to throw a snit over commercial tainting of blog culture has a green light. The next frontier of commercialisation is social networking. Oh wait, that's been done.
Visual Studio 2008 pulls me back in with two features. First there are the visual designers. Visual Studio's lame approach to native and .Net interface layout has driven a good deal of Windows developers to Flash and AJAX for front ends that probably belong embedded in the application. Perhaps someone passed a note to Microsoft's Tools group that Java does a better, more consistent job of client presentation design than Microsoft's official suite. Visual Studio 2008, along with the bundled Expression tools, brings Windows developers beyond the Win32 age. Here's a tip: The visuals don't require Vista. Vista and VS 2008 are a "better together" experience, but no employed developer, not even in Microsoft, writes apps that name Vista as a prerequisite.
The other VS 2008 win is the ability to cross-target multiple .Net runtime releases with one toolset. That's right, you can create .Net apps that don't choke when a particular release of the .Net Framework has not been installed. Launching a stand-alone app that opens a browser to Microsoft's .Net download site is the kind of thing that makes an end-user go "huh?"
Visual Studio 2008 goes a long way towards erasing arbitrary boundaries that Microsoft created between .Net, web, and native apps, and for the first time in a long time, there is a reasonable, Microsoft-blessed pathway to targeting the Mac. But some boundaries remain firm. I don't keep Windows servers online any more; mine is a Leopard shop. I had planned to pull down the 4GB DVD image of Visual Studio 2008 Team Edition, and subsequently burn it for review on the Mac Pro system in my lab. I expect too much; the download requires an ActiveX control, which mechanism OS X, sadly, failed to implement. Also noteworthy is Microsoft's quiet acceptance of the slow uptake of Windows 64-bitness.
Visual Studio 2008 is a strictly 32-bit toolset, runnable in 64-bit Windows on Windows (WOW, which I always considered to be a counterintuitive acronym for legacy compatibility) and capable of producing 64-bit targeted code. That's a bummer because compilers make a dandy argument for the use of 64-bit code.
Developers don't have to jump platforms to catch up to the now. Sun has, hands down, the most powerful multitargeted (x86, SPARC, Solaris, Linux) toolset in the industry, and there's nothing Express about it. Sun's dynamic tracing facility, implemented in Solaris as DTrace and in OS X Leopard as X Ray, provides a scriptable interface for tracking and playback of system and application performance data at runtime, no instrumentation required. Sun's toolset is loaded with scary optimisations and profiling tools that Visual Studio lacks.
Apple's XCode has had solid source code management and interface building chops from the jump, and Objective-C 2.0 brings concepts embodied by .Net and Java into the modern age. It did that 10 years ago, but that's not germane to this discussion.
The point is that while Microsoft continues to give developers the best reason to curl up in front of the fire with their notebooks (actually, two reasons, including documentation, now that print is dead), you might also want to use that expensive broadband pipe of yours to suck in a Solaris DVD image, or gift yourself a Mac and find out why there's so much exceptional native software for it. However you spend it, I bid you an enjoyable holiday.