Tag Archives: build

Steve Ballmer shows off Windows 8 in Build keynote

Microsoft’s BUILD conference has kicked off in Redmond with a keynote featuring CEO Steve Ballmer, Developer evangelist Steven Guggenheimer, and Kevin Gallo from the Windows Phone team. There were also a few guest appearances, including Tony Garcia from Unity, a cross-platform games engine.

The company has a lot to talk about, with Windows 8 just launched – four million upgrades sold so far, we were told, which seems to me a middling OK but not great result – and Windows Phone 8 also fully announced for the first time.

The keynote opened with a performance by Jordan Rudess from Dream Theatre, enjoyable and somewhat relevant given that he has helped create two music apps for Windows 8, Morphwiz and Tachyon, which he talked briefly about and played on a Surface RT and Lenovo desktop.

image

Then Ballmer came on and gave what I can only describe as a hands-on tutorial in how to use Windows 8 apps. I found this odd but it was well received; my conclusion is that many people have not bothered to look closely at Windows 8, or have been put off by the Start menu issue, and much of what Ballmer showed was new to them. It was not to me, so I was not gripped by this section of the keynote.

I preferred the presentation from Steven Guggenheimer; most of what he presented is also covered here, and included the announcement of forthcoming Windows 8 apps from Disney, ESPN and Dropbox. The Dropbox announcement is particularly significant, since I have heard complaints about its absence from Surface RT, which is unable to run the usual desktop client for Dropbox. Another app that is on the way is from Twitter. Guggenheimer also described a new PayPal API for Windows Store apps.

I do wonder why key services like Dropbox and Twitter are only now announcing Windows 8 apps. Windows 8 has been available in preview versions since last year’s Build event, and has not changed that much as a developer platform.

Gallo introduced some of the new features in Windows Phone 8, and claimed that Microsoft has delivered the majority of developer requests in the new Phone SDK which is available from today. He emphasised the possibility of sharing code between Windows Phone 8 and Windows 8, using Visual Studio to ensure compatibility.

Garcia presented Unity for Windows Phone, which is potentially a big deal, since it is widely used. The demo of immersive gaming graphics on Windows Phone 8 was impressive.

image

Finally, Nokia’s Richard Kerris came on, mostly to announce a giveaway of the new 920 Windows Phone 8 device for Build attendees.

image

This raised a loud cheer as you would expect, though it may be significant that the free phone won an even warmer reception than the earlier announcement of a free Surface RT.

The cost of signing up for a Windows Phone developer account has been reduced to just $8.00 for the next few days; see here for more details.

Did Microsoft do enough in this keynote? Personally I would like to have seen more technical depth, and a more convincing presentation of why the company thinks these new devices have what it takes to take on Apple and Google. Still, this is all about partners, and the arrival of Dropbox and Twitter as Windows 8 apps, and Unity for Windows Phone 8, are all significant events.

Why Microsoft is scrapping the MIX conference

Microsoft is scrapping its MIX conference, according to General Manager Tim O’Brien:

we have decided to merge MIX, our spring web conference for developers and designers, into our next major developer conference, which we will host sometime in the coming year. I know a number of folks were wondering about MIX, given the time of year, so we wanted to make sure there’s no ambiguity, and be very clear… there will be no MIX 2012.

O’Brien says that MIX started in the aftermath of the 2005 PDC because:

there was a lot of discussion around our engagement with the web community, and how we needed a more focused effort around our upcoming plans for Internet Explorer, the roadmap for our web platform, the work we were starting on web standards (we were shipping IE6 at the time), and so on.

That is not quite how I recall it. PDC 2005 was the pre-Vista PDC, no, not the “three pillars of Longhorn” in PDC 2003, but the diluted version of Longhorn that was actually delivered as Windows Vista. One thing Microsoft really did get around this time was that design mattered. Apple had cool design, Adobe had cool design (and a strong grip on the designer community), but Microsoft did not.

Windows Presentation Foundation (WPF) was intended to win designers to the Windows platform, with its graphically-rich and multimedia-friendly API. In order to do this, the company needed to win designers over to the idea of using Expression Blend rather than Adobe Flash and Photoshop.

