Category Archives: web authoring

The top Silverlight feature request: implement on more platforms

One of the things mentioned by Microsoft VP Scott Guthrie in his Firestarter keynote yesterday was that Silverlight 5, the new version set for release in 2011, implements some 70% of what users have voted for. I presume he means the feedback forum here. But look what the top request is – as noted by a comment to yesterday’s post:

image

Looking at the comments, Android is a common request, and relatively easy for Microsoft to achieve given the open nature of that platform.

This was apparently not part of the 70% though. Instead, Guthrie introduced more Windows-only features – showing that concerns about divergence between Windows and Mac implementations when Microsoft announced COM support at the 2009 PDC were justified.

What if Microsoft had purchased Novell, or purchased Mono from Novell, instead of letting it go to Attachmate? It would have enabled Microsoft to unify the Windows and Linux implementations as well as building on the work the Mono team has done on compilation for iOS.

That dream is over though; the Silverlight application strategy seems focused on making it better for Windows-platform corporations.

Silverlight 5 unveiled: more power, more Windows

Microsoft has announced details of Silverlight 5, a major new release of its browser plug-in and desktop runtime for Windows and Mac. Silverlight is also the primary application runtime for Windows Phone 7, though this update does not apply to the phone yet. Silverlight 5 will go into beta in the first half of 2011, and release is planned for the second half of 2011 – no more than a year or so away.

So what’s in Silverlight 5?

On the media side, there is hardware decoding of H.264 video (an overdue feature) plus enhancements including TrickPlay which enables fast-forward and rewind. There is also remote control support of some kind. According to VP Scott Guthrie, you will be able to stream HD video to a netbook.

The bigger area of change is in Silverlight as an application runtime. Here are the highlights:

  • Text rendering is much improved, with multi-columns, OpenType support, and control of tracking and leading.
  • Postscript vector printing greatly improves printing support, and you can now create a dedicated print view different from what is on screen.
  • A new hardware-accelerated 3D graphics API, as well as immediate mode graphics which lets you render directly to the GPU.
  • There is a 64-bit version of Silverlight 5.
  • WS-Trust support for secure messaging in tandem with Windows Communication Foundation.
  • Databinding enhancements, and support for debugging a binding by setting a breakpoint on it.

Alongside these, trusted Silverlight applications have new capabilities. But what is a trusted application? In the past, Silverlight applications become trusted if they run out of the browser and the user gives permission via a dialog. In Silverlight 5 this changes. A Silverlight application can be trusted within the browser as well, though Microsoft says this only works “when enabled via a group policy registry key and an application certificate”. This implies that the feature is aimed at corporate environments rather than for applets with a broad reach.

Once trusted, an in-browser Silverlight applet has the following additional features:

  • A new web browser control lets you host HTML content within a Silverlight application.
  • Read and write access to My Documents
  • Ability to launch Microsoft Office applications – examples include creating an email message or opening a report in Word
  • Access to COM components – Microsoft gives the example of accessing a USB security key or a bar-code scanner
  • Ability to call native code vith PInvoke (Platform Invoke)

In addition, out of browser applications support multiple windows including child windows, so they can be made to behave even more like normal desktop Windows applications.

You can see the theme here: making trusted Silverlight applications more powerful so that a larger proportion of custom business applications can be implemented in the browser or as Silverlight out-of-browser applications, rather than as traditional Windows applications that require desktop deployment. Put this together with Office 365 and Windows Azure, and you can see how well Silverlight works as a component in Microsoft’s cloud stack – provided users do not have anything inconvenient like an Apple iPad.

But what about the Mac? All these “trusted” features appear to be Windows-only. I asked about Mac support and was told:

We’re evaluating mechanisms for enabling similar trusted applications on the mac.

Fair enough; but the way this is put does suggest that having retreated from any ambitions for broad device reach in statements at the recent PDC conference, it now seems that Microsoft is further retreating from Mac and Windows parity, and moving Silverlight more towards being an application runtime for Windows – though note that there will still be a Silverlight 5 for the Mac and which will have the features that do not require COM or PInvoke.

