Silverlight
When you look at it, .NET somewhat resembles Java, since .NET executables are based on open standards (explaining the Mono project), and both compile to an intermediate platform-independent 'bytecode' prior to execution (although .NET can be further compiled to a platform-specific exectuable, and usually is in practice). And with WPF, Windows now has a vector graphics-based presentation model, similar to Flash. Additionally, the .NET mobile framework is positively tiny, made to fit in the extremely restricted memory space of a mobile device. Someone at Microsoft must have seen these three things and created Silverlight, a cross-platform programming technology that's half AJAX and half Flash. With a small but flexible runtime, cross-platform and cross-browser support, and a pricetag of free, this is probably the technology that made TechEd 2007.
As mentioned above, Silverlight is .NET based. There are two versions in development right now: version 1.0 uses a tiny amount of Javascript as a go-between and is in beta, and version 1.1 does away with the Javascript for .NET-style language-independence and is in alpha. All the tools are free right now, and development centers around some form of Visual Studio and Microsoft's new WYSIWYG GUI tool, Expression. ("However, if you're a masochist," we were told by one speaker, "all you really need is Notepad and the command-line compiler."). Visual Studio is the same IDE that's become an unspoken industry standard for IDE design, and the Expression tool is rather straightforwards -- including a 'timeline' function that made for simple animation, similar to Flash.
In version 1.0, their goal was to have something that could be secure (all silverlight apps are 'sandboxed'), be small (they wanted less than 4 minutes download time, because their studies showed that after four minutes most users would cancel the installation (my installation for viewing Virtual TechEd took less than 30 seconds, download included), and work cross-platform; all the bells and whistles could be included in later releases. A primary goal was video support -- you have to wonder if Google/YouTube will be seeing some competition soon -- and because of their video support, they have earned some tenative big-name support from some media powerhouses like the BBC, CBS, Fox News, and Netflix.
The capabilities of Silverlight were impressive, eliciting more than a few "Wows" in the process. One Silverlight demo showed it being used to 'browse' library documents too fragile to be put in regular documents; by using a vector-based graphics system, the pages did not lose clarity as they zoomed in and out and were curved along a three-dimensional 'page turning' action. Another was used as a in-page video editor, being used to cut and edit video while it was running; although that was fairly impressive for running and splicing two video clips at the same time, jaws hit the floor when we were told that it was only 49 kilobytes. Another, a demo for a video player, was running twelve video clips simultaneously without slowdown; the audio played based on which clip was 'in focus.' The one that was most impressive to me personally, however, was a small 'IDE' implemented in a Firefox window; in it, the speaker typed a small demonstration of a Hello World script, and ran it -- right before our eyes.
The runtime is currently ported to Mac and OS/X, with a Linux runtime mentioned for sometime "in the future" (with Microsoft now working with Novell, Mono's sponsor, it's almost a given). These are still technically in beta, but seemed very mature. During one demo, we saw an example of just how advanced the development had come: after developing a quick Silverlight application (the point of which was to display "Why is there a fruitbox on my desk?" in a variation of the classic Hello World), the speaker opened up the Silverlight file in Safari over a network connection -- and it ran. Later demos showed Silverlight files running in Firefox for both Windows and Mac.
It's still in beta right now, but every session that had even the mention of Silverlight in it turned into a crowd. A room only designed to hold 1400 people for one session in particular had people lining up against the walls, sitting in the floor, and with people sitting on the floor.
Linux and Open-source
From the keynote to the final day, Linux was omnipresent at TechEd, from the keynote to the final day. Although one speaker (a Microsoft security expert) did throw in a poke at Linux, the vast majority of speakers were talking about technologies that you could use with Linux. There were more Linux boxes running at TechEd than at my entire school. The sudden conversion seemed to be not due to a religious change, but a pragmatic change; as mentioned above, Microsoft wants to make products for the technologies people want to use. If this seems strange, recall that their biggest business successes -- first BASIC, then MS-DOS, then Windows, then Microsoft Office, and then Visual Studio in rough order -- have succeeded because they made it easier to do what third parties wanted to get done. (From the keynote: "Microsoft products may store your data, but you own your data.")
One buzzword thrown about was RONUI: Return On New User Interface. The gist is that in order for any company to even consider the conversion to a new piece of software, there has to be something in return for the change. Will the new functionality save time and money? Is the old software being phased out, and does that make stability or security an issue? With the homogenity of software nowadays and the cost of re-training people to do almost the exact same tasks with different interfaces, file structures, and programs, that is usually a 'no.' By working with Linux-based companies, however, it becomes easier for companies using both platforms -- and thus, lowering the barrier to using both.
CodePlex featured heavily at TechEd, with virtually all the sample code being released there. One of the new languages for .NET is IronPython, was heavily touted at TechEd; it's Microsoft's .NET-compatible open-source implementation of the Python language, licensed under the MsPL v1.1 (a license slightly more restrictive than the BSD license, respecting patent law while at the same time making it obsolete by doing for patents what copyleft does to copyright -- 'patentlefting'?). Complete demo projects like DinnerNow, an example of creating 'connected applications' spanning OSs and platform types, were put up on CodePlex for attendees to read after the show, and more than a few attendees would actually download and browse the project on their laptops while it was being discussed on-screen.
One session was devoted to 'Open source in the enterprise', which quickly turned into a discussion of the various licenses and the issues of using them in different scenarios. The discussion touched on many things, such as the difference between BSD-type licenses, copyleft licenses, and shared-source licenses, and the realities that many people were using free or open-source software, and usually not in exclusion to propretary software. ("People don't get software to get the license; they get the software because it does what they want or need.") One scary fact: When asked, over 80% of the roughly 200 IT professionals in attendance raised their hand to say they were using open-source software in some capacity, while only 4 of them (which counts myself, just a developer and not an IT person) knew what 'copyleft' meant.
Another session was devoted to the difficulty of accurately gauging flaws in software. Although some sites gather them correctly, others (like the National Security Database) were only correct in some cases -- for example, the NVD was completely correct for Windows Sever 2003 entry, but sharply dropped in success rate for Linux distros (to an extreme of a 98% of NVD's bug descriptions being in error for Ubuntu 6.06). An additional demo showed that not all threat ratings were built the same way -- what might be a 'minor' threat to one company would be rated as a 'critical' threat to others, particularly regarding the topic of remote code execution; some companies have zero tolerance policies regarding code execution, and others don't have that policy. As might be expected, the Days of Risk stats were heavily skewed pro-Vista, but the speaker gave an explanation: "Since Vista is so new, all the Days-Of-Risks for all the unfixed bugs in Vista are arbitrarially capped, so we won't have true stats to look at until it has been out longer." What does this have to do with Linux? I spotted a trend in the statistics: the distros that are quicker in their bug repair rates and which have fewer bug rates overall are getting approached by Microsoft.
A later discussion talked about the Microsoft-written XenLinux hypervisor. This hypervisor (a kernel component) allows XenLinux to access the Windows driver stack, effectively turning all certified-for-Windows hardware into Linux-certified as well. The most surprising part of the discussion, however, was that Microsoft was going to release this hypervisor as open-source; the license is yet to be determined, but "all parts of our code that works with the Linux kernel will be open-source. People expect that." The speaker from Xen cited a speed increase by a factor of 10, and seeing speed increases by as much as a factor of 100 'in the lab.'
In their downtime, when they didn't know I was listening, I could hear Microsoft employees discussing the finer points of their favorite Linux distros, including RedHat, Ubuntu (and the various *buntus), SUSE, and DSL. Interestingly, Linux wasn't the only indie operating system mentioned at TechEd: one discussion I had with a Microsoft employee veered into a discussion of SkyOS and its new BranchFS file system.
- "Keynote; .Net"
- "Silverlight; Linux and Open Source"
- "Miscellany"



