Three dying platforms: Flash, Silverlight, Win32

It is a little early for a review of the year, but not too early to state that 2011 has brought profound changes to the software development world. Although I am thinking mainly of the client, I would also argue that client and server are so intertwined that both are affected. As an example, I have heard developers moving away from SOAP web services not because of any conviction that REST is a better approach, but because the move away from Windows and towards HTML clients makes SOAP web services more difficult to consume.

So what's changed? Simply put, three platforms which once seemed strategic are now in obvious decline. Getting the nuance right for these platforms is tricky. Lots of software still runs and is still widely used long after it has ceased to be strategic for the company which supports it. All the platforms mentioned negatively below are still in active development; they are not going away and will still be running ten years and more from today. They come with health warnings though: depending on these platforms means that your software will gradually become more difficult for users to run and will be left behind by new technologies.

The decline of Silverlight

In the run up to the launch of Microsoft's Visual Studio 2010 I spoke to a number of Microsoft platform developers. The consensus then was that Silverlight was very important and possibly the future of Microsoft's client. The view was supported by the company's energetic development efforts for Silverlight. It also made a lot of sense: a lightweight, secure, cloud-centric client that escaped the GUI limitations of Win32, worked in the browser or as a desktop application, and as a bonus run on Mac as well as Windows. Silverlight, as I noted in several articles, is client-side .NET done right.

This is not the place to write a long screed about why Silverlight failed, but rather to note that at the end of 2010 it became obvious that Microsoft was changing direction. At the Professional Developers Conference, October 28-29 2010, it was hardly mentioned, and the company focused instead on HTML and Internet Explorer 9. The full extent of its new strategy was not shown until this year, at the BUILD conference in September.

It is not only external developers that were surprised by what seemed a sudden change of direction. The same seems to be true of many within Microsoft itself. Nor am I sure exactly when someone decided that Silverlight was no longer strategic, though there are clues in the Silverlight release schedule. When Silverlight 4 was unveiled in November 2009 it was still ascendant. Silverlight 5, due out shortly, suggests that it was still considered important in early 2010. Visual Studio LightSwitch released this year was likely planned in part as a way of boosting Silverlight, since it builds Silverlight applications. But nobody is talking about Silverlight 6.

Silverlight is still the development platform for Windows Phone 7, but many observers, myself included, believe this will give way to a variant of the new Windows Runtime (see below) in a future version.

This has been a costly experiment for Microsoft. If the company had done the Windows Runtime, rather than Silverlight, back in 2007, imagine how much stronger would be its position now. That said, it is not all wasted. XAML, the presentation language in Silverlight and in Windows Presentation Foundation, continues in the Windows Runtime, and so does the essence of the cloud-centric, client-secure development model.

Adobe Flash Deprecated

Back in 2007 Silverlight seemed to be in part a competitive response to the increasing popularity of Adobe Flash. This month though, Adobe went though wrenching changes of its own, announcing the end of Flash on mobile browsers and a fundamental shift in business strategy away from enterprise development and towards content creation and distribution.

There are plenty of parallels with the Microsoft case. One is that the changes also came as a surprise to many within the company, who just a few weeks before, at the MAX conference in Los Angeles, were talking confidently about the future of Flash and of Flex, the application-centric SDK for Flash. Here is Doug Winnie, a casualty of the inevitable layoffs:

The product managers, evangelists, community managers, and developer relations team members found out the news and the way it was communicated at almost the same exact time you did. They are wrestling with the news and your reaction in real time--so please be supportive of them as they dig through everything.

and here is Duane Nickull:

While on the 3rd day of my vacation in Mexico, I got the call with the explanation that Adobe is doing a major refocus and as part of that, many of us "enterprise" types are no longer required. "Überflussig" I guess is the correct German word for the situation. Keep in mind that I now speak as an individual, not as an Adobe employee. I missed most of the official story due to the timing of my vacation but caught up with a few news outlets to get the rationale.

But isn't Flash still going strong on desktop browsers, and the Flex SDK heading for great new things as an open source project at the Apache Foundation? Well, maybe. Adobe is not betting on that though; it is betting on design tools for content, HTML5, and packaging and distributing publications and apps. Its Flash technology is still critical to how that is done under the covers, but Flash itself will be invisible.

Adobe also says that its LiveCycle middleware will continue to evolve in two specific niches:

We will continue to sell and support our LiveCycle products in the government and financial services markets, two areas where the LiveCycle value proposition remains especially strong.

Again, maybe. This sounds more like Adobe keeping faith with some important customers, than a strong future for LiveCycle.

Win32 Deprecated, .NET changes

Microsoft announced another profound change in direction at its BUILD conference in September. Although related to the decline of Silverlight, this one deserves its own heading. What we saw was that the Win32 platform on which Microsoft has built its prosperity for the last twenty-one years or so (Windows 3.0 came out in 1990) is now being shunted aside. "Shunted aside" is the right term because it is still there in the forthcoming Windows 8, but it is side by side with the new Windows Runtime (WinRT) and a touch-friendly user interface called Metro. The company's goal is to create a platform that will succeed against Apple's iOS. It runs on ARM as well as Intel x86 and has its own Windows Marketplace, similar in concept to Apple's App Store.