It is disappointing that there is still no built-in local database support, though there are third-party offerings.

There are a couple of ways to look at Silverlight. Microsoft’s lack of commitment to cross-platform parity and its unwillingness to address broad device support means it does not look good as a broad-reach browser plugin, despite its great features on systems that do support it.

On the other hand, as an alternative to desktop Windows applications Silverlight looks increasingly attractive as its capabilities increase.

More information on the new features here – though note it neglects to mention what will and will not work on a Mac.

Adobe abandons Project ROME, focuses on apps rather than cloud

Adobe is ceasing investment in Project ROME, a labs project which provides a rich design and desktop publishing application implemented as an Adobe AIR application, running either in the browser or on the desktop using the Flash player as a runtime.

image

According to the announcement:

Project ROME by Adobe was intended to explore the opportunity and usability of creative tools as software-as-a-service in the education market and beyond. We have received valuable input from the community after a public preview of the software. Following serious evaluation and consideration of customer input and in weighing this product initiative against other projects currently in development, we have made the difficult decision to stop development on Project ROME. Given our priorities, we’re focusing resources on delivering tablet applications, which we believe will have significant impact on creative workflows.

There must be some broken hearts at Adobe because ROME is a beautiful and capable application that serves, if nothing else, as a demonstration of how capable a Rich Internet Application can be. In fact, I have used it for that purpose: when asked whether a web application could ever deliver the a user interface that comes close to the best desktop applications, I showed Project Rome with great effect.

I first saw Project ROME as a “sneak peek” at the Adobe MAX conference in 2009. It had made it past those initial prototypes and was being worked up as a full release, with a free version for education and a commercial version for the rest of us. Curiously, Adobe says the commercial version will remain available as an unsupported freebie, but the educational offering is being pulled: “we do not want to see pre-release software used in the classroom “.

Why abandon it now? I think we have Apple’s Steve Jobs to thank. AIR applications do not run on the iPad; and when Adobe says it is focusing instead on tablet applications, the iPad will figure largely in those plans. Still, there are a few other factors:

  • One thing that was not convincing in the briefing I received about Project ROME was the business model. It was going to be subscription-based, but how many in this non-professional target market would subscribe to online desktop publishing, when there are well-established alternatives like Microsoft Publisher?
  • Adobe makes most of its money from selling desktop software, in the Creative Suite package. ROME was always going to be a toy relative to the desktop offerings.
  • The output from ROME is primarily PDF. If Rome had been able to build web pages rather than PDF documents, perhaps that would have made better sense for a cloud application.
  • Adobe did not market the pre-release effectively. I do not recall hearing about it at MAX in October, which surprised me – it may have been covered somewhere, but was not covered in the keynotes despite being a great example of a RIA.
  • The ROME forum shows only modest activity, suggesting that Project ROME had failed to attract the attention Adobe may have hoped for.

It is still worth taking a look at Project ROME; and I guess that some of the ideas may resurface in apps for iPad, Android and other tablets. It will be interesting to see to what extent Adobe itself uses Flash and AIR for the commercial design apps it delivers.

Final reflection: this decision is a tangible example of the ascendancy of mobile apps versus web applications – though note that Adobe still has a bunch of web applications at Acrobat.com, including the online word processor once called Buzzword and a spreadsheet application called Tables.

HTML 5 Canvas: the only plugin you need?

The answer is no, of course. And Canvas is not a plugin. That said, here is an interesting proof of concept blog and video from Alexander Larsson: a GTK3 application running in Firefox without any plugin.

image

GTK is an open source cross-platform GUI framework written in C but with bindings to other languages including Python and C#.

