InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Microsoft has Abandoned Silverlight and All Other Plugins in Metro IE

Posted by Jonathan Allen on Sep 15, 2011

Sections
Development
Topics
HTML5 ,
Silverlight ,
Javascript ,
HTML ,
.NET ,
Rich Internet Apps ,
Dynamic Languages ,
Markup Languages ,
Flash ,
Languages ,
Web 2.0 ,
Adobe ,
Enterprise Architecture ,
Programming ,
Companies ,
Windows 8

Though it has been hard, we have been trying to avoid reporting on rumors about the death of Silverlight for quite some time. As in all things, rumors tend to be exaggerated or out-right false. A good example of this is the idea that Web Forms has entered maintenance mode and would never be updated to HTML5. Unfortunately the end of Silverlight is no rumor; if Microsoft doesn’t change course it, as well as Flash and other plugin technologies, will be effectively unusable when Windows 8 is released.

On September 14th just before 6 pm Steven Sinofsky and Dean Hachamovitch announced that the Metro-style browser in Windows 8 does not support plug-ins. The Metro-style browser is the full screen, chromeless implementation of Internet Explorer that most people are expected to use with Windows 8. While the Metro user interface has extensive touch functionality, it is designed to be the primary UI for all devices with a screen of 1024x768 or larger even when using a mouse and keyboard. The “desktop” mode is still available, but it is being positioned as something that is only to be used by legacy programs and a few complex applications such as Photoshop and Visual Studio.

According to Steven Sinofsky,

This post is about a big change in Metro style IE, which is the plug-in free experience. In Windows 8, IE 10 is available as a Metro style app and as a desktop app. The desktop app continues to fully support all plug-ins and extensions.

Dean Hachamovitch adds,

For the web to move forward and for consumers to get the most out of touch-first browsing, the Metro style browser in Windows 8 is as HTML5-only as possible, and plug-in free. The experience that plug-ins provide today is not a good match with Metro style browsing and the modern HTML5 web.

This means no Flash, no QuickTime, no PDF readers, and no Silverlight. He goes on to explain why plug-in free browsing is superior and that all sites should be transitioning to HTML5 anyways. And for the most part he is right, but that is a cold comfort when you can’t read your paystub because it is an embedded PDF. Nor does it help when you want to watch that video hosted by one of the various media players.

Why is this happening? Well the most likely reason is simply that the Metro-style browser can’t support plugins. Metro is not based on the Win32 libraries, it uses an entirely new OS-level API known as Windows Runtime or WinRT. Since the plug-ins are most likely built on Win32 components such as GDI they would have to be completely rewritten to run under Metro. And moving forward companies such as Apple and Adobe would have to maintain both a WinRT and a Win32 version for each of x86, x64, and ARM. And all of this can’t even start until Microsoft developers a new plug-in architecture that abides by WinRT’s runtime restrictions.

It should be noted that Flash and Silverlight will continue to run just fine using Internet Explorer in “desktop” mode. Likewise users can elect to switch to one of the other browsers such as Firefox, Safari, or Chrome. But again, those run in desktop mode.

With the proliferation of web-enabled devices, most of which don’t support plug-ins anyways, we should probably be thinking about moving away from this sort of technology anyways. But today, right now, HTML5 is not appropriate for the immersive applications that Flash and Silverlight are capable of creating. At the very least the standards for core functionality such as Web Workers and WebSocket need to be finalized and the resizable layout issue addressed. But even more pressing is JavaScript itself, whose syntax and dynamic nature make it very difficult to write large, modular applications.

The companies most invested in Silverlight are actually in the best position. These companies have been adopting Silverlight, and Flex, for use in internal applications. This sort of application generally have no HTML and simply use the browser as a delivery mechanism. As such these applications can be ported to the Metro runtime with surprisingly little effort. A new distribution mechanism will be needed, but something like the Windows app store for enterprises is undoubtedly in the works.

The companies that use Flash or Silverlight to augment their websites are going to have the most trouble. Since they cannot simply port their code to Metro they will need to need go rewrite the components from scratch using HTML and JavaScript.

23 comments

Watch Thread Reply

Personal thoughts by Jonathan Allen Posted
Re: Personal thoughts by John Beckett Posted
Re: Personal thoughts by John Beckett Posted
Re: Personal thoughts by matt mcknight Posted
Re: Personal thoughts by Dan Weese Posted
Silverlight is not dead by Robin Stoll Posted
Re: Silverlight is not dead by Jonathan Allen Posted
Re: Silverlight is not dead by Paul Prescod Posted
Re: Silverlight is not dead by Ian Smith Posted
Re: Silverlight is not dead by Robin Stoll Posted
Re: Silverlight is not dead by Jonathan Allen Posted
PDF by Diego Visentin Posted
Nitpick: by David Brent Posted
Re: Nitpick: by John L Posted
Re: Nitpick: by Jonathan Allen Posted
article by Pieter Olivier Posted
The article misses the point by Rod Hughes Posted
If Only... by Doug Ly Posted
Good news by Barton Phillips Posted
Apprently .Net and XAML are Ok but not Silverlight by Faisal Waris Posted
Web Worker and IE 10 by Trond Andersen Posted
Silverlight is not dead by Dave L Posted
well, sort of by Jon Kelling Posted
  1. Back to top

    Personal thoughts

    by Jonathan Allen

    Being a professional journalist I try to not mix factual reporting with editorials; a news report should be one or the other. What follows is what I personally think:

    As an industry we are making a huge mistake. The browser developers need to come together and create something to replace JavaScript. I don’t know if it should be a new language or generic runtime like the CLR and JVM, but something has to be done soon. Otherwise we will end up with the same problem we have with C++: another unsafe, substandard language that runs so much of our industry that it cannot be replaced.

    Meanwhile Microsoft is returning to their old habit of abandoning any semblance of cross-platform development for the sake of the Windows Tax. Silverlight and the Common Language Runtime could have been a way to bring together rich client developers from across all of the platforms. The success of Mono on the iPhone proves that it is what developers want and that they are willing to pay for it. But it is Xamarin, not Microsoft, that truly loves .NET and sees its potential.

  2. Back to top

    Silverlight is not dead

    by Robin Stoll

    That's not true. Not having plugins doesn't mean the death of Silverlight. Watch the last keynote. First, it is always backwards compatible. Second, one of the guys @keynote, recompiled a Silverlight project and started it in Windows 8. With a few minor adjustments you can even make it a metro style app.

  3. Back to top

    PDF

    by Diego Visentin

    It seems that Win8 will include a native PDF reader: www.addictivetips.com/internet-tips/windows-8-m...

  4. Back to top

    Re: Silverlight is not dead

    by Jonathan Allen

    Of course there are backwards compatibility options, but to what effect? Do you have you website display the message "I see that you are using IE. Please exit IE and browse to our site using Firefox or the other IE." At least for mobile devices we can make some excuse about the screen being too small.

    This decision doesn't make using Silverlight impossible, just untenable.

  5. Back to top

    Re: Silverlight is not dead

    by Ian Smith

    LOL! One of the guys in the keynote tool a SILVERLIGHT 2 tutorial, made some changes and got it to run in Windows 8. Now go do the same thing with your Enterprise app using MEF, PRISM, Rx and Lord knows what else. By all means enjoy the usual Microsoft "drag and drop" demo-ware, but think about what you're really being shown and how it applies to the real world.

  6. Back to top

    Re: Silverlight is not dead

    by Paul Prescod

    I don't know if you've totally thought this through. So a user is using Facebook in the Metro-style browser and she clicks over to Farmville and you think that the screen will be essentially blank? No "click here to reload in a window" or anything like that? You position this as if enterprise Silverlight apps are going to be "untenable" but the issue is much broader and deeper than that. Flash is still ubiquitous on the Internet. People will put up with a tablet browser with Flash -- unhappily -- but not a desktop browser.

  7. Back to top

    Nitpick:

    by David Brent

    Nitpick: Anyways isn't a word.

  8. Back to top

    Re: Silverlight is not dead

    by Robin Stoll

    Off topic: Do you often use loud laughs to make your lack of arguments evident to everyone?
    On topic: You obviously didn't watch the keynote and didn't read my comment.

    "..recompiled a Silverlight project and started it in Windows 8."

    Have I mentioned anything about changing source code? Recompiling usually means hitting the recompile button. Maybe this doesn't exist in your enterprise development environment.

  9. Back to top

    article

    by Pieter Olivier

    this is a substandard hearsay article. not used to this low at InfoQ

  10. Back to top

    Re: Personal thoughts

    by John Beckett

    blockquote Otherwise we will end up with the same problem we have with C++: another unsafe, substandard language that runs so much of our industry that it cannot be replaced. blockquote

  11. Back to top

    Re: Personal thoughts

    by John Beckett

    Otherwise we will end up with the same problem we have with C++: another unsafe, substandard language that runs so much of our industry that it cannot be replaced.


    Where on earth did you get that from??? Substandard language??
    I've been a C++ programmer for almost 20 years working on some of the biggest projects in the UK using C++ - all of which are successful projects using a powerful language. The MOD has seen fit to employ 1000's of C++ developers to work on the Eurofighter alongside ADA developers, many of the satellite systems are using C++.
    I could go on, so what is substandard about the most successful language in the history of software engineering?
    Do you know anything about the C++ language to make such a sweeping and inaccurate statement?
    Unsafe??? All languages can be deemed as unsafe - C++ is a powerful language that in the hands of an incompetent programmer, can have catastrophic consequences.
    Lastly, it cannot be replaced - you're correct on this one, but why would you replace working code?? You complement it, thats what you do. You create an interface to talk to the C++ code that you wish to keep. I can implement a .Net app that talks to existing unmanaged C++ code!! Why would anyone consider re-writing it in another language which could render a once working piece of code as unworkable!!

    Your argument is flawed in this respect!!

  12. Back to top

    Re: Personal thoughts

    by matt mcknight

    You are making a huge mistake- JavaScript is not the problem.

    It's about the lack of extensible components in HTML itself. It's too limited of a control palette. We need a standardized way of extending it that is plugin-free.

  13. Back to top

    Re: Nitpick:

    by John L

    +1

    "Anyways" from a person calling himself a professional journalist? Maybe he's getting paid, but I'm not sure I'd go with "journalist" any more than I would for that guy who runs Wikileaks. (Yeah, I know, inflammatory comments....)

  14. Back to top

    The article misses the point

    by Rod Hughes

    In the new OS world, Web pages run in a browser, Web applications (Silverlight et al.) run in the Metro experience, and Desktop applications run in the Desktop experience (including classic web browsing). Silverlight is dead? Hah! Metro is the new browser.

  15. Back to top

    Re: Personal thoughts

    by Dan Weese

    Being a professional journalist I try to not mix factual reporting with editorials.

    And yet your original article and subsequent posts are full of grammatical errors and flat out inaccuracies.

  16. Back to top

    Re: Nitpick:

    by Jonathan Allen

    It has been a word since the 13th century. I will admit that I have a rather bad habit of choosing archaic words and phrases over more modern ones, but then again I still like FORTRAN.

  17. Back to top

    Re: Silverlight is not dead

    by Jonathan Allen

    At the very least you will need to change the namespaces in order to recompile a Silverlight application as a Metro application. If you are going to host it in the Windows app store it will also need a snap view.

    Silverlight applications that accept startup parameters from the webpage that hosts it will need to be rethought. As will programs that interact with HTML elements on the same page.

  18. Back to top

    If Only...

    by Doug Ly

    I am all in with this level of support for HTML5 from MS. But if only MS follows 'the' standards and not let their own proprietary API in like IE6,7,8 and who knows 9?

  19. Back to top

    Good news

    by Barton Phillips

    Silverlite was a pain in the ***. Microsoft supporting HTML5? Maybe their proprietary version on it. Maybe this will be the final nail in IE's coffin.

  20. Back to top

    Apprently .Net and XAML are Ok but not Silverlight

    by Faisal Waris

    XAML and .Net seem to be well integrated with WinRT so nothing to complain there. It is Silverlight that is being left behind.

    If Chorme and/or Firefox build touch-friendly browsers that do support plug-ins, Microsoft will have to respond.

    The whole problem with HTML5-javascript is the javascript part. We really need a new language for the 'rich' web. Maybe Google's Dart will be it.

    It would be even better to have a bytecode-style (sandboxed) VM instead of a specific 'language' for the new web so that we could use a variety of languages.

    It should be easier to standardize a runtime than a new language. I can see Google, Apple, MS agreeing on a runtime system more quickly than on a specific language.

  21. Back to top

    Web Worker and IE 10

    by Trond Andersen

    I thought Microsoft has implemented the Web Worker API:

    blogs.msdn.com/b/ie/archive/2011/07/01/web-work...

  22. Back to top

    Silverlight is not dead

    by Dave L

    I am not afraid one bit for the LOB investments we have made in Silverlight already. I am not at build conference but have found this blog from Doug Seven - a former executive from Microsoft very insigftful. He is ex-microsoft so he knows a lot, yet he can speak freely - blogs.telerik.com/blogs/posts/11-09-15/i-know-w...

  23. Back to top

    well, sort of

    by Jon Kelling

    Wow, that is some pretty big news. Very interesting article. I suppose it was inevitable considering the effect the iPhone and iPad have had on the market. I wouldn’t be too worried, though, about how it impacts us. It would be appropriate to say along the same lines that Microsoft, and Apple for that matter, have abandoned the mouse as well. iPhone, iPad, the new Windows phones and tablets, etc. are all going the way of “touch,” and this means we need new technology. It seems like software like Silverlight is being abandoned because it simply doesn’t work with touch. Just about all software and development tools out there are built around the concept of a person either typing, clicking, or moving a precise single point (cursor) across the screen with a single active input area (i.e. textbox, window, document). With “touch,” almost none of the existing concepts apply anymore—there is no click, there is no single point to move, there is no single active area, and the keyboard becomes secondary or optional instead of primary. For this “touch” direction to work, things like Silverlight cannot just be changed; rather, the concept of interacting with software needs to be totally re-invented. This includes more than Silverlight. It includes Windows, Mac OS X, Silverlight, Flash, Flex, Java, HTML, the Start menu, folders, buttons, and heck, even desks and chairs! Haha 

    I speculate that we won’t see an actual paradigm shift that large until our current generation of preschoolers starts driving the stock market. We need people to grow up with the new technology to really tear us away from our current trends since it is so engrained in everything everybody does.

    The thing this article doesn’t make clear is that Silverlight is being abandoned the same way Flash was abandoned for the iPhone. Flash, like Silverlight, works with mouse clicks and keystrokes. Rather than update all of our software to ALSO work with touch, it is being abandoned and re-invented. However, another thing it doesn’t mention is that we still need all of our mouse clicks and keystrokes to MAKE this new software. The primary focus of computing will continue to rely on our current technologies for the foreseeable future, especially in the large majority of business environments. We are a long way away from even conceptualizing a replacement at this point. Once we do, I hope to be retired :) haha.

Educational Content

Evolution in Data Integration From EII to Big Data

Approaches to integrating data are changing with emergence of cloud computing.

Winning Hearts and Minds: How to Embed UX from Scratch in a Large Organization

Michele Ide-Smith presents the lessons learned in the process of introducing UX principles and techniques into a large organization through a series of small steps.

LMAX Disruptor: 100K TPS at Less than 1ms Latency

Dave Farley and Martin Thompson discuss solutions for doing low-latency high throughput transactions based on the Disruptor concurrency pattern.

Thoughts on Test Automation in Agile

Rajneesh Namta shares his thoughts, experiences, and some of the critical lessons learned while implementing software test automation on a recent Agile project.

Actor Interaction Patterns

Dale Schumacher presents several patterns of actor interaction that can be used in collaborative programs written in any language.

Scalaz: Functional Programming in Scala

Rúnar Bjarnason discusses Scalaz, a Scala library of pure data structures, type classes, highly generalized functions, and concurrency abstractions to perform functional programming in Scala.

Faster, Better, Higher – But How?

One of the main challenges when designing software architecture is considering quality attributes. Not only their design turns out to be difficult, but also the specification of these attributes.

Software Naturalism - Embracing the Real Behind the Ideal

Michael Feathers analyzes real code bases concluding that code is not nearly as beautiful as designers aspire to, discussing the everyday decisions that alter the code bit by bit.