Report: Microsoft’s TechEd 2007

TechEd is Microsoft’s flagship technical training conference. This year, over 13,000 IT professionals and developers attended the event, where new Microsoft technologies were shown off to people who might be interested. I attended in the capacity of a Tablet PC developer, but there was so much to do and see, I had plenty of time to look around.

The Keynote

The keynote address was given by Microsoft’s Bob Muglia, senior vice president of Microsoft’s Server and Tools Business. The keynote began with a short seven minute skit themed after Back To The Future. In it, a ‘Doc’ (played by Christopher Lloyd, no less) took Bob Muglia with him to the recent past (in a time-travelling DeLorean) to show some of Microsoft’s most notable failures (“I have to take you back in time to shy you why they’re so tired of ‘Microsoft’s visions’!”). Afterwards, they went forwards to the near future (2015) where the Doc showed a future controlled by Microsoft technologies, a future where Microsoft Bob and Clippit were the rulers of all they surveyed (“You look like you want to scream. Would you like me to help you?”). After a little more time-travelling where all was set right again (and where “Biff” was reduced to a Starbucks runner), the actual (“corrected”) keynote began.

The theme of the keynote is that Microsoft is giving you the technologies that the customers want to work with. Customers wanted increased Linux support, and they got it; during the keynote, they announced a Xandros interoperability plan, as well as showed a Linux box and various versions of Windows (server and client) running simultaneously on the same hardware. Customers wanted open standards, and a number of them were mentioned. (To quote Bob Muglia, “Standards are key. We work with standards bodies across the industry. [When] we build new technology, we work with open standards.”) A number of new technologies for IT professionals were shown off (which elicited more than a few ‘wows’), and a few technologies that will be mentioned later were touched on.

Unlike what you might expect, the spotlight was shared — not only among speakers, but with the technology. Orcas was shown off (“Now, this is Visual Studio 2008 beta one, and there is a small bug, believe it or not…”), many demos of Silverlight were shown off, and a new model-based centralized Windows Server 2008 control panel for distributed hardware setups were shown off (something which, frankly, went over my head, as I’m still struggling with ad-hoc connections — but got a lot of surprised applause from the IT section of the audience, so I assume that they highly approved).

After the 90 minutes of speeches, demos, and videos (and a few more antics from Christopher Lloyd), we were released onto the Orlando Convention Center. We only had five days, and we were all desperate to learn, and enjoy all the refreshments on Microsoft’s dime.

(A transcript and slightly-edited video of the keynote are available.)

.NET

.NET has been one of Microsoft’s greatest hits in the past few years, and its success was leveraged during the show. If you’ve never heard of it, the .NET (pronounced ‘dot net’) framework is Microsoft’s common library for building programs. Something of a shared library on steroids, the .NET framework makes it easier and quicker to program applications by providing common functions in an easily referenced way, and its Common Langauge Runtime lets you use any of Microsoft’s supported languages or even port your own to it (there’s even Smalltalk for .NET). .NET programs run by default on everything from XP and later, and it can be installed on many earlier versions of Windows. Much of the developer-focused course of the show was based around .NET 3.0 (recently released) and the version of Visual Studio built to best utilize it (Orcas), and the uses of the various subsets of the full .NET framework.

The single most interesting addition to the .NET framework was Windows Presentation Foundation, or WPF. WPF is an XML-based vector graphics approach to user interfaces (also known as XAML — Extensible Application Markup Language). As described in one session, the goals of WPF are to be “small in size, easy to read, and easy to write,” saving the developer time and headaches. Speaking as a developer, it succeeds in this respect; a look at WPF XAML code show that writing XAML code more closely resembles coding a webpage than the days of Windows Forms. I could hand-code a XAML interface; a Windows Forms interface all but requires a GUI.

A secondary addition was the Windows Communication Foundation, or WCF. WCF is a common XML-based method for transmitting messages over various mediums, including peer-to-peer networking (which elicited a few surprised remarks from the audience). Although interesting, it’s unrelated to what I am working on now, so I only went to one (very basic) seminar on it. Two other features new to 3.0 were mentioned — Windows Workflow, and Windows Cardspace — but neither made a big impression on developers.

One of the key points they tried to make about .NET was its usefulness across platforms; a .NET developer should have a reduced time of introduction into non-desktop platforms. One subset of the .NET framework is .NET Mobile, which is included with Windows Mobile 6. (One estimate quoted in the conference was that one billion mobile devices were running Windows Mobile 6 — rather a success.) Although upwardsly compatible with the full desktop .NET platform (which makes debugging much easier, since Mobile code can be run on a normal Windows box), the .NET Mobile platform takes into account the difficulties of developing for platforms that may use very different processor architectures.