This was doubly true when Microsoft decided to bring WPF to the browser in the form of Silverlight, a decision that was announced at PDC 2005 and expanded on at the first MIX in 2006.

One of the things I recall at the first and second MIX events were groups of bemused Flash designers who had been bussed in by Microsoft to enjoy the lights of Vegas and learn about Blend.

General web authoring was a factor as well, as Microsoft sought to bring Internet Explorer back on track and to persuade web designers of the virtues of Microsoft’s web platform.

I enjoyed the MIX events. They were small enough that you could easily get to speak both to attendees and to the Microsoft folk there, and once you allow for the fact that Vegas is Vegas, the atmosphere was good.

As an attempt to appeal to designers though, MIX was a failure. It was all too forced; many of the people attending were developers anyway; and Microsoft itself included more and more developer content in ensuing MIX events.

The 2010 MIX was hijacked by Windows Phone 7, an interesting topic but drifting far from the original intentions.

It comes as no surprise to hear than MIX is no more. It is associated with WPF and Silverlight, neither of which are now strategic for Microsoft in these days of Windows 8 and the Windows Runtime (WinRT).

That said, Microsoft still has difficulty appealing to designers.

What next then? O’Brien says:

we look ahead to 2012 and beyond, the goal is to ensure that global Microsoft developer events are of the caliber that many of you experienced at BUILD last September, in addition to the thousands of online and local developer events we host around the world to support communities and connect directly with developers. We will share more details of our next developer event later this year.

image

Reflections on Microsoft BUILD 2011

I’m just back from Microsoft’s BUILD conference at Anaheim in California, which lived up to the hype as a key moment of transition for the company. Some said it was the most significant PDC – yes, it was really the Professional Developers Conference renamed – since 2000, when .NET was introduced; some said the most significant ever.

image

“Significant” does not necessarily mean successful, and history will judge whether BUILD 2011 was a new dawn or the beginning of the end for Windows. Nevertheless, I have not heard so much cheering and whooping at a Microsoft conference for a while, and although I am no fan of cheering and whooping I recognise that there was genuine enthusiasm there for the new direction that was unveiled.

So what happened? First, let me mention the Windows Server 8 preview, which looks a solid upgrade to Server 2008 with a hugely improved Hyper-V virtualisation and lots of changes in storage, in IIS, networking, in data de-duplication, in modularisation (enabling seamless transition between Server Core and full Server) and in management, with the ascent of PowerShell scripting and recognition that logging onto a GUI on the server itself is poor practice.

The server team are not suffering the same angst as the client team in terms of direction, though the company has some tricky positioning to do with respect to Azure (platform) and Server 8 (infrastructure) cloud computing, and how much Microsoft hosts in its own datacentres and how much it leaves to partners.

What about Windows client? This is the interesting one, and you can almost hear the discussions among Microsoft execs that led them to create the Windows Runtime and Metro-style apps. There is the Apple iPad; there is cloud; there are smartphones; and Windows looks increasingly like a big, ponderous, legacy operating system with its dependence on keyboard and mouse (or stylus), security issues, and role as a fat client when the industry is moving slowly towards a cloud-plus-device model.

At the same time Windows and Office form a legacy that Microsoft cannot abandon, deeply embedded in the business world and the source of most of the company’s profits. The stage is set for slow decline, though if nothing else BUILD demonstrates that Microsoft is aware of this and making its move to escape that fate.

Its answer is a new platform based on the touch-friendly Metro UI derived from Windows Phone 7, and a new high-performance native code runtime, called Windows Runtime or WinRT. Forget Silverlight or WPF (Windows Presentation Foundation); this is a new platform in which .NET is optional, and which is friendly to all of C#, C/C++, and HTML5/JavaScript. That said, WinRT is a locked-down platform which puts safety and lock-in to Microsoft’s forthcoming Windows Store ahead of developer freedom, especially (and I am speculating a little) in the ARM configuration of which we heard little at BUILD.

BUILD attendees were given a high-end Samsung tablet with Windows 8 pre-installed, and in general the Metro-style UI was a delight, responsive and easy to use, and with some fun example apps, though many of the apps that will come as standard were missing and there was evidence of pre-beta roughness and instability in places.

The client strategy seems to me to look like this:

Windows desktop will trundle on, with a few improvements in areas like boot time, client Hyper-V, and the impressive Windows To Go that runs Windows from a bootable and bitlocker-encrypted USB stick leaving no footprint on the PC itself. Many Windows 8 users will spend all their time in the desktop, and I suspect Microsoft will be under pressure to allow users to stick with the old Start menu if they have no desire or need to see the new Metro-style side of Windows..

A new breed of Intel tablets and touch-screen notebooks will make great devices towards the high end of mobile computing. This is something I look forward to taking with me when I need to work on the road: Metro-style apps for when you are squashed in an aeroplane seat, browsing the web or checking a map, but full Windows only a tap away. These will be useful but slightly odd hybrids, and will tend to be expensive, especially as you will want a keyboard and stylus or trackpad for working in desktop Windows. They will not compete effectively with the iPad or Android tablets, being heavier, with shorter battery life, more expensive and less secure. They may compete well with Mac notebooks, depending on how much value Metro adds for business users mainly focused on desktop applications.

Windows on ARM, which will be mainly for Metro-style apps and priced to compete with other media tablets. This is where Microsoft is being vague, but we definitely heard at BUILD that only Metro-style apps will be available from the Windows Store for ARM, and even hints that there may be no way to install desktop apps. I suspect that Microsoft would like to get rid of desktop Windows on ARM, but that it will be too difficult to achieve that in the first iteration. One unknown factor is Office. It is obvious that Microsoft cannot rework full Office for Metro by this time next year; yet offering desktop Office will be uncomfortable and (knowing Microsoft) expensive on a lightweight, Metro-centric ARM device. Equally, not offering Office might be perceived as throwing away a key advantage of Windows.

Either way, Windows on ARM looks like Microsoft’s iPad competitor, safe, cloud-oriented, inexpensive, long battery life, and lots of fun and delightful apps, if developers rush to the platform in the way Microsoft hopes.

There are several risks for Microsoft here. OEM partners may cheapen the user experience with design flaws and low-quality add-ons. Developers may prove reluctant to invest in an unproven new platform. It may be hard to get the price down low enough, bearing in mind Apple’s advantage with enormous volume purchasing of components for iPad.

Still, one clever aspect of Microsoft’s strategy is that everyone with Windows 8 will have Metro, which means there will be a large installed base even if many of those users only really want desktop Windows.

I also wonder if this is an opportunity for Nokia, to use its hardware expertise to deliver excellent devices for Windows on ARM.

Finally, let me mention a few other BUILD highlights. Anders Hejlsberg spoke on C# and VB futures (though I note that there were few VB developers at BUILD) and I was impressed both by the new asynchronous programming support and the forthcoming compiler API which will enable some amazing new capabilities.

I also enjoyed Don Syme’s session on F#, where he focused on programming information rather than mere algorithms, and showed how the language can query internet data sources with IntelliSense and code hints in the IDE, inferred from schemas retrieved dynamically. You really need to watch his session to understand what this means.

In the end this was a great conference, with an abundance of innovation and though-provoking technology. In saying that, I do not mean to understate the challenges this huge company still faces.

Here comes Windows 8 – but what about the apps?

I’ve spent what feels like most of the night trying out the first developer preview of Windows 8, using an Intel tablet PC loaned by Microsoft for that purpose. The early preview is frustrating, in that many of what will be standard apps like Mail and Contacts are missing, but it is already obvious that Microsoft has done a great job with what I am calling the “Metro” platform within Windows 8. Here is Control Panel in the new user interface:

image

This is the touch-optimized personality of tthe new operating system, featuring a Start menu with live tiles like an evolved Windows Phone 7, apps that run full-screen to create an "immersive user interface", and swipe control to show application menus, switch apps, or access standard features.

It is a delight to use; but this is Metro, with its own Windows Runtime (WinRT), a native code API which is wrapped for access by either HTML and JavaScript apps (which also use the IE 10 runtime), or by C/C++, VB or C# apps driving XAML-defined user interfaces – yes, kind of like Silverlight but not Silverlight.
What about all our Windows apps? For that we need the desktop personality in Windows 8. Tap the Desktop tile, or launch a "Desktop" app, and it suddenly appears, looking much like Windows 7.