Leaving aside the merits of WinRT, the big news here is that Microsoft is finally moving away from the Windows desktop on which most of us have done our work day to day for the last two decades. The reasons are obvious: mainly the rise of iOS and the iPad, but also the success of the Mac among developers and at the premium end of the laptop market. Windows was already in decline.

Your Win32 applications will work forever, but Microsoft's energy is now going elsewhere.

What about the .NET Framework on the client? It is still there, and thanks to the excellence of the C# language I expect it will be the most popular approach for coding for Metro. Parts of the Framework will no longer work in Metro though, and it may even be that HTML5 and JavaScript, which is equally well supported, will gradually supplant it. Nor do I take the success of Windows 8 for granted; Microsoft may find the tablet market already largely absorbed by iOS and Android.

That is speculation; but the long-term decline of Win32 is not.

Platforms ascendant

If these platforms are in decline, what the ones that are rising fast? That is simple to answer. Apple iOS, Google Android, and HTML5 in general. Are these good for the next two decades as in Win32, or will be on the deprecated list in a few years? That is hard to say; if I had to rate them in order of likely longevity I would guess this:

1. HTML, JavaScript and CSS

2. Apple iOS

3. Google Android

Predictions though are a dangerous game, and I would be interested in other opinions.

0 TrackBacks

Listed below are links to blogs that reference this entry: Three dying platforms: Flash, Silverlight, Win32.

TrackBack URL for this entry: http://www.itjoblog.co.uk/blogadmin/mt-tb.cgi/211

15 Comments

David Gerard said:

I disagree. Win32 is going to linger. Maybe not like COBOL, but there's so much legacy code it's going to stick around, whether running on Windows 2022 or Wine.

