Looking Back at BUILD
BUILD, the “everything is secret”, “no information until September” conference is over and I’m back at home. Time for a personal look back.
The Announcements
Others have already done the job of writing a full roundup (here is one of the many), so I will give you only the the short version from a developer’s perspective:
- Windows 8 offers a new kind of applications with a new UI (“Metro”), running on top of the new Windows Runtime (“WinRT”).
- WinRT was developed with an emphasis on performance, both real (it is written in native code) and perceived (all API calls taking longer than 50ms are designed to be called asynchronously).
- “Metro style apps” can be developed in C++, C# or JavaScript
- C++ and C# applications use a XAML based UI technology, similar to Silverlight, but with higher performance and built-in touch support.
- JavaScript applications use HTML5 and CSS for their UIs.
- Windows 8 still allows “classic” desktop applications, developing these is not different from developing for Windows 7.
The bottom line: A wide range of developers will feel at home writing Metro style applications. That wasn’t all that clear after the messages from the unveiling of Windows 8 at the D9 conference in June, where it was all about HTML5 and JavaScript – which made many .NET developers mad. And shutting down all channels of information until September didn’t really help making the situation any better.
Was the intended effect of unveiling of WinRT as a surprise (i.e. “pulling an Apple”) really worth yet another Microsoft PR disaster? In a world where perception often is as important as reality, Microsoft PR really should put a bit more thought into what is said publicly and how people could react to it.
What about Silverlight?
The future of Silverlight after the release of version 5 later this year remains unclear. Sure, Silverlight applications won’t magically stop working in e.g. Windows 7. And it could be that Silverlight 5 is “good enough” for years to come. But there’s already the hint of a limited life time inside the Windows 8 Metro UI with its plugin-less Internet Explorer (the desktop version will allow Silverlight to run, though).
For business applications, an area where Silverlight really shines (forgive the pun), Metro style applications are not an alternative yet. Currently all Metro style apps will have to go through Microsoft’s app store, which in many situations simply isn’t acceptable. At some point in the future Microsoft will have to offer a solution for business applications with some kind of private app store, similar to what Apple already has.
The Sessions
As I’m very interested in UI/UX, I attended the user experience sessions regarding the design principles behind the Metro UI, which I enjoyed very much. I can highly recommend this and this session.
The technical sessions on the other hand were a mixed bag. Some of the “I’ll show you how to build X” talks that I saw were rather light on content, with the title promising more depth than was actually shown. There’s nothing wrong with introductory content, but the usual labeling of sessions from “level 100” to “level 400” was sorely missing. And please refrain from the term “deep dive” if your session merely gets people’s toes wet.
Not publishing the agenda before the conference prevented people from planning their personal schedule e.g in an online application, which in turn meant that Microsoft had no data for planning the required session rooms. The result: too many sessions ended up in rooms that were way too small and many people could not see the sessions they wanted. Unlike earlier PDCs, BUILD did not offer any overflow rooms.
Sure, the sessions were available on video the next day, but an important reason for attending a session in person is to be able to discuss the topics with other people afterwards.
The Location
The Anaheim Convention Center is a very typical conference location (i.e. at some point they all look the same). And because of that, two very typical problems came up:
- The chairs are designed for skinny female super models, not laptop-wielding IT guys
- The air condition is just too much for a European like me.
The handling of many thousand people is something that “just works” at developer conferences in the US (at least at the ones I have been to in the last 13 years). Congratulations to the BUILD organizers and their staff for having done a good job at directing the masses when giving out the slates, feeding the hungry and keeping the fridges full of soft drinks at all times .
The Slate
As mentioned above, attendees received a slate PC with a preview build of Windows 8. The machine is not actually an iPad killer, but this giveaway is not about providing people with a free toy to play around. This is a developer machine for giving attendees the opportunity to develop and test Windows 8 applications.
The slate has an Intel x86 processor and is able to run “classic” Windows apps. This makes the machine run hot (it has a fan) and, I guess, also heavy. Things will look different on an ARM CPU, but it remains to be seen whether anybody will be able to come near Apple’s iPad from a hardware point of view.
My Personal Takeaways
The following list is by no means complete:
- I’m impressed by the work on performance in Windows 8.
- WinRT is a major step forward in many ways.
- We’re in a transition period which will take many years.
- The ongoing work on C# is impressive. I really like how Anders Hejlsberg and his team approaches things, thinks about the consequences and continuously improves the language and its compiler.
- Microsoft really gets the importance of good UX. This does not necessarily translate into great UX in Metro, though, which at some points doesn’t feel quite natural yet. But they are heading in the right direction.
- I’m disappointed by the lack of communication regarding Silverlight.
- My development skills in C# and XAML will be still valuable in the future.
- My skepticism towards “HTML5 + JS + CSS” (disclaimer: I have written large amounts of JavaScript in my life) wasn’t helped by the fact that one problem during a demo was caused by a simple typo that a compiler would have caught.
- During the Ask the Experts I learned that the common Metro controls are actually not a fine example for the power of HTML5. Many calls to WinRT are necessary behind the scenes to achieve the performance or fully support touch. I don’t have a problem with that, people just shouldn’t look at the UI and think “who needs anything else besides HTML5, JS”.
- I really like the concepts for interoperability between applications e.g. via contracts.
- The pooled storage feature of Windows Server 8 (pool of storage space across multiple hard drives) looks like something that could bring back the Drive Extender feature to a future version of Windows Home Server.
The following months and years are definitely going to be interesting!