Can (and will) Microsoft keep Silverlight compatible across platforms?

Summary: Microsoft is adding more and more WPF features to Silverlight (and vice versa). But there is a downside to this strategy: By adding technologies like COM support to Silverlight, Microsoft is doing damage to its story that Silverlight is a cross-platform browser plug-in that supports Windows, Mac -- and, thanks to the Mono folks at Novell , Linux -- equally.

As Microsoft made plain at its Professional Developers Conference last week, there's no end in sight to the list of new features and functionality it plans to add to Silverlight.

Some developers who have been on the fence about whether they should be developing Windows applications using Windows Presentation Foundation (WPF) or Silverlight applications see a light at the end of the tunnel of confusion. Microsoft is adding more and more WPF features to Silverlight (and vice versa). But as Tim Anderson, an IT journalist/blogger noted last week, there is a downside to this strategy: By adding technologies like COM support to Silverlight, Microsoft is doing damage to its story that Silverlight is a cross-platform browser plug-in that supports Windows, Mac -- and, thanks to the Mono folks at Novell , Linux -- equally.

(The Register's Gavin Clarke and I talk more about the risks of making Silverlight better on Windows than other platforms during our latest episode of the Microbite podcast.)

The COM object support that Microsoft is promising for Silverlight 4, the version of Microsoft's Web application framework/plug-in due to ship by mid-2010, is applicable to Silverlight running on Firefox or Internet Explorer on Windows only. Neither Mac OS X nor Linux support COM.

Microsoft officials were quick to note that adding access to COM components was a customer request, not something Microsoft did in a vacuum. When I asked Microsoft about its plans to keep Silverlight in sync across platforms, a spokesperson sent me the following statements:

"In Silverlight 4 we addressed over 8,000 customer feature requests. One specific request was adding support for accessing COM components, enabling common enterprise scenarios such as automating Microsoft Office and providing developers easy access to hardware capabilities such as scanners and security card readers."

But check this out: Microsoft officials say they are evaluating how to add some kind of COM component access to the Mac version of Silverlight. From the aforementioned spokesperson:

"Unfortunately, the Mac offers no support for COM interfaces and we’re actively evaluating options to get COM-like features on the Mac."

There's no further word on when or how Microsoft plans to add this kind of support to Silverlight for the Mac.

Meanwhile, it looks like Novell's Developer Platform Vice President Miguel de Icaza is itching to create support for the new Silverlight 4 functionality to future implementations of Moonlight, the Novell/Mono team-developed implementation of Silverlight for Linux. After the PDC, de Icaza blogged:

"For the Moonlight team, this means that there is a lot of work ahead of us to bring every Silverlight 3 and 4 feature. I think I speak for the whole Mono team when I say that this is exciting, fascinating, challenging and feels like we just drank a huge energy boost drink."

Microsoft's latest Silverlight moves mean that Silverlight is evolving to become a universal run-time for Microsoft's Common Language Runtime (CLR), the heart of .Net, according to de Icaza. Developing a desktop suite of Silverlight apps isn't just a pipe dream, de Icaza said; it's a real, doable project.

Some developers are already dreaming of the possibility of a Silverlight operating system. (For some reason, I think the Windows team might try to derail that effort before it could ever happen, but who knows?) Microsoft has more immediate and pressing concerns, though: It needs to keep Silverlight in sync across platforms if the company plans to play up the "available everywhere" piece of its Silverlight message.

Topics: Microsoft, Enterprise Software, Operating Systems, Software, Software Development, Windows

About

Mary Jo has covered the tech industry for more than 25 years for a variety of publications and Web sites, and is a frequent guest on radio, TV and podcasts, speaking about all things Microsoft-related. She is the author of Microsoft 2.0: How Microsoft plans to stay relevant in the post-Gates era (John Wiley & Sons, 2008).

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

74 comments
Log in or register to join the discussion
  • The better question is WHEN will it be better for Microsoft to keep it

    compatible across platforms, and WHEN or under
    what conditions might it not be better for MS to
    NOT keep it compatible across platforms.

    In other works, it is NOT a question of IF, but,
    at WHAT TIMES (or under what conditions) might
    there be compatibility, and at WHAT TIMES, might
    there NOT be compatibility.
    DonnieBoy
    • Another plot to lock out others

      nt
      linux_kernel
      • In reality, another 'plot'

        to give customers what they are asking for.
        How horrible of MS!

        Honestly, to be 'locked in' because a solution works for you and does what you want isn't a bad thing.
        mdemuth
        • LOL...they brainwash you all well.

          LOL @ what customers are asking for.

          No one is asking for Silverlight. They don't even know what it is. The only way they download it is if they are forced to by visiting some site that requires it and thats a pretty slim count of sites anyway.
          storm14k
          • The only one brainwashed is you

            >>In Silverlight 4 we addressed over 8,000 customer feature requests

            so those requests came from no one?
            mdemuth
          • Full functionality for MAC OS X and Linux too?

            How about plans to address full functionality for MAC and Linux? Are you the guy at the top deciding policies or is someone else higher up doing the plotting and you just the developing following orders?
            orionds
          • If they offered the option

            If Mac / Linux offered the same support for something similar to COM then silverlight team would have added it. Problem is MAC doesn't use COM well. You can create a COM object that will work on MAC but you have to manually load the COM object into memory and you can't determine which COM objects exist on the machine. So while possible to have a COM object run finding, knowing, and using it is nearly impossible as a developer unless you writing your own, and since most Mac OS X developers don't use the manual COM option there is little to no support for it in MAC world. Now get your MAC developers to work and then come back and talk. Oh and a registry would help. But the silverlight team is working on getting it to work, and allowing developers to use existing COM equivilant objects down the road. Noting that Silverlight 5 is already in planning / development. Silverlight is going to be one of those things where you see versions popping up every 6 months for the next few years. If not faster, so stop complaining that windows has a carrot and MAC doesn't get to take a bite. Overall it affects Silverlights cross platform functions ZERO, unless your building out of browser applications with trusted rights. How many of you really care? The only people that do care are the developers who are sitting at their windows based enterprise with their boss asking for the ability to auto open outlook, save the Approved PTO request into the persons schedule add it to the office PTO calendar, and export the approval letter to PDF, with 1 click of a button.
            mathomp3@...
          • Spin it all you want to

            And if you really believe 8,000 people made 8,000 requests, I have a bridge to sell you. Cheap.
            Wintel BSOD
  • nope!

    M$ will fail to keep silverlight in sync on its own flavours of windoze, much less on other OSes.
    At the end of the day FOSS rules.
    Linux Geek
    • Great your sill here...

      Are you finished to talk like an idiot?

      MS may fail or they may succeed, but Silverlight will probably be in sync with it's own recent flavours of windows. As for Linux/Macs... it might be possible to introduce COM equivalent to those versions... will be easier to add that to Linux(being OOS and all).
      Ceridan
    • Er.. Where's the FOSS alternative to Silverlight?

      Last I checked, Silverlight started out as being a replacement for Adobe Flash - only without the vulnerabilities. It's since grown quite a bit in scope.

      Now... Last I checked, Flash was still a proprietary, commercial product.

      So where's the FOSS equivalent? Oh.. Right. There isn't one. Moonlight is a FOSS version of Silverlight - for Linux.

      Oh.. and for what it's worth dumbarse, there's only ONE version of Sliverlight - it'll work on XP, Vista, or Win 7.

      So do us all a favor and think before you post...
      Wolfie2K3
      • Er.. Who needs one?

        The FOSS world doesn't need Silverlight to exist.

        Try not to attach too much of your corporate, proprietary significance to FOSS, k?
        Wintel BSOD
  • They are only waiting for the right moment to...

    deliver the <i>coup de gr&acirc;ce.</i>

    Then Miguel will learn just how dangerous it is to sleep with the enemy.

    I am already feeling sorry for the guy.
    The Mentalist
  • Oh look, the gang is all here

    The light bouncing off the tinfoil hats is so bright I gotta wear shades.
    croberts
    • You're forgetting the cane and the guide dog

      they will help you get some grasp on reality, you know what that is don't you? It's that thing M$ Astroturfers keep hiding from you.
      The Mentalist
      • What a witty comment, -3.

        Astroturf? Surely you can do better than Pelosi-speak, -3.
        Hallowed are the Ori
        • To boldly go where most idiots have gone before

          Just go away OK?
          The Mentalist
          • No, few can achieve your level of idiocy.

            Take a bow. You deserve it.
            mdemuth
          • Congratulations then...

            for being an overachiever.

            By the way, say hello to that other idiot who's joining you there, he will be boldly arriving there very soon.
            The Mentalist
          • Beam me up, Scotty

            The Redmond Borg awaits...
            Wintel BSOD