The problem: while Windows 8 "Metro" looks great, there are currently zero apps for it, or at least only those supplied with the preview, because it is brand new.
In truth then, Microsoft has not quite done what would have been ideal, which is to make Windows touch-friendly. That would have been impossible. Instead, it has integrated Windows with a new touch-friendly platform.

The key question: will this new platform attract the support it needs from developers in order to become successful in its own right, so that we can do most of our work there and retreat to the desktop only for legacy apps, or apps which really need mouse and keyboard?

It is a big ask, and we have seen HP with WebOS, and probably RIM with PlayBook, fail at this task.

Of course it is still Windows; but I do have a concern that a proportion of users will try Windows 8, find the transitions between Desktop and Metro unsettling, and stick with version 7.0.

Let me add these are very much first impressions; and that Metro really does look good. Perhaps it will win; but a lot of momentum has to build behind it for that to be possible.

Building Windows – when Microsoft shows its hand

I’m in Anaheim, California on the eve of Microsoft’s BUILD conference. I have heard the phrase “wait until BUILD” so many times from Microsoft over the last few months that it has given this conference a special flavour. After Wednesday, the company will have to think of another way to avoid awkward questions like what is happening to Silverlight.

This is the latest chapter in the progression of Windows, server client and mobile. In particular, I will be trying to understand Microsoft’s software development platform. Whatever it looks like, it will be diverse, and include native code, HTML and JavaScript, .NET code including Silverlight, and perhaps some new hybrid. What will be the pros and cons of each approach, how do developers create apps that span desktop, tablet and mobile, and how will the delivery model change in the app store era?

Interesting questions; but the other theme is about how effectively Microsoft will compete versus its competition as the importance of desktop Windows shrinks. Cloud, mobile and tablet are the themes here, and after many mis-steps time is running out.

Not much to add except “watch this space” over the next few days; though I would be interested in any specific comments or questions on Microsoft’s strategy.

Windows Phone 7 apps, stats and future

Justin Angel, a former Microsoft employee who worked on Silverlight, has posted his analysis of the 24,505 apps he found in the Windows Phone 7 marketplace, exploiting a loophole that lets you get the download links. A few highlights:

  • 97% of the apps are not obfuscated, meaning that it is trivial (with easily available tools) to decompile the source.
  • 90% are Silverlight vs 10% XNA. This is not so much an indicator of the popularity of the two frameworks, but more an indicator of how many apps are graphic-rich games rather than some other kind of utility. Of course if you are making a very simple app, Silverlight is easier than XNA, so that may be a factor too.
  • 99% are C# vs 1% Visual Basic and a smattering of F#. A fascinating stat that makes me wonder what is the future of Visual Basic.

There are more interesting stats about libraries and components used, for which I refer you to the original post.

Does it matter? Well, Windows Phone 7 has not been a big success so far, though the reasons for that are not so much the quality of the OS or the ease of developing apps, but rather its low profile at retail and the fact that most operators and manufacturers don’t really need it: Apple and Android between them pretty much have the market.

That said, there are a few reasons why Windows Phone or some evolution of it may yet be significant. Nokia is betting on it, and while Nokia is undoubtedly in difficulties, this must work in Microsoft’s favour. Further, fear uncertainty and doubt surrounding Android patent and copyright issues may persuade some industry players to give Windows Phone another look.

Perhaps more significantly, when Microsoft unveils its developer strategy at the BUILD conference next week, it is likely that the application model in Windows Phone, or some evolution of it, will integrate with what is planned for Windows 8. NVIDIA is already talking about how Windows 8 will run Windows Phone apps.

For these reasons I believe there is at least a glimmer of hope for Microsoft in the mobile world; certainly the developer story to be officially told next week will be an interesting one.

A pivotal moment for Microsoft as it attempts to escape its Windows legacy

image

Last year I wrote a piece for The Register on 25 years of Windows. I even ran up Windows 1.0 in a DOS box to have a look.

The surprising thing about Windows is not how much has changed in 25 years, but how little. The WIMP model (Windows, Icons, Menus, Pointer) has stayed the same. Inevitably, Windows was completely rebuilt during that period, in the form of Windows NT, but Microsoft was careful to make the user interface reassuringly familiar. Windows NT 3.1 looked the same as Windows 3.1, but did not crash so often. Windows NT 4.0 used the Windows 95 user interface. Further, as far as possible old applications still ran. In fact, Notepad on Windows 1.0 looks very like Notepad on Windows 7.