(and, by the way, Wine is entirely up to corporate production use ... because I've worked places that used it. The choice was (a) buy another box and a copy of Windows for it (b) run the single piece of [overpriced vertical market proprietary, and as shoddy as most such software is] software in Wine 0.9.something. And guess what, it worked flawlessly.)

Tim Anderson Author Profile Page said:

David

I agree it will linger *forever* and said so in the piece. As I mentioned it's hard to get the nuance right.

Tim

Eric said:

I guess you're a bit too optimistic for iOS: it's already losing ground to HTML+JS in its own turf, while Android is still breaking new ground.

Vic Klien said:

Tim,

Good article as usual. But I'd argue the verb "dying" in your headline is going a bit far. Another way to look at the status of Win32 and Silverlight is "mature" or "built-out, mature, productive and still best for some use-cases". Last year you had a piece about Evernote v4. The core idea was that Evernote had switched from using WPF back to lean-and-mean C++ (and hence raw Win32) and turned out a nicely done, high performance product. This is what I'd call "productive maturity", rather than "dying".

Regarding the possible current ascendency of HTML: This caused me to re-read Joel Spolsky's classic 2004 (7+ years old) article "How Microsoft Lost the API War". The gist was that Microsoft's Win32 API had lost out to platform-agnostic HTML. Joel concludes by saying: "The new API is HTML, and the new winners in the application development marketplace will be the people who can make HTML sing."

I don't question the importance of HTML(5) for some types of applications, and yet Evernote chose the "mature" platform-specific Win32, 6 years after Joel pronounced its "loss" to HTML.

Vic

Tim Anderson Author Profile Page said:

Thanks Vic. Agreed win32 is far from dead in the sense of being a platform worth targetting - same is actually true of Flash and even Silverlight. What I mean is that I cannot see the platform doing anything but decline from now on, even though it will remain very widely used.

Three declining platforms might have been a better headline, though I hope the content is clear about that.

Tim

Eric Schmidt said:

I bet my life that tablets will not survive next 2 generations and will die.

About Flash will remain ruling the internet until html 5 get easier to develop.

How can Silverlight die? It never had lived

Cross-Posted from Google+:

Well, a lot of this is brought on by tablets. Tablets are very under powered currently compared to a PC. Even the iPad 2 browsing is painfully sluggish at times with it's measly 512megs of ram, so of course browser plugins are out of fashion at the moment. Tabbed browsing just came last month to iOS. But Moore's Law is going to fix that, which is why Microsoft's tablet strategy with Win 8 makes so much sense in the long term.

You failed to mention the event that MS put on exclusively for Silverlight after last year's PDC. It's also rumored to be coming to the Xbox and might play a part in the coming TV platform war.

Silverlight is a mature platform now and doesn't need a major new release every six months any more. But everyone seems to like to panic about it so that they can have something interesting to rant about on the Internet.

Silverlight is available on 78% of browsers today and that number is still growing fast. Flash is still at 96%. There's still more demand for rich internet apps than ever and that's not going to change. Devs still want zero click deployment of their apps and games. Even if focus has moved to the tablets it will come back soon enough. If not then maybe Google's NaCl will pick up the slack. Mono already runs on it, so there's +30% of the market that won't even need a plug in to be installed.

HTML & Javascript will never be robust for serious apps. Flash's Actionscript is just as bad. I'm pretty sure Google is working on NaCl versions of docs, gmail and maps. They don't like JS and they've probably used it the most.


MS runs it's dev division at a loss and there is logic in keeping developers happy in order to push windows, but I think they are also motivated by the love of advancing the state of the art. When you have a backstabbing former employee traitor like Scott Barnes trash talking every move SL takes and you and the rest of the press declaring it dead over and and over again for over a year now for no good reason, it's probably very demotivating and sours the kudos that MS deserves for creating such an awesome platform.

stef13013 said:

Wha that mess...
Developping today is becoming nightmare.

Adobe :
Yes Flash will rule them all, but wait now, way back ! HTML is better... !?

Microsoft : Java is born, they did .NET
Flash is born they did SilverLight
Flash is -almost- dead, SilverLight also (I said almost)

Funny, Today only Apple with its "so-called" Obj-C remains coherent (Don't kid yourself I'm not an die-hard apple fan ;)

Mad world...

Regarding the dead of Silverlight, here are some blogs from MS "traitor" Scott Barnes, that used to be a "custodian' of SIlverlight that will definitely enlighten us:

Why Silverlight was destined to fail and my time as one of its custodians and

Silverlight is dead, dead and dead


The software development weapons of choice will be determined the same way as they have been since .NET hit the scene: by whomever can brainwash know-nothing executives the best!

It is absolutely foolish for anyone to compare Win32 and iOS/Android, as the two service entirely separate markets, with entirely distinct purpose!

Likewise it's foolish to compare Win32/iOS/Android with HTML5/JS, as Win32/iOS/Android service the device, where-as HTML5/JS is (and no matter what anyone says will always be) the language of the web!

I didn't jump ship in favor of Silverlight, and that's worked out well for me! Can't say the same for all the poor developers who invested their hopes and dreams in Microsoft's "momentary flight of fancy" framework, only now to find themselves out of (or soon to be out of) work.

I for one won't put any faith in the various directions the "major players" greedily claim is "the next big thing". It's in their best interest to hype their new tools, brainwash know-nothing executives into choosing them, having colleges churn out subeducated "programmers" with nothing more than the knowledge of that framework, sell tools to these people, then change direction as soon as their profit margin peeks.

Programming will always be the way it has always been: use the best tool for any given purpose! Learn the fundamentals of software and web development, but never tie yourself down to any particular frameworks or platforms. Do that, and it doesn't matter what direction the market shifts in favor of! You know the fundamentals, the rest is just sugar-coating!

Simeon Garrick said:

Win32 is is now Win64. It should be supported until 128 bit CPUs are commonplace.

Tim Anderson Author Profile Page said:

Ha ha! Agreed about support, though actually Flash and Silverlight will both be supported for a long while too, "supported" is not the same as "vibrant and growing" though.

Tim

itoctopus said:

Agree about Flash and Silverlight (actually silverlight is already dead). As for Windows (not just Win32), I think it still have a few years left until it dies. I think the start of its end will be when Google releases an Android version for PCs (I don't know if Google did that already).

Alex said:

Vic: You point out Evernote as a Win32 success story. But on the Evernote webpage, they have that, and also Mac OS X, iOS, Android, Windows Phone, Blackberry, etc., apps -- clearly they're willing to go the extra mile to be native everywhere. That's different from demonstrating that Win32 is a living and growing platform.

The question is: where do they make their money? I think if they dropped their Palm Pre version, they would not be at a serious loss as a company. Obviously they wrote some of these versions before others -- probably the ones that were most beneficial from a cost-expense point of view.

Look at the order they list them in! For mobile, it's iOS, then Android, then Windows Phone, then others. For "computer" (desktop), it's 2 web browser extensions, then 2 Mac apps, then Windows. This doesn't read like a company who thinks Win32 is their lifeblood.

There was a time when web apps were the "you're running some crazy OS we don't support so here's something basic so you can access the service". Today it's "we know you live in a web browser so that's the preferred app".

Think back to when Mac OS was in trouble (OS 7 and 8, in the 1990's). It's not that big companies with popular apps didn't write for the Mac OS API at all. It's that they did it last, in addition to all the money they made on Windows. Today that's what we're seeing for Windows: people write web apps and iOS apps to make the lion's share of their money, and then desktop apps to round out their support checklist.

People that cry Flash is dead are only seeing one some piece of the picture. Yes, Flash is dying for video and it's dying for web applications. Flash was acting like patchwork for these fields until HTML grew up. However, Flash for gaming is a multi-billion dollar industry with no end in site. Zynga is making more profit per employee of almost any company in the United States. HTML5 cannot touch Flash11 for game development and the WebGL boat isn't going anywhere for mainstream adoption (ie).

Leave a comment

Current Vacancies from CWJobs

(* Required field)










Preferred format