Adobe AIR and Microsoft Silverlight are now more comparable than ever. Until recently, a direct comparison was considered misguided because Silverlight lacked the out-of-browser capabilities AIR delivered. Before that, Silverlight’s media support lagged behind Flash, but Microsoft has been quick to remedy Silverlight’s shortcomings. Nevertheless, the decision of platforms may depend on more than just a simple checklist of features.
“It is difficult to answer the question of comparison in a straightforward way,” said Adrian Ludwig, group manager of Adobe’s Flash Platform. “You can build solutions in [AIR or Silverlight] in about 10% of cases, but in 90% of the cases, Silverlight is more competitive with Flash Player because they [both run] graphics, animations and RIAs in the browser.”
In-browser experiences make Silverlight competitive with Flash. Out-of-browser experiences make Silverlight competitive with AIR, he said.
The big benefit is writing a Web application that can run online or offline, in the browser or on the desktop.
According to a Microsoft spokesperson, the Microsoft Silverlight team categorically avoids comparative discussions, so official Microsoft commentary is absent from this article. SD Times did talk with Novell, which is providing Linux support through Moonlight. We also talked to some third-party developers and industry analysts to get their perspectives about how AIR and Silverlight stack up.
Not surprisingly, views differ.
Eric Knipp, a senior research analyst at Gartner, considers AIR and Silverlight comparable in most use scenarios, although Flash provides AIR with broader market penetration than Silverlight given its high installer rate on PCs. Flash is also being extended to mobile devices.
Dave Wolf, vice-president of Strategy at software development firm Cynergy Systems, also considers AIR and Silverlight directly competitive. Miguel de Icaza, vice-president of Development Platforms at Novell, is a fan of AIR, Flash and Silverlight, and he said he doesn’t have a preference.
Al Hilwa, program director of application development software at IDC, considers AIR more competitive with the “fullness” of .NET and Windows Presentation Forms more specifically. Silverlight aligns better with Flash, he said.
Sergey Marchuk, CTO of Oxagile, views AIR as “just a runtime environment” and Silverlight a “complete framework.” He concurs with Silverlight-to-Flash and Silverlight-to-AIR comparisons as they relate to applications that run inside and outside the browser, respectively.
Why compare AIR and Silverlight in the first place? The latest versions of the products, AIR 2 and Silverlight 4, are both in beta with general releases expected later this year. (AIR 2 may be available as early as spring.) Both can be used to create Web applications that run in a browser as well as on the desktop. Both support multiple languages, operating systems and browsers, and both are targeting mobile devices. But as previously stated, the discussion doesn’t end there.
Adobe and Microsoft have very different heritages, so their products have traditionally appealed to different audiences—namely, designers and developers, respectively, for the purposes of this article. However, Adobe’s acquisition of Macromedia and Microsoft’s addition of Expression Blend mean that Adobe offers development tools and Microsoft offers design tools, which raises an interesting question: Is one company in a better position than the other to support both audiences? The general sentiment is “no,” but some say “yes.”
“Adobe is a UI company. It’s perceived as having deep relationships with design firms and designers,” said Knipp. “Microsoft does not have a heritage of usability and design. Expression Blend is a dumbed down design tool. I’d say it’s a design tool for developers. I don’t see Blend turning people into Picassos, but it can help make developers better designers.”
Wolf thinks Microsoft’s approach to design/development workflow is superior. His company started with AIR, Flash and Flex, but in May 2007 it created a Microsoft practice.
“We had no one on the Microsoft side. We had developers, but no designers,” said Wolf.
“We found that Blend works the way we do on user experience workflows. SketchFlow is awesome. Adobe [Flash] Catalyst is good for the layout of applications, but it doesn’t fit into software workflow as well.”
“Silverlight definitely does a better job [of addressing both audiences],” he said. “Silverlight allows developers and designers to collaborate on the same project in parallel following a standard software development process that utilizes management of all project assets under the source control repository.
“[The management of project assets] is achieved by using XAML files for interface definition, and separate tools are used for their editing. Visual Studio is used for source code editing, and Expression Blend is used for design and animation editing. Changes from one side are immediately reflected on the other side.”
By comparison, Marchuk said graphical design changes in AIR and Flash are comparatively complicated because there is no clear separation between the design assets and the source code. Designers use Flash Professional to adjust graphical assets only because the source code editing capabilities are very limited. In addition, the assets need to be re-imported into Flash (formerly Flex) Builder so changes can be manually applied to the source code.
The choice of AIR or Silverlight may also depend on what type of application is being built, said Novell’s de Icaza.
“Some developers have gone from one to the other,” he said. “If you’re going to do something computational, complicated or audio-on-demand, which requires fast processing, then Silverlight is a better choice. Also, Silverlight’s language support is more complete than Flash.
“C# is great for large programming teams working on large products with multiple development teams, and if you don’t like that, then you can use other programming languages like Ruby or Python. If the core of the project is computation and not the UI, then Silverlight is a better choice.”
Of course, the performance of a UI depends on the availability of resources, and Microsoft provides incredibly strong data support, said de Icaza. On the other hand, Silverlight is probably not the best choice if you’re developing a Facebook application. (As a case in point, a number of popular Twitter applications have been built in AIR, according to Gartner’s Knipp.)
The choice between AIR and Silverlight often depends on existing skill sets. .NET developers are more likely to choose Silverlight because their existing skills are transferable. Similarly, Flash/Flex/Java developers are more likely to use AIR.
Of course, there are exceptions. Cynergy Systems’ Wolf said contract developers may be forced to choose AIR or Silverlight over the other because a client demands it. Marchuk said another exception might be an existing product that has a .NET back end and a Flash/Flex front end.
One high-profile case was The New York Times, which was reported to have switched from Silverlight to AIR, although Adobe’s Ludwig said the company had a .NET desktop reader that was replaced with an AIR application, and that there was a Silverlight application that was browser-based for text layout. The New York Times did not confirm or deny that it used Microsoft products and technologies; however, it did confirm the switch to AIR.
“The primary challenge we had was keeping costs down and having consistent, high-quality user experiences across operating systems for Times Reader,” said Rob Larson, vice president of search products at NYTimes.com. “AIR enabled us to build once and deploy a high-quality user experience across Windows, Mac and Linux operating systems.”
The outcome has been very positive. According to Larson, NYtimes.com was able to reduce costs and reach a wider audience as a result of the switch. In addition, there have been 350,000 downloads of Times Reader on AIR since May 2009, and subscriptions have grown significantly, he said.
Would Larson and his team make the same choice today given the Silverlight 4 beta? He declined to speculate, saying, “We are very happy with our relationship with Adobe and look forward to working with them on many projects in the future.”
Oxagile’s Marchuk and others think if a choice exists, the choice should be made on a case-by-case basis.
“[You need to consider the] target audience, the necessity to duplicate Web applications, the degree of OS integration, the necessity of true 3D animation, and, of course, the amount of resources possessing particular technology knowledge,” said Marchuk.
“If the success of your killer application depends on the number of users, you select AIR because it is installed from Flash, which has a larger user base. If you need to have the same application run on the Web and locally, you select Silverlight. If you need tight integration across platforms, you select AIR. If you need to support Windows Media formats, you select Silverlight. If you need 3D animation, you select AIR because it has more stable 3D support and a wide variety of 3D engines available.”
Other advantages and disadvantages of AIR and Silverlight
Microsoft’s main advantages are its formidable .NET platform, huge .NET developer base, languages, tools and an extremely long history of catering to the needs of developers, nearly all of which can be leveraged for Silverlight development. Adobe, on the other hand, is and has been synonymous with evolving notions of user experience. The company also has a solid heritage of providing cross-platform capabilities that extend well beyond Windows.
When it comes to rich Internet application (RIA) development, both Adobe and Microsoft support multiple operating systems, including Linux, Mac OS and Windows. However, Adobe supports Linux directly, and Microsoft supports Linux indirectly via Moonlight, with Novell’s help. Do the differing types of Linux support matter? Yes, if you’re a Linux developer or are otherwise concerned about operating system ubiquity, like The New York Times.
There is also the issue of timeliness. Ludwig said Adobe is dedicated to providing simultaneous cross-platform support. Moonlight has lagged a version or so behind Silverlight because it involves two companies, testing, and so on. However, to improve cross-platform support, Novell’s de Icaza said that Microsoft has provided Novell with test suites for the runtime and graphics engine to help ensure conformance.
Nevertheless, a disparity of features across operating systems is generally expected to continue into the foreseeable future, at least as it relates to Silverlight running on Linux and Windows. Under the new Microsoft/Novell agreement, Novell will support Silverlight 3 and 4, and Novell will get early access to code for testing purposes.
“As we started on Moonlight 3, we needed to make sure everything ran properly,” said de Icaza. “We also use the early code to set priorities.”
Because Moonlight is a version behind and does not yet provide Silverlight 3 support, most Silverlight applications will not work for Linux users, said Gartner’s Knipp.
That said, AIR and Flash also have some hurdles to overcome. Knipp said one advantage Silverlight has over AIR is that it doesn’t require two installs to run applications inside and outside the browser.
“This is important because customers without containers will likely abandon a site if they have to install software,” he said.
Others disagree, saying if you want to watch the Olympics, you’ll install whatever software is needed to watch it. On the other hand, not all content inspires all users to install yet more software.
Out to mobile
Intel is extending the notion of computing out to numerous types of end devices, including cell phones, in-vehicle infotainment systems, netbooks and more. So are Adobe and Microsoft as Flash and Silverlight runtimes are coming to different types of devices.
Here, Adobe has an advantage in the mobile space, or so said most of the people interviewed for this article. However, as Cynergy Systems’ Wolf pointed out, Microsoft has its own mobile platform, and Adobe does not. On the other hand, Adobe has actively been engaging a number of third parties to make Flash ubiquitous across mobile platforms, but Microsoft has comparatively made little progress on the mobile partner front, to date anyway.
“We’re extending the footprint of Flash Player beyond Windows, Mac and Linux to include Windows Mobile, Symbian, Palm, Android and Chrome OS,” said Ludwig. “We’re also working with RIM to run Flash on BlackBerry devices, but most of the work is being done by RIM.”
Adobe is also leading the Open Screen Project, an industry-wide initiative to enable the delivery of rich multi-screen experiences using a consistent runtime environment for Web browsing and applications. More than 40 companies are currently participating, including chipset, handset and telecommunications infrastructure manufacturers, service providers, and content partners.
As a result of the project, hardware and software are being optimized for Flash. Flash is also being integrated with additional operating systems and browsers. In the meantime, content partners are seeking a consistent development environment across platforms, Ludwig said.
IDC’s Hilwa considers the Open Screen Project “good outreach,” and said that Adobe is ahead of Microsoft in terms of expansion out to mobile platforms.
“Microsoft hasn’t brought Silverlight to [its] own mobile platform yet,” he said.
Adobe and Microsoft use different numbers to quantify their success, and so do third parties. Ludwig said Flash is installed on 98% of PCs. Microsoft claims Silverlight is installed on more than 34% of Internet-connected devices worldwide. It also claims 350 partners in 35 countries. Hilwa estimates there are 4 million .NET developers.
Adobe and Microsoft have high-profile customers, but marketing strategies, distribution channels and strategic partnerships, such as with mobile device manufacturers, all have a bearing on success, said Hilwa.
As always, vendors choose to use whichever metrics place them in the best light, but since third parties are able to measure traffic referrals and destinations, bandwidth used, applications launched, interaction timeframes, etc., it may be that success will someday be measured by how much content is streamed through a particular player as Ludwig suggests. Or, it may depend on other metrics that are yet to be used as industry standard benchmarks.
“Installer base and the number of developers are both important measures, but the number of developers is hard to quantify,” said Hilwa. “The most important measure may be how many websites use the technology, although you won’t see that quoted. As of now, Flash and Silverlight only represent a small percentage of websites. Most websites don’t need either because they’re [not graphics intensive].”
Driving future decisions
If the AIR 2 and Silverlight 4 betas are essentially on par feature for feature, what’s next? Beyond mobile, some think the future battleground won’t be runaway feature sets but rather the ability to run across other types of devices, like TVs and home appliances.
In the meantime, Novell’s Knipp warns against making decisions solely based on technology, because it may be a false choice between AIR and Silverlight.
“The X factor is HTML5 and CSS 3,” he said. “Last week, Google and YouTube started streaming using HTML5. As HTML5 matures and is [implemented on different] browsers, it may challenge Silverlight and AIR because [the absence of a] plug-in is better for users. If Microsoft and Adobe offer features that outweigh the extra software, that’s great. We’ll see in three to five years when the market matures.”
Oxagile’s Marchuk agrees.
“HTML5 allows users to watch video without installing Flash Player or Silverlight. This [may] cause some users to remove these plug-ins from their browsers,” he said.
“HTML5 has many other useful features that overlap with AIR [and] Silverlight, such as offline application caches, local storage [and] on-the-fly graphics rendering. If various browser vendors [define a] common standard for offline applications based on HTML5, it [could] result in a new competitor to AIR and Silverlight.”
What’s coming in AIR 3 and Silverlight 5? Stay tuned, since Adobe, Microsoft, their ISVs and industry analysts are remaining tight-lipped. What’s likely? Marchuk imagines more mobile device support and performance optimization in AIR 3 and Silverlight 5. He also expects Moonlight to catch up to Silverlight, and Silverlight to catch up to AIR in terms of local OS integration capabilities.