Then Apple releases the iPhone in 2007, and suddenly Microsoft has a problem. Apple demonstrates that it is possible to create a touch user interface, without a stylus, that really works. Apple does this by creating a new operating system, iOS, which is incompatible with its existing OS X used for desktops and laptops. Yes, much of the underlying code is the same, but OS X applications do not run. Nobody would expect them to on a phone; but then Apple does the iPad, approaching the screen size of a laptop, but still iOS, touch-centric, and incompatible with Mac OS X.

The advantage of Apple’s clean-room approach is that there are no compromises or fudges to make applications built for keyboard and mouse somehow work. iPhone and iPad are huge hits, and users seemingly do not mind sticking with OS X for their productivity applications like Microsoft Office and Adobe PhotoShop, and using the iPad and iPhone for web browsing and for apps that are more about consuming than creating – except that productivity apps like the iWork suite are now creeping onto iOS, and this together with the web application/cloud computing model may mean that OS X gets used less and iOS more over time; but OS X is not going away.

What about Microsoft? It has a big hit with Windows 7, but suddenly it all feels rather legacy. What about the new computing model which is mobile, touch-centric, and enjoyable to use in a way previously unknown in computing? One thing is sure: Microsoft cannot continue with WIMP. It has to break with 25 years of Windows and find a different user interface model.

2010, and Microsoft does Windows Phone 7. This is Microsoft’s iOS: same old Windows underneath, though based on the cut-down Windows CE, but otherwise a complete break from the past. The user interface is a new touch-centric effort called Metro and based on sliding tiles. The main thread of continuity for developers is its app platform based on Silverlight, which runs .NET code written in C# and Visual Basic.

You might have thought that Microsoft would follow Apple by using the phone OS for other form factors as well, and making Silverlight its core app platform for Windows (the cross-platform dream is long gone).

Instead, Microsoft embarked on a third strategy.

“We introduced a new platform based on standard web technologies”, says program manager Jensen Harris in his preview video. Windows 8 uses elements from the Windows Phone 7 UI, but driven by HTML and JavaScript rather than by Silverlight. Well, maybe you can use Silverlight instead; or maybe native code. Not everything is clear yet; but what Microsoft is choosing to focus on is its use of web technology.

Who will buy touch-centric Windows 8 devices? Microsoft’s problem: there is already a touch-centric OS out in the market, supported by countless third-party apps. As it has discovered with Windows Phone 7, it is not enough to do a decent alternative. So what, says the market, we already have iOS, and if we want something non-Apple, there’s Android. And WebOS. And Blackberry PlayBook.

The one thing Microsoft can do that others cannot is run Windows. Not new Windows, but old Windows. There is a reason why Windows 7 was the fastest-selling operating system of all time – most of the business world runs on Windows.

Therefore Windows 8 does both. There’s the new platform, and there’s the old platform, and you just swipe between them.

image

Windows 8 is a migration strategy. Is a mobile, touch-centric UI the future of client computing? Quite possibly, but in the meantime you have all this old stuff to run, not least Microsoft Office. Here is the answer: run both.

There are a few problems with this strategy.

First, while Microsoft will focus on the new HTML-based platform, in the real world people will buy Windows to run their existing Windows apps. That means they will need keyboard and mouse. Windows 8 OEMs will be fighting an old battle: how to make devices that run well as tablets, but also have keyboard and trackpad, and a competitive price. We have seen that approach fail with the old Tablet PC line and its swivel screens.

Alternatively, we will see touch-only devices and users will curse as they try to run Excel.

Second problem: Microsoft’s Windows team is focused on the new UI. The old one will likely be pretty much Windows 7. The success of Windows 7 was driven by innovations and improvements that matter whatever you run, rather than ones that you can only use if you are running apps built for the new platform.

A split personality means divided attention, and one or other or both will suffer. Is Windows 7 now frozen in time as the last of its line? That does look possible.

Third, what is the developer story? Hitherto, the Windows developer story has been pretty simple and single-minded. There is native code and the Windows API, or for the last decade or so there has been .NET. All-conquering C# has been the unifying language from desktop to server, with Silverlight bringing it to the browser.

Now Microsoft is saying HTML and JavaScript. Plaudits from the standards folk – who mostly do not run Windows and still will not – but confusion for the Microsoft-platform community.

That said, I will be surprised if Silverlight is not also an option for new-style apps, enabling Windows Phone apps to be ported easily.

Even so, there must be a reason for Microsoft’s emphasis on HTML and JavaScript for local apps as well as web applications. It does feel as if the one common thread to the company’s developer story has suddenly been cut, and for no good reason given that Silverlight fits perfectly with the new UI model.

Let me add, it is hard to see a future for the Windows Phone 7 OS, given what we have seen in Windows 8. It seems plausible that Windows Phone 8+ will use the same code as Windows 8, which is another reason to suppose that Silverlight will be fully supported.

I can see where Microsoft wants to get to. It wants to succeed in mobile and in the new touch-centric world, as the alternative is gradual erosion of its entire market and Windows ecosystem. Is this the best way, and will it work? Open questions; and the company has some tricky positioning to do, especially to its developers. The forthcoming Build conference will be critical.

Check out these images of Windows 8 – but where is Silverlight?

Microsoft’s Windows President Steven Sinofsky has shown off an early build of Windows 8 at the D9 conference in Rancho Palos Verdes, California. It turns out that the not-so subliminal messaging at the PDC conference late in 2010 was spot on. HTML 5 and JavaScript are at the centre of the new Windows, for apps as well as in the browser:

Windows 8 apps use the power of HTML5, tapping into the native capabilities of Windows using standard JavaScript and HTML to deliver new kinds of experiences.

says program manager Jensen Harris in his introductory video.

So what is the new Windows like? Here is tour with some screen grabs from the above video. I have deliberately included fingers in several of the shots, because the new Windows is touch-centric.

First, Windows 8 borrows from Windows Phone and has a Start screen built with Live tiles:

image

Live tiles, as on Windows Phone, are more than just icons; they can include notifications, video and animations. They are more like app previews.

Apps run essentially full-screen, as on Apple’s iPad:

image

You switch apps by swiping. Here is a screen caught mid-swipe:

image 

However, you can also have two apps on screen. One is the main app, the other is docked to the side:

image

A menu on the right shows Search, Share. Start. Connect and Settings. I am not sure what Connect does.

image

Believe it or not, this is Internet Explorer 10, with tabs along the top that preview each page (nice idea):

image

The on-screen keyboard looks like a big phone keyboard:

image

Dual Personality

So where is the rest of Windows that we know and love/hate? It is still there; run an “old” Windows app like Excel and presto, it is Windows 7, complete with task bar. This image looks blurry, which actually is a clue to how big and bold the UI shown for the “new” apps really is:

image

You can run old and new-style apps side by side, using the main/side app model:

image

Windows 8 will run on both Intel x86/x64 processors, and on ARM. Legacy app compatibility on Intel will be great, but on ARM applications will need to be recompiled. There is no x86 emulation layer; Sinofsky said that was too difficult to do. Windows 8 will not require any more hardware than Windows 7.

It looks like Microsoft has created an excellent tablet/slate UI which has the same relation to the iPad that Windows Phone 7 has to the iPhone. It borrows many of the ideas but adds some distinctive features.

The big difference: whereas Apple has chosen to continue a dual line, with desktop/laptop Mac in one stream and iOS for iPhone and iPad in another, Microsoft is combining the two.

At least, it is in Windows 8. What about the current Windows Phone OS, which is built on the Windows CE OS? Will it be replaced by a variant of Windows 8, possibly with “full Windows” option disabled? That is my guess, but there is a lot which Microsoft has not yet explained about its future product plans.

Another question: where is Silverlight and .NET? Clearly these technologies are still supported, at least on x86, since all of Windows is still there. In a report from D9, Sinofsky says:

The browser that we showed runs Silverlight and it will still run on the desktop

That does not answer the question: can developers build apps for the new Windows user interface (and Windows store) using Silverlight, or is it HTML/JavaScript only? What about native code?

I will be surprised if all these options are not available, but it was not explicitly stated at D9. The emphasis is firmly on HTML.

We are promised more details at the BUILD conference in September.