XNA (“XNA’s Not an Acronym”), Microsoft’s indie video game programming initiative, is also based around a subset of .NET, and it also made a showing at TechEd 2007 this year. With the exception of the XNA-specific extensions (for things like game controls), it looks just like a standard .NET application. This subset uses controls that are common to both PCs and the XBox 360, and it is being used to develop games — the first if which is about to go commercial. There were a few difficulties for XBox 360 development mentioned in the seminar — mostly in trying to strike the right balance between ease of development and collaboration, ease of taking finished XNA games to market, and preventing abuse — but every indication is that the difficulties of XNA development are going to down further.

And then, of course, if we’re going to discuss cross-platform .NET development, we can’t forget Silverlight.

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.

Miscellany

Tablet PC: As this was the justification for my attending, I tried to get as much information on Tablet PC development; using XP Tablet Edition has made me a convert to the platform, and I hoped to get as much information on the technology as possible. However, although some of the informal get-togethers were invaluable in making connections and friendships, there was little ‘meat’ about Tablet PC development in and of itself. The good news, I suppose, is that Tablet technologies are now included in the Vista main line, which effectively increases the number of potential Tablet PC users by however many copies of Vista have sold so far. Additionally, tablet interfaces will be supported in the release version of Silverlight v1.1 — any Vista user can enjoy the capabilities of Vista’s new gesture- and ink-enabled OS, and the suite of programs that usually accompany it, by just buying a monitor with digitizer. However, the day of tablets as a separate field of programmming will soon be coming to an end. Ah well; at least it turns out that Tablet PC programming has prepared me for the Surface API…

Kernel changes: I wanted so much to attend all the seminars regarding the kernel changes in Windows Vista (and not just because I fancy myself an OSdev hobbyist), but they were scheduled at odds with the sessions I had to attend for my job. That’s a shame, because the one session I did get to attend (regarding the revisions to the memory manager and the scheduler in Windows Client) were fascinating… at least to an OS nerd like me.

UAC: UAC was a minor aspect of the week’s events. As the security expert put it, “UAC is not put in there for the average user or you or me. UAC is there to prevent system administrators from porking themselves — that’s a technical term.” Later on, another speaker made this comparison: “With UAC, you are Superman, but you run around as Clark Kent.”

Orcas: Much ado was made about Orcas, Microsoft’s newest version of Visual Studio. However… I just didn’t see the big deal. It’s free for now, which makes it a decent starter drug for developers, but once the beta closes, it’ll just be another piece of software I won’t be changing to from Visual Studio 2005.

Did the “Wow” start now?

Microsoft’s slogan for Windows Vista is “The wow starts now.” Just for fun, I began to keep tabs of every time someone actually said the word ‘wow’ in response to a piece of Microsoft technology (things like the $15,000 giveaway or the motorcycle giveaway didn’t count). All told, there were several hits:

  • In the keynote: A ‘wow’ in response to an application demonstrating RFID tags and SQL server. Several ‘wows’ in response to a demo where a .NET chess program competed against a Javascript chess program; given equal processing time, the .NET program won handily, due to its being able to search move trees deeper than its competitor.
  • In Understanding the Microsoft Support Lifestyle: A ‘wow’ in response to learning that Microsoft will now end support phases only once a quarter, no longer staggered at multiple times throughout a month (to save IT some headaches), and never in December.
  • In Microsoft Visual C# Under The Covers: An In-Depth Look At C# 3.0: A ‘wow’ in response to some of the new extensiblility functions.
  • In Microsoft Windows Vista Kernel Changes: A ‘wow’ in response to symbolic file links, a new kind of hyperlink. Also in response of the ability to cancel out of synchronous I/O, such as opens. Also in response to I/O now being able to be ‘prioritized’ just like threads.

I heard a few more, but I didn’t always have the time to jot them all down.

In conclusion

In conclusion, however, you have to ask: Was it worth it?

For the IT people, you don’t have to ask them twice. In the ride back from the attendee party, one nice gent I spoke with told me that the information he had called back to the office had already saved them $85,000; others reported similar savings from this or previous TechEds. When you can rate the value in money like that, then yes, the event is worth it.

For me, however, it wasn’t such a good deal. The event was heavily biased towards IT professionals, and I’m just a software developer — a developer of educational software, no less. However, I did learn about new technologies, and I learned that some branches that my group had been studying were going to end in failure. In between the time saved, the friendships made, and the community I joined, I have made the diference between the project’s on-time delivery and a very costly failure.

I hope I can get approval to go next year, too. I already miss the unlimited Pepsi and free string cheese.


If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.

8 Comments

  1. 2007-06-14 6:40 pm
  2. 2007-06-14 6:59 pm
  3. 2007-06-14 7:55 pm
    • 2007-06-14 8:42 pm
      • 2007-06-14 11:02 pm
        • 2007-06-15 11:04 pm
          • 2007-06-16 5:59 am
    • 2007-06-14 9:14 pm