So how does C native code run the browser without a plugin? The answer is that the HTML 5 Canvas element, already widely implemented and coming to Internet Explorer in version 9, has a rich drawing API that goes right down to pixel manipulation if you need it. In Larsson’s example, the native code is actually running on a remote server. His code receives the latest image of the application from the server and transmits mouse and keyboard operations back, creating the illusion that the application is running in the browser. The client only needs to know what is different in the image as it changes, so although sending screen images sounds heavyweight, it is amenable to optimisation and compression.

It is the same concept as Windows remote desktop and terminal services, or remote access using vnc, but translated to a browser application that requires no additional client or setup.

There are downsides to this approach. First, it puts a heavy burden on the server, which is executing the application code as well as supplying the images, especially when there are many simultaneous users. Second, there are tricky issues when the user expects the application to interact with the local machine, such as playing sounds, copying to the clipboard or printing. Everything is an image, and not character-by-character text, for example. Third, it is not well suited to graphics that change rapidly, as in a game with fast-paced action.

On the other hand, it solves an immense problem: getting your application running on platforms which do not support the runtime you are using. Native applications, Flash and Silverlight on Apple’s iPad and iPhone, for example. I recall seeing a proof of concept for Flash at an Adobe MAX conference (not the most recent one) as part of the company’s research on how to break into Apple’s walled garden.

It is not as good as a true local application in most cases, but it is better than nothing.

Now, if Microsoft were to do something like this for Silverlight, enabling users to run Silverlight apps on their Apple and Linux devices, I suspect attitudes to the viability of Silverlight in the browser would change considerably.

WS-I closes its doors–the end of WS-* web services?

The Web Services Interoperability Organization has announced [pdf] the “completion” of its work:

After nearly a decade of work and industry cooperation, the Web Services Interoperability Organization (WS-I; http://www.ws-i.org) has successfully concluded its charter to document best practices for Web services interoperability across multiple platforms, operating systems and programming languages.

In the whacky world of software though, completion is not a good thing when it means, as it seems to here, an end to active development. The WS-I is closing its doors and handing maintenance of the WS interoperability profiles to OASIS:

Stewardship over WS-I’s assets, operations and mission will transition to OASIS (Organization for the Advancement of Structured Information Standards), a group of technology vendors and customers that drive development and adoption of open standards.

Simon Phipps blogs about the passing of WS-I and concludes:

Fine work, and many lessons learned, but sadly irrelevant to most of us. Goodbye, WS-I. I know and respect many of your participants, but I won’t mourn your passing.

Phipps worked for Sun when the WS-* activity was at its height and WS-I was set up, and describes its formation thus:

Formed in the name of "preventing lock-in" mainly as a competitive action by IBM and Microsoft in the midst of unseemly political knife-play with Sun, they went on to create massively complex layered specifications for conducting transactions across the Internet. Sadly, that was the last thing the Internet really needed.

However, Phipps links to this post by Mike Champion at Microsoft which represents a more nuanced view:

It might be tempting to believe that the lessons of the WS-I experience apply only to the Web Services standards stack, and not the REST and Cloud technologies that have gained so much mindshare in the last few years. Please think again: First, the WS-* standards have not in any sense gone away, they’ve been built deep into the infrastructure of many enterprise middleware products from both commercial vendors and open source projects. Likewise, the challenges of WS-I had much more to do with the intrinsic complexity of the problems it addressed than with the WS-* technologies that addressed them. William Vambenepe made this point succinctly in his blog recently.

It is also important to distinguish between the work of the WS-I, which was about creating profiles and testing tools for web service standards, and the work of other groups such as the W3C and OASIS which specify the standards themselves. While work on the WS-* specifications seems much reduced, there is still work going on. See for example the W3C’s Web Services Resource Access Working Group.

I partly disagree with Phipps about the work of the WS-I being “sadly irrelevant to most of us”. It depends who he means by “most of us”. Granted, all this stuff is meaningless to the world at large; but there are a significant number of developers who use SOAP and WS-* at least to some extent, and interoperability is key to the usefulness of those standards.

The Salesforce.com API is mainly SOAP based, for example, and although there is a REST API in preview it is not yet supported for production use. I have been told that a large proportion of the transactions on Salesforce.com are made programmatically through the API, so here is one place at least where SOAP is heavily used.

WS-* web services are also built into Microsoft’s Visual Studio and .NET Framework, and are widely used in my experience. Visual Studio does a good job of wrapping them so that developers do not have to edit WSDL or SOAP requests and responses by hand. I’d also suggest that web services in .NET are more robust than DCOM (Distributed COM) ever was, and work successfully over the internet as well as on a local network, so the technology is not a failure.

That said, I am sure it is true that only a small subset of the WS-* specifications are widely used, which implies a large amount of wasted effort.

Is SOAP and WS-* dying, and REST the future? The evidence points that way to me, but I would be interested in other opinions.

Understanding the Silverlight controversy

There has been much discussion of the future of Microsoft’s Silverlight plugin since Server and Tools President Bob Muglia’s statement in a PDC interview that “Our strategy with Silverlight has shifted”, and spoke of HTML as the “only true cross platform solution”.

The debate was even reported on the BBC’s web site under the headline Coders decry Silverlight change.

It is unfortunate that headlines tend to think in binary; alive or dead. In other words, if Microsoft is repositioning Silverlight then it must be killing it.

That is not the case. Muglia did not say that Silverlight has no future, nor that it was unimportant. He affirmed that there will be another version of Silverlight for Windows and Mac, as well as highlighting that it is the development platform for Windows Phone.

Speaking personally for a moment, I have reviewed Silverlight favourably in the past and still regard it as a great achievement by Microsoft: the power of the .NET runtime, the elegance of C#, the flexible layout capabilities of XAML, integrated with a capable multimedia player, and wrapped in a lightweight package that in my experience installs quickly and easily.

Silverlight forms an excellent client for cloud services such as those delivered by the Azure platform which we heard about at PDC.

Perhaps it is the case that IE9 maestro Dean Hachamovitch tended towards the gleeful as he demonstrated features in HTML and JavaScript that previously would have required Silverlight or Flash. At the same time, IE9 is not yet released, and even when it is, will not match the capabilities or the tooling and libraries available for Silverlight.

The Silverlight press generated by PDC must have been disappointing and frustrating for Microsoft’s Silverlight team. I am reading reports of Developer VP Scott Guthrie’s remarks at the DevConnections conference this week.

The reports of my death are greatly exaggerated … I have more people working on Silverlight now than any time in Silverlight history … don’t believe everything you read on the internet.

I have great respect for Guthrie; you need only see the speed and manner with which he reacted to the recent ASP.NET security scare – not trying to diminish its importance, delivering practical advice, answering comments, and working with his team to come up with workarounds and a proper solution as quickly as possible – to appreciate his commitment and that he understands the needs of developers.

So were posts like my own Silverlight dream is over unfair and inaccurate? Well, there is always a risk of being misunderstood; but the problem, as I perceive it, is not primarily about Silverlight’s progress on Windows and Mac. The problem is that those two desktop platforms no longer have sufficient reach; or rather, even if they have sufficient reach today, they will not tomorrow. We have the rise of iOS and Android; an explosion of non-Windows tablets in the wings; we have a man like James Gardner, CTO at the UK’s Department for Work and Pensions, writing of Windows 7 that:

Personally, I think it likely this is  the last version of Windows anyone ever widely deploys

See also Cliff Saran’s comments at Computer Weekly.

In other words, Guthrie’s team can do a cracking job with Silverlight 5 for Windows and Mac – it could even merge Silverlight with WPF and make it the primary application platform for Windows – but that would still not address the concerns raised by what happened at PDC. If Silverlight remains imprisoned in Windows and Mac, it cannot deliver on its original promise.

What could Microsoft do to restore confidence in Silverlight? Something along these lines would make me change my mind:

  1. Announce Silverlight for Android.
  2. Nurture Silverlight for Symbian.
  3. Follow through on commitments for Silverlight on Moblin/MeeGo.
  4. Either implement Silverlight for Linux, or enter a deeper partnership with Novell’s Mono so that Microsoft-certified Silverlight runtimes appear on Linux in a timely manner alongside Microsoft’s releases.
  5. Come up with a solution for Silverlight on iOS. One idea is to follow Adobe with a native code compiler from Silverlight to iOS. Another would be a way of compiling XAML and C# to SVG and JavaScript. Neither would be perfect; but as it is, every company that starts deploying iPads or their successors is a customer that cannot use Silverlight.

Do I think Microsoft will implement the above? I doubt it. My interpretation of Muglia’s remarks is that Microsoft has decided not to go down that path, but to reserve Silverlight for Windows, Mac, and Windows Phone, and to invest in HTML for broad-reach applications.

That may well be the right decision; it is one that makes sense, though Microsoft was perhaps unwise to highlight it before IE9 is released. Further, cross-platform is not in Microsoft’s blood, and the path that Silverlight has taken is in line which what you would expect from a company built on Windows.

Silverlight is not dead, and for developers targeting Windows, Mac and Windows Phone it is as good as ever, and no doubt will be even better in its next version. But failing another change of heart, it will never now be WPF Everywhere; and PDC 2010 was when that truth sank home.

Update: this is pretty much what Guthrie says in his latest post:

Where our strategy has shifted since we first started working on Silverlight is that the number of Internet connected devices out there in the world has increased significantly in the last 2 years (not just with phones, but also with embedded devices like TVs), and trying to get a single implementation of a runtime across all of them is no longer really practical (many of the devices are closed platforms that do not allow extensibility).  This is true for any single runtime implementation – whether it is Silverlight, Flash, Java, Cocoa, a specific HTML5 implementation, or something else.  If people want to have maximum reach across *all* devices then HTML will provide the broadest reach (this is true with HTML4 today – and will eventually be true with HTML5 in the future).  One of the things we as a company are working hard on is making sure we have the best browser and HTML5 implementation on Windows devices through the great work we are doing with IE9.

Adobe MAX 2010 – it’s all about the partners

Last week was all conferences – Adobe MAX 2010 followed by Microsoft PDC – which left me with plenty of input but too little time to write it up. It is not too late though; and one advantage of attending these two events back-to-back was to highlight the tale of two runtimes, Adobe Flash and Microsoft Silverlight. MAX was a good event for Flash, and PDC a bad one for Silverlight, though the tale has a long way yet to run.

The key difference at this point is not technical, but all about partners. At MAX we saw how the Flash runtime is integral to the Blackberry PlayBook, with RIM founder Mike Lazaridis coming on stage to tell us so. Flash is also built into Google TV, and Andres Ferrate and Daniels Lee from Google Developer Relations presented a session on creating web apps for the platform – worth watching as it brings out the difference between developing for a TV “lean back” environment and traditional mouse or touch user interfaces -  and we also heard from Samsung about its Flash-enabled TVs coming in 2011. In each case, it is not just Flash but AIR, for applications that run outside the browser, which is supported. Google TV runs Android; and AIR for Android in general drew attention at MAX, encouraged by free Motorola Droid 2 smartphones handed out to attendees.

If the task was to convince Flash developers – and those on the fence – that the platform has a future, MAX delivered in spades; and Adobe can only benefit from the uncertainty surrounding the most obvious runtime rivals to Flash, Java and Silverlight.

But what about that other platform, HTML? Well, Adobe made a bit of noise about projects like EDGE, which exports animations and transitions to SVG and JavaScript using an extended JQuery library, as well as showing a “sneak peek” of a tool to export a Flash animation (but not application) to  HTML. Outside the Adobe fan club there is still considerable aversion to Flash, stoked by Apple; in one of the sessions at MAX we were told that Steve Jobs’ open memo Thoughts on Flash has done real damage.

My impression though is that Adobe still has a Flash-first philosophy. The Solution Accelerators announced for LiveCycle 2.5, for example, all seem to be based on Flash clients, which could prove difficult if Apple’s iPad continues to take off in the enterprise. Adobe could do more to provide JavaScript libraries for LiveCycle clients, and tools for creating HTML applications. If you came to MAX looking for evidence that Adobe is moving towards web standard HTML clients, you would have been largely disappointed; though seeing JQuery guy John Resig in the day two keynote would give you some comfort.

Some other MAX highlights:

  • Round-tripping between Catalyst and Flash Builder at last. This makes Catalyst more useful, though I still find myself thinking that the Catalyst features could be rolled into one of the other products, either as a designer personality for Flash Builder, or maybe in Flash Professional. The former would be easier as both Catalyst and Flash Builder are built on Eclipse.
  • Enhancements in the Flash Player – I am writing a separate piece on this, but it is great to see the 3D extensions codenamed Molehill, which together with game controller support lay the foundations for Flash games that compete more closely with console games.
  • Analytics – Adobe’s acquisition of Omniture a year ago was a far-sighted move, and the company talked about analytics in the context of applications as well as web sites. Despite unsettling privacy implications, the ability for developers to drill down into exactly how an application is used, and which parts are hardly used, has great potential for improving usability.
  • Digital publishing – it was fascinating to hear from publisher Condé Nast about its plans for digital publishing, using Adobe’s Digital Publishing Suite to create files targeting Adobe’s content viewer on iOS and eventually AIR. As a web enthusiast I have mixed feelings, and there was some foot-shuffling when I asked about SEO (Search Engine Optimisation); but as someone with a professional interest in a flourishing media industry I also hope this becomes a solid and profitable platform.

Disappointments? I was sorry to hear that Adobe is closing down contributions and reducing transparency in the open source Flex SDK, though it is said to be temporary. It also seems that plans to enhance ActionScript are not well advanced; Silverlight remains well ahead in this respect with its C# and .NET support.

What about Adobe’s enterprise ambitions? Klint Finley’s post on the Adobe Stack and what it means for Enterprise Development is a good read. The pieces are almost in place, but the focus on document processing at the back end, and Flash and Acrobat on the front end, makes this a specialist rather than a generic application platform.

Overall though it was a strong MAX. I appreciate Adobe for not being Google or Apple or Microsoft or IBM, and hope that takeover rumours remain as rumours.

See also my earlier post Adobe aims to fill mobile vacuum with AIR.

Microsoft pledges commitment to Silverlight – but is it enough?

Microsoft’s president of Server and Tools Bob Muglia has posted a response to the widespread perception that the company is backing off its commitment to Silverlight, a cross-browser, cross-platform runtime for rich internet applications. He is the right person to do so, since it was his remark that ”Our strategy with Silverlight has shifted” which seemed to confirm a strategy change that had already been implied by the strong focus in the keynote on HTML 5 as an application platform.

Muglia says Silverlight is in fact “very important and strategic to Microsoft”. He confirms that a new release is in development, notes that Silverlight is the development platform for Windows Phone 7, and affirms Silverlight both as a media client and as “the richest way to build web-delivered client apps.”

So what is the strategy change? It is this:

When we started Silverlight, the number of unique/different Internet-connected devices in the world was relatively small, and our goal was to provide the most consistent, richest experience across those devices.  But the world has changed.  As a result, getting a single runtime implementation installed on every potential device is practically impossible.  We think HTML will provide the broadest, cross-platform reach across all these devices.  At Microsoft, we’re committed to building the world’s best implementation of HTML 5 for devices running Windows, and at the PDC, we showed the great progress we’re making on this with IE 9.

The key problem here is Apple’s iOS, which Muglia mentioned specifically in his earlier interview:

HTML is the only true cross platform solution for everything, including (Apple’s) iOS platform.

Muglia’s words are somewhat reassuring to Silverlight developers; but not, I think, all that much. Silverlight will continue on Windows, Mac and on Windows Phone; but there are many more devices which developers want to target, and it sounds as if Microsoft does not intend to broaden Silverlight’s reach.

Faced with the same issues, Adobe has brought Flash to device platforms including Android, MeeGo, Blackberry and Google TV; and come up with a packager that compiles Flash applications to native iOS code. There is still no Flash or AIR (out of browser Flash) on Apple iOS; but Adobe has done all possible to make Flash a broad cross-platform runtime.

Microsoft by contrast has not really entered the fight. It has been left to Novell’s Mono team to show what can be done with cross-platform .NET, including MonoTouch for iOS and MonoDroid for Google’s Android platform.

Microsoft could have done more to bring Silverlight to further platforms, but has chosen instead to focus on HTML 5 – just as Muglia said in his earlier interview.

Whether Microsoft is right or wrong in this is a matter for debate. From what I have seen, the  comments on Microsoft’s de-emphasis of Silverlight at PDC have been worrying for .NET developers, but mostly cheered elsewhere.

The problem is that HTML 5 is not ready, nor is it capable of everything that can be done in Silverlight or Flash. There is a gap to be filled; and it looks as if Microsoft is leaving that task to Adobe.

It does seem to me inevitable that if Microsoft really gets behind HTML 5, by supporting it with tools and libraries to make it a strong and productive client for Microsoft’s server applications, then Silverlight will slip further behind.

Microsoft’s Silverlight dream is over

Remember “WPF Everywhere”? Microsoft’s strategy was to create a small cross-platform runtime that would run .NET applications on every popular platform, as well as forming a powerful multimedia player. Initially just a browser plug-in, Silverlight 3 and 4 took it to the next level, supporting out of browser applications that integrate with the desktop.

The pace of Silverlight development was unusually fast, from version 1.0 in 2007 to version 4.0 in April 2010, and Microsoft bragged about how many developer requests it satisfied with the latest version.

Silverlight has many strong features, performs well, and to me is the lightweight .NET client Microsoft should have done much earlier. That said, there have always been holes in the Silverlight story. One is Linux support, where Microsoft partnered with Novell’s open source Mono project but without conviction. More important, device support has been lacking. Silverlight never appeared for Windows Mobile; there is a Symbian port that nobody talks about; a version for Intel’s Moblin/Meego was promised but has gone quiet – though it may yet turn up – and there is no sign of a port for Android. Silverlight is no more welcome on Apple’s iOS (iPhone and iPad), of course, than Adobe’s Flash; but whereas Adobe has fought hard to get Flash content onto iOS one way or another, such as through its native code packager, Microsoft has shown no sign of even trying.

In the early days of Silverlight, simply supporting Windows and Mac accounted for most of what people wanted from a cross-platform client. That is no longer the case.

Further, despite a few isolated wins, Silverlight has done nothing to dent the position of Adobe Flash as a cross-platform multimedia and now application runtime. Silverlight has advantages, such as the ability to code in C# rather than ActionScript, but the Flash runtime has the reach and the partners. At the recent MAX conference RIM talked up Flash on the Blackberry tablet, the Playbook, and Google talked up Flash on Google TV. I have not heard similar partner announcements for Silverlight.

Why has not Microsoft done more to support Silverlight? It does look as if reports of internal factions were correct. Why continue the uphill struggle with Silverlight, when a fast HTML 5 browser, in the form of IE9, meets many of the same needs and will work across the Apple and Google platforms without needing a non-standard runtime?

Here at PDC Microsoft has been conspicuously quiet about Silverlight, other than in the context of Windows Phone 7 development. IE9 man Dean Hachamovitch remarked that “accelerating only pieces of the browser holds back the web”, and last night Microsoft watcher Mary-Jo Foley got Server and Tools president Bob Muglia to admit that “our strategy has shifted” away from Silverlight and towards HTML 5 as the cross-platform client runtime, noting that this was a route to running on Apple’s mobile devices.

The Silverlight cross-platform dream is over, it seems, but let me add that Silverlight, like Microsoft itself, is not dead yet. Microsoft is proud of its virtual PDC streaming application, which is built in Silverlight. The new portal for Windows Azure development and management is Silverlight. The forthcoming Visual Studio Lightswitch generates Silverlight apps. And to repeat, Silverlight is the development platform for Windows Phone 7, about which we have heard a lot at PDC.

Let’s not forget that IE9 is still a preview, and HTML 5 is not a realistic cross-platform application runtime yet, if you need broad reach.

Muglia’s remarks, along with others here at PDC, are still significant. They suggest that Microsoft’s investment in Silverlight is now slowing. Further, if Microsoft itself is downplaying Silverlight’s role, it will tend to push developers towards Adobe Flash. Alternatively, if developers do migrate towards HTML 5, they will not necessarily focus on IE9. Browsers like Google Chrome are available now, and will probably stay ahead of IE in respect of HTML 5 support.

I hope these latest reports will trigger further clarification of Microsoft’s plans for Silverlight. I’d also guess that if Windows Phone 7 is a big success, then Silverlight on the Web will also get a boost – though judging from the early days in the UK, the new phone is making a quiet start.

Finally, if Microsoft is really betting on HTML 5, expect news on tools and libraries to support this new enthusiasm – maybe at the Mix conference scheduled for April 2011.

Adobe aims to fill mobile vacuum with AIR

Today is day one of the Adobe MAX conference in Los Angeles. In this morning’s keynote CTO Kevin Lynch focused firmly on devices – both mobile devices and living room devices including Google TV. There was a nod to HTML 5 in the opening demo, a prototype of a new product called Edge which is a motion designer that extends JQuery, but the Flash player remains the heart of Adobe’s platform. The proliferation of incompatible devices is an opportunity for cross-platform runtimes, and Adobe intends to take advantage with Flash and AIR – the Adobe Integrated Runtime, for local applications that fun on Flash.

Released today in public preview, the Flex “Hero” SDK includes support for mobile development, among other things, and is backed by an updated Flash Builder code-named Burrito.

Right now the only mobile platform which is supported is Google Android, but others are promised. In particular, we heard a lot in the keynote about the Blackberry Playbook,  the forthcoming tablet from RIM, including an appearance from RIM boss Mike Lazaridis.

An interesting aspect of the Playbook is that the user interface of the device itself is built in part with AIR. As a RIM exec observed in a later Q&A, it makes sense for the OS to use the same framework as that used by third party apps, so that any issues are sorted early.

AIR popped up again in a a different context, as Lynch described Adobe’s Digital Publishing Suite. This suite targets magazine publishers creating publications for the Apple iPad, such as publisher Condé Nast, also represented at the keynote, which is adopting the platform for many of its publications from Wired to the New Yorker.

The Digital Publishing Suite exports publications from Adobe InDesign to a dedicated format with a .issue extension, played on the iPad by Adobe Content Viewer. Adobe will now implement the content viewer on AIR, so that digital publications will render on the new wave of Android tablets, Blackberry tablets, and others in future.

Also worth noting is that Adobe plans to insert itself into the distribution process beyond just providing the authoring tools and the runtime. The Digital Publishing Suite includes Adobe hosting for the content. More broadly, the Melrose project, now called Adobe InMarket, is a service where you host your application on Adobe’s servers and Adobe handles deployment to the various App Stores out there as well as credit card processing.

Of course Apple is working, it seems, to undermine Flash. The runtime is not allowed on iOS, Apple’s mobile platform. Apple is not including Flash by default in the latest Macs, and the forthcoming Mac App Store will not allow AIR (or for that matter Java) applications. You will still be able to install Flash and AIR on a Mac, but Apple will no doubt be encouraging users to go the App Store route.

It is a fascinating tension, particularly since Apple’s devices fit so well with other aspects of Adobe’s strategy.

Despite Steve Jobs, Lynch announced today that the number of Flash platform developers has grown by 50% over the last year, which is huge. I also wonder whether the Java turmoil, especially on the Mac, could work in Adobe’s favour as it builds support for its Flash runtime.