Vision mobile cross-platform_developer_tools_2012


Published on

Cross-Platform Developer Tools 2012 is the seminal report on the landscape of 100+ cross-platform developer tools with an analysis of key vendors and the metrics of developer experience. (download at

Cross-Platform Tools 2012 is the first major report that analyses the complex cross-platform tools landscape, presents the key tools vendors and maps out the trends in one of the hottest markets in mobile. This report presents developer perceptions about a wide range of key issues, from incentives and deterrents to cross-platform tool use to the most-wanted tool features. Our research profiles 15 well-known cross-platform vendors and tools with regard to their technology, positioning and market traction.

For more info and in-depth data, drop us a line at hello (at)

Published in: Technology
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Vision mobile cross-platform_developer_tools_2012

  1. 1. 12 1
  2. 2. 12 About VisionMobile Chapters VisionMobile is a leading market analysis and strategy firm, 1. Why cross-platform tools are here to disrupt the for all things connected. We offer competitive analysis, status quo market due diligence, industry maps, executive training and strategy, on topics ranging from the industrys hottest trends 2.The landscape of 100+ cross-platform vendors and to under-the-radar market sectors. Our mantra: distilling their tools market noise into market sense. 3. Measuring the developer experience and VisionMobile Ltd. perceptions of cross-platform tools 90 Long Acre, Covent Garden, 4. In-depth profiles for 15 major tool vendors London WC2E 9RZ +44 845 003 8742 5. The outlook for cross-platform tools Follow us: @visionmobile Behind this report About webinos Lead researcher: Seth Jones This research was supported by webinos, an EU-funded project under the EU FP7 ICT Programme (#257103). Quantitative analysis: Christina Voskoglou Webinos is an EU-funded project aiming to deliver a Market trends: Michael Vakulenko platform for web applications across mobile, PC, home media (TV) and in-car devices.VisionMobile is a member of Sales and sponsorships: Vanessa Measom the webinos consortium. More info at Editorial: Andreas Constantinou License Marketing & Proj. Management: Matos Kapetanakis Licensed under Creative Commons Attribution 3.0 license. Any reuse or remixing of the work should Also by VisionMobile be attributed to the VisionMobile The Clash of Ecosystems report. Mobile Industry Atlas | 5th Edition The complete map of the mobile industry Copyright © VisionMobile 2012 landscape, mapping 1,700+ companies across 90+ market sectors. Disclaimer Available in wallchart and online version. VisionMobile believes the statements contained in this publication to be based upon information that we consider reliable, but we do not represent that it is accurate or complete, and it should not be relied upon as such. Opinions expressed are current opinions as of the date appearing on this publication only, and the information, including the opinions contained herein, are subject to change without notice. Use of this publication by any third party for whatever purpose should not and does not absolve such third party from using due diligence in verifying the publication’s contents. VisionMobile disclaims all implied warranties, including, without limitation, warranties of merchantability or fitness for a particular purpose. VisionMobile, its affiliates and representatives shall have no liability for any direct, incidental, special, or consequential damages or lost profits, if any, suffered by any third party as a result of decisions made, or not made, or actions taken, or not taken, based on this publication. v.1.00 2
  3. 3. 12 Key Messages - Cross-platform tools are addressing real challenges for developers Cross-platform tools (CPTs) allow developers to create applications for multiple platforms - usually mobile, but increasingly tablets or TV screens - from almost the same codebase or from within the same design tool. CPTs reduce the cost of platform fragmentation and allow developers to target new platforms at a small incremental cost. More importantly, cross-platform tools allow software companies targeting multiple platforms to reuse developer skills, share codebases, synchronise releases and reduce support costs. - PhoneGap and Sencha lead developer mindshare Our survey of over 2,400 developers revealed that PhoneGap and Sencha lead in terms of mindshare, as they are currently used by 32% and 30% of cross-platform developers, irrespective of their primary tools. Completing the top-5 ranking of our Mindshare Index are Xamarin’s MonoTouch / Mono for Android, Appcelerator and Adobe (Flex). The second half of the top-10 CPTs in terms of current use are Unity, Corona, AppMobi, RunRev and MoSync. - PhoneGap, Mono and Unity lead developer IntentShare. Our survey indicates that PhoneGap (23%), Xamarin Mono (22%) and Unity (22%) are the tools most developers plan to adopt, irrespective of their primary tool. This market is in constant flux, with developers experimenting and trying out new tools – for example PhoneGap is a stepping stone to cross-platform development as it leads Mindshare, IntentShare, but also comes third in the tools being abandoned. The most widely used CPT accounts for just half of the Mindshare seen in the iOS and Android platforms in our Developer Economics 2011 report. - Cross-platform tools flatten the playing field Just as the Apple/Google duopoly began to look impenetrable in 2011, a major disruption is flattening the playing field for competitors like Microsofts WP7, RIM’s BlackBerry OS and Samsungs Bada: cross-platform tools are letting developers target multiple platforms with low incremental costs and high levels of code reuse. - Cross-platform tools challenge the Apple/Google duopoly 2012 marks an inflexion point in the war of mobile ecosystems where the network effects built by Apple and Google are being challenged by an unsuspected new entrant. Cross-platform tools (CPTs) make it easier for example for an iPhone developer to reach Android and Windows Phone 7 users. CPTs dilute network effects by allowing other ecosystems to compete not just in terms of the number of apps listed, but also the availability of top apps, the time-to- market (an app rarely appears at the same time across all platform app stores) and the overall app quality. - Democratisation of development The dozens of CPTs available cater to every developer segment, from creative designers to C++ gurus to hobbyist website enthusiasts to Fortune-500 CIOs. Cross-platform tools reduce barriers to entry and democratise app development, by allowing developers from any language (HTML, Java, C++), any background (hobbyist, pros, agencies, corporates) and any skill level (visual designer to hard-core developer) to build mobile apps. The result could be termed a “democratisation” of software development (in the words of Unity’s Dan Adams), in that mobile platforms may be opened up to all types of developers. - Past the early-adopter chasm We have identified over 100 cross-platform developer tools, in a market that’s booming with new players in 2011. Cross-platform tools have passed the “early adopter” phase, and are now moving into mainstream. For example vendor Sencha counts 1.6 million SDK downloads, Corona apps have reportedly been downloaded 35 million times in 2011, Unity reports 200,000 developers active each month, while Appcelerator boasts 35,000 apps published using the tool and deployed on 40 million devices. - Mergers, financings and the survival of the strongest Since 2011, cross-platform tool vendors have raised major VC funding, have been acquired, or achieved major releases. In the CPT space we have tracked 10 acquisitions, and over US$ 200 million in funding rounds. This is a market that takes cash to survive: CPT vendors are subsidizing their entry to market with free products, based on ample VC funding. For example OpenPlug ceased operations as it failed to find a monetisation model, with its key challenge 3
  4. 4. 12 being the conversion of freemium users into paying customers for its support and professional services. CPT vendors without a compelling free product will be washed out by the competition. - Abundant developer volatility The cross-platform tools market is in a state of abundant developer volatility. Our survey revealed that developers are hoping on and off across different tools. There are clear market winners or losers and experimentation is the only means of tool selection. This is a market where there is little developer loyalty, and perceptions are still being formed. This is a great time for well-funded vendors to establish a beachhead of developer marketing and inch themselves apart in terms of mindshare. - Cross-platform tools are taking HTML further than browsers can The purpose of HTML5 has been to extend the capabilities of web apps (those developed using HTML and JavaScript) to more closely match the capabilities of native apps. Despite performance disadvantages and fragmentation across different browser versions, HTML5 has emerged as the most widely supported authoring technology for cross-platform apps. Cross-platform tools are taking HTML further than web browsers can, by allowing web developers to create native smartphone apps. In other words, CPTs are taking HTML5 much further by unifying the authoring side- rather than the runtime side - of the app across platforms. - Cross-platform tools have triggered an influx of web developers to mobile CPTs are paving the way for HTML5 to become not a platform, but the mainstream development technology for smartphone apps. Cross-platform tools are already triggering an influx of web developers; We found that 60% of CPT users, irrespective of their primary tool, have more than five years experience in web development. Indeed, cross-platform tools have triggered an influx of web developers into mobile. - Cross-platform tools will complement, not compete with native development Android and Windows Phone have been constantly evolving, adding hundreds of new APIs from each major version to the next. Due to the rapid advancement of platforms, tools vendors will always be one or two steps behind in terms of features and access to the complete set of device capabilities. Developers that create demanding applications like 3D games or apps requiring intense user interaction, exceptionally deep user experience, or apps relying on specific features not available on all platforms will need to be developed using the native SDK. Cross-platform tools will therefore be complementary to native SDKs. - Hybrid apps combine the best of both worlds The perennial question for many developers is whether to use a web-browser approach to deploying mobile apps, or whether to create native applications. Web apps provide a large addressable market, at the cost of web-only distribution and a comparatively shallow experience. Native apps allow for much deeper device integration and experiences, but at the cost of a platform-specific addressable market. Hybrid apps – like those created with PhoneGap – can combine the best of both worlds. Hybrid apps can use web languages, can be distributed through an app stores and can provide deeper experiences than web-only apps. - Access to additional platforms is main adoption driver The most important CPT selection criterion for developers is the breadth of platforms that the tool supports, cited by nearly 60% of respondents. The ability to tap into existing developer skills is the second most important reason for tool selection. - Monetisation is least important criterion What’s notable is that monetisation opportunities are the least important selection criterion. It is therefore evident that developers consider CPTs as a technical means to cross-platform portability, and not as a way to profit. - Performance and platform latency are key challenges The biggest barrier to mass adoption of cross-platform tools is feature parity with the native platforms. In his open letter to Adobe, Jobs criticised cross-platform tools for lack of performance and sluggishness in adopting the latest platform features. Indeed, the same issues were cited by developers in our survey as some of the most important reasons for dropping a tool. Performance was the top reason for dropped a tool, cited by 29% of respondents. More importantly, the perception that “cross-platform tools are always a step behind native” was selected as a top-2 reason for not using CPTs in the first place. - Developer maturity With such a broad variety of cross-platform tools, we would expect developers to use them at varying stages of their application projects. Yet, the overriding use case - 75% of respondents 4
  5. 5. 12 irrespective of primary tool - was using CPTs from start to finish, to fully develop an app for multiple platforms As such we see a high level of practicality and commercial acumen in the use of cross-platform tools; developers are now using CPTs at the very beginning of the app lifecycle - to create cross-platform apps from scratch or to prototype - and not to retrofit an app onto a new platform. - Cross platform tools will become “business as usual” As the platform landscape remains fragmented for the foreseeable future, cross-platform tools will become “business as usual” The future of mobile development is multi-platform – fewer and fewer developers will be able to afford to be confined to a single platform with the limited user reach and monetisation opportunities that implies. The adoption of cross-platform tools is driven by the ability to reach masses of users, which is the primary consideration for most developer segments. Cross-platform tools are indeed the only cost-effective vehicle for these developers to reach a wide mass of users, and we expect CPT usage to become commonplace a result. - Changing points of CPT competition At the onset of 2012, CPT developer selection criteria are heavily skewed towards the breadth of platforms supported by each tool. This picture will change considerably as cross-platform tools vendors advance their products to cover all the major mobile platforms. We expect that by mid-2013, the platforms covered by a CPT will move from a point of differentiation to a point of parity. In that timeframe, we expect the points of competition to move to later stages of the app lifecycle, with vendors offering component marketplaces, end-to-end workflow tools, device adaptation tools, app publishing services and post-download services. - Cross-platform tools expand to new verticals In the sea of 100+ cross-platform tools, vendors are beginning to differentiate by targeting three distinct developer segments: those working on games, enterprise or media apps. Developers in these three segments face distinctly different challenges, work in distinctly different environments and as such need very different CPT solutions. As tool vendors try to survive in the “red ocean” of dozens of cross-platform tools, we expect CPTs to emerge for the financial sector, media publishers and the healthcare/medical sector. - Multi-screen is the next frontier for cross-platform tools The battle of the software ecosystems is raging across many screens - mobile, tablet, PC and soon smart TV devices - and multi-screen will be the next frontier for cross-platform tools. Already in our survey, 27% of respondents noted that they also target Windows PC and 24% target Mac desktops with their main cross-platform tool. However, the complexities of cross-platform development in a multi-screen environment are growing exponentially and beyond the simple sharing of the code between multiple platforms. Different screen types have different interaction models, input methods, screen sizes, go-to-market channels and pricing models, while developers working on different screens have use varying tool-chains, development cycles and collaboration processes. With the proliferation of users who own more than one connect screen, the next frontier for cross-platform tools will be multi-screen. 5
  6. 6. 12 About The Cross-Platform Tools Report Welcome to the inaugural Cross-Platform Tools Report for 2012. This is the seminal report on the landscape of 100+ cross-platform developer tools with an analysis of key vendors and the metrics of developer experience. Cross-Platform Tools 2012 is the first major report that analyses the complex cross- platform tools landscape, presents the key tools vendors and maps out the trends in what is one of the hottest markets in mobile. The term “cross-platform tools” describes developer tools that allow applications to be created and distributed to multiple platforms while reducing the incremental cost per platform and maximising the code reuse. Cross-platform tools can address platforms across mobile (e.g. Apple’s iOS, Google’s Android, Microsoft Windows Phone 7), tablets, desktop (Microsoft Windows, Apple OSX, Linux) and gaming consoles (PlayStation, Nintendo, Xbox). ‘Cross-platform tools’ is a broad landscape that spans from JavaScript frameworks to source code translators. The tools cater to a broad range of developer audiences, from newbie developers to seasoned C++ gurus. This report presents developer perceptions about a wide range of key issues, from incentives and deterrents to cross-platform tool use to the most-wanted tool features. Our research profiles 15 well-known cross-platform vendors and tools with regard to their technology, positioning and market traction. Our Cross-Platform Tools report also investigates the top tools being used, identifying which tools are being adopted and which are being dropped by developers. This research is based on an online developer survey, as well as in-depth interviews with developers and tool vendors. There were more than 2,400 participants in the online survey, from 91 countries across the globe, spanning from the major US and European regions to Malawi, Uzbekistan and Jamaica. There were also 15 interviews carried out with major tool vendors, as well as developers. This report is split into five chapters - an discussion of why cross-platform tools have come about, a review of the cross-platform tools landscape, an analysis of the developer experience and perceptions, a detailed review of cross platform tool vendors and an analysis of market trends. Hope you enjoy reading this report as much as we enjoyed writing it! The VisionMobile team - Andreas, Matos, Christina, Michael, Seth, Vanessa | twitter: @VisionMobile Thank you! We would like to thank our sponsors, who helped us bring this project to life and supported us throughout its course. We would like to particularly thank Marmalade, RunRev LiveCode, Verizon Developer Community, Xamarin, AT&T, Appcelerator, Intel, MoSync, Orange Partner and WIP. We would also like to thank Paulius Uza, CEO of development house InRuntime and Henry Kingman for their contribution. 6
  7. 7. 12 7
  8. 8. 12 Research Methodology The Cross-Platform Developer Tools 2012 project is based on a large-scale online developer survey and 15 vendor interviews. The survey was carried out for five weeks between November and December 2011. The survey gathered completed responses from a total of 2,406 participants across an impressive 91 countries. Respondents had primarily technical roles, with 75% identifying as software, mobile or web developers. Only small constituencies identified as managers, IT staff or designers. Mobile developers were mostly new to mobile, with 66% having up to two years of experience. In contrast, web developers were very experienced (53% having more than seven years experience) while software developers were seasoned pros (74% having more than seven years of experience). Cross-platform tools are indeed enabling major new segments of seasoned software and web developers to come to mobile. Similarly to previous Developer Economics reports, Europe and North America each accounted for about 40% of respondents, while Asia accounted for another 12%. 8
  9. 9. 12 The market of cross-platform tools is booming in 2012. We identified over 100 vendors selling tools that range from JavaScript frameworks and app factories to runtimes. For our survey, which seeks to quantify developer mindshare, experience and expectations, we selected 20 tools: Adobe (Flex), Appcelerator (Titanium), AppMobi, Bedrock (Metismo), Ansca (Corona), DragonRad, Kony, Marmalade, MoSync, Netbiscuits, Alcatel Lucent (OpenPlug), PhoneGap, RhoMobile, RunRev (LiveCode), Sencha Touch / jQTouch, Strobe/Sproutcore, Unity, Unreal, Worklight and Xamarin (MonoTouch/Droid). We were also able to extract insights for Qt, which formed part of the “other” tool category for over 50 respondents. The previous graph shows the distribution of 2,406 respondents by primary cross-platform tool. Participation rates were skewed by promotional campaigns some survey sponsors ran to encourage survey participation. We removed the bias effects of these campaigns by normalising all graphs against the top-10 primary cross-platform tools or other survey parameters with over 50 unique responses. To arrive at our tool MindShare, IntentShare and abandonment rankings, we asked developers to indicate, for each one of twenty listed tools, which ones they had used but dropped, which they continue to use, and which they plan to adopt in the future. The resulting 1,713 responses were then cross-tabulated for the top- 10 major tools. These cross-tabs enabled us to normalize usage, intent and abandonment more or less independently from the respondent sample size and the primary tool used by respondents. Note that while the report was sponsored by many industry players, none of the sponsors had editorial influence or control over the report. 9
  10. 10. 12 10
  11. 11. 12 The cross-platform Gold Rush 2012 marks an inflexion point in mobile platforms. Apple’s iOS and Google’s Android platform have been propelled to previously unimaginable heights, amassing over 540,000 and 350,000 listed applications, respectively, from hundreds of thousands of developers, as of the end of 2011. Thanks to so-called network effects, Apple and Google have built huge barriers to entry for competitors like Microsoft, who having spent over US$1 billion in marketing, still lag a few laps behind. However, just as the Apple/Google duopoly began to look impenetrable, a major disruption is flattening the playing field for competitors like Microsofts WP7 and Samsungs Bada: cross-platform tools are letting developers target multiple platforms with low incremental costs and high levels of code reuse. Simply put, cross-platform developer tools (CPTs) allow developers to create applications for multiple platforms from almost the same codebase or from within the same design tool. The impact of CPTs is twofold; they can reduce entry barriers to mobile development and, if successful, reduce exit barriers (‘lock-in’) that users face when migrating to a new platform. Democratisation of development First, cross-platform tools allow developers to reach platforms they otherwise could not. CPTs lower entry barriers, for example allowing web developers to create native smartphone apps using only HTML and JavaScript. They can provide easy-to-use languages and development tools, and facilitate modular development and software component reuse. Some tools also allow developers to use the same codebase to target multiple screens – and not just different mobile phones, but also tablets, games consoles, desktops and TVs. The result could be termed a “democratisation” of software development (in the words of Unity’s Dan Adams), in that platforms may be opened up to all types of developers. Reducing developer lock-in The second impact of cross-platform tools is strategic. CPTs reduce platform exit barriers, i.e., “developer lock-in.” For example, they make it easier for a developer to code for Android and Windows Phone 7 at the same time as iPhone. App ecosystems compete in four arenas: the number of apps listed, availability of top apps, time-to-market (an app rarely appears at the same time across all platform app stores) and overall app quality. In theory, cross-platform tools make it far easier for platforms with weaker network effects (e.g., Bada) to compete, by allowing developers to code for Bada essentially at the same time as they code for Android. In other words, cross-platform tools can help smaller platforms to compete not just in number of applications, but also app availability, time-to-market and quality. Apple famously tried to increase developer lock-in to Apple’s XCode tools and iOS APIs by banning Adobe’s Flash runtime from iDevices – and very successfully so. But, cross-platform tools make it easier to circumvent Apple’s pre-load and app store restrictions, by packaging the runtime with the app or by translating a platform-neutral codebase into native code at build time. As we shall see, 2012 marks a year of technological maturity for cross-platform tools. The older approach of using a “lowest common denominator” like Flash or Java has lost favour to newer approaches based on thin runtimes, cross-compilers, and hybrid web apps. Tools once criticised for teething problems have in 2011 raised major VC funding, been acquired, or achieved major releases. For example, MoSync 2.7 enabled web coding and, along with Marmalade, added real native UI elements. Meanwhile, Sencha is readying Touch version 2.0, featuring its own web wrapper solution and a streamlined build process. Others, such as the LiveCode Android deployment pack and Mono for Android, were only officially released to market in 2011. In parallel, the HTML5 umbrella of technologies is inching past the peak of inflated expectations and towards the trough of disillusionment (in Gartner’s Hype Cycle terms). HTML5 has yet to really become a platform; it lacks essentials like implementation consistency, mainstream distribution channels (a.k.a. app stores), and any means of micro-monetisation other than mobile ads. Yet, thanks to cross-platform tools, HTML5 (including JavaScript) is making mobile app inroads. There are tens of tools aimed at helping web 11
  12. 12. 12 developers use existing skills to build ‘native’ or ‘hybrid’ smartphone apps. Those discussed in this report include Appcelerator, PhoneGap, Rhodes, Sencha 2.0 and Worklight. Meanwhile, mobile frameworks are arriving that aim to help web apps offer a “near native” user experience. These include jQuery Mobile, Sencha, iUI, and – for gaming – Impact.js. CPTs are paving the way for HTML5 to become not a platform, but the mainstream development technology for smartphone apps. Ups and downs in the cross-platform space This report is written at a time of great flux for cross-platform development. Acquisitions, divestments and funding rounds are taking place all over the radar. Adobe’s Flash, the venerable cross-platform solution, faces retirement, with Adobe announcing in November, 2011, that it will cease development of the Flash plugin for mobile browsers. In parallel it is planning to retire the Flex SDK in favour of ActionScript-only development. Cross-platform tools vendors acquired since mid-2011 include RhoMobile, Metismo, Aptana, ParticleCode, Nitobi, Strobe and Worklight. Open-Plug, acquired by Alcatel Lucent in 2010, had to discontinue its product due to lack of revenues (see the case study later in this chapter). Meanwhile Sencha, a high-profile JavaScript framework for creating native, touchscreen UIs, closed two VC funding rounds in 2010 and 2011, to the tune of US$29 million. The next three tables list the main acquisitions, exits and VC financings, respectively, in the cross-platform tools space. MERGERS AND ACQUISITIONS IN THE CROSS-PLATFORM TOOLS SPACE Company Product & type Acquirer Date Aptana Development environment Appcelerator Jan-11 Metismo Bedrock Java-to-native source code translator Software AG May-11 TapJS Game hosting platform and API AppMobi Jun-11 TapLynx App factory Push IO Jun-11 RhoMobile Rhodes enterprise apps framework Motorola Solutions Jul-11 Particle Code Source code translator Appcelerator Oct-11 Nitobi PhoneGap tool for creating web hybrid apps Adobe Oct-11 Strobe Web app framework and app management Facebook Nov-11 platform Cocoafish Post-download app services Appcelerator Feb-12 Worklight Enterprise app platform IBM Feb-12 Source: VisionMobile research Investment floods in As financiers scout for the next hockey-stick curve, cross-platform tools have popped up in their radar, raising over US$200 million. Backed by significant venture capital funding, Appcelerator is playing the role of consolidator, acquiring Particlecode, Aptana and Cocoafish as it moves to provide a more end-to-end solution across the app lifecycle. Worklight gained a major US$21 million boost before being sold to IBM, while Pyxis raised US$17 million and was renamed to Verivo. 12
  13. 13. 12 VC FINANCINGS IN THE CROSS PLATFORM TOOLS SPACE Company Major Investors Investment rounds Date Ansca Mobile Merus Capital Undisclosed Undisclosed Appcelerator Storm Ventures, Larry Augustin, US$4.1 million December 2008 Sierra Ventures, eBay, Mayfield US$2.1 million June 2010 Fund US$9 million October 2010 Translink Capital US$1 million January 2011 Red Hat US$15 million November 2011 Apperian Common Angels, North Bridge US$ 1 million July 2009 Venture Partner, Bessemer US$ 0.5 million December 2010 Venture Partners US$ 9.5 million March 2011 AppMobi Undisclosed US$2.1 million July 2009 US$6 million January 2011 GameSalad Inc. Steamboat Ventures US$1 million July 2010 Greycroft Partners US$6.1 million March 2011 DFJ Mercury DFJ frontier FF Venture Capital Get It Mobile Javelin Venture Partners US$1.1 million February 2011 Kony Solutions Insight Venture Partners US$19.1 million January 2011 Papaya Mobile Doll Capital Managment US$4 million January 2010 Keytone Ventures US$18 million April 2011 Pyxis (now Verivo) Egan Managed Capital US$5.2 million September 2005 Ascent Venture Partners US$1.95 million December 2007 Commonwealth Capital US$17 million January 2012 Sencha Led by Sequioa Capital and US$14 million June 2010 Radar Ventures US$15 million October 2011 Led by Jafco Ventures Service2media Prime Ventures US$10 million June 2011 Newion Investments StackMob Trinity Ventures US$7.5 million May 2011 Harrison Metal Capital Baseline Ventures Unity Led by Sequoia Capital US$5.5 million October 2009 Technologies Led by WestSummit Capital & US$12 million July 2011 iGlobe Partners Unwired Nation DFJ Mercury US$6.5 million January 2006 US$7.5 million January 2012 Worklight (now Index Ventures, Genesis US$5.1 million September 2006 IBM) Partners, Shlomo Kramer US$12 million April 2008 Pitango Venture Capital source: VisionMobile research, Crunchbase 13
  14. 14. 12 Divestments in the CPT landscape: the case of OpenPlug Alongside the rosy investments and buyouts, there have been a few grey fatalities in the cross-platform tool speed race. In September, 2010, Alcatel-Lucent acquired OpenPlug. The telco infrastructure vendor hoped to build a strategic platform between telcos and developers. A little over a year later, in December 2012, OpenPlug announced it was discontinuing operations, having failed to attract enough developers. The company had originally an embedded software background, and had built an operating system for feature phones called ELIPS Suite, which started shipping in significant volumes in 2008, notably with Sony Ericsson. By that time, handset OEMs were however shifting their focus away from feature phones and racing to adopt Android in their smartphone range to counterbalance the increasing competition posed by Apples iPhone. As a result, OpenPlug pivoted to a cross-platform runtime and toolset, released in beta at the Adobe MAX 2009 conference under the ELIPS Studio name. It was targeting Adobe developers seeking to extend their reach beyond desktops to smartphones. That was mistimed, with the product being announced on the very same day as Adobe¹s Flash packager for iPhone and AIR for Mobile. ELIPS Studio was using Adobes rich internet application framework (Flex and MXML) which was then starting to be challenged by HTML5, and is now being phased out by Adobe. OpenPlug was also criticised for failing to respond to numerous developer requests to make their toolset more compatible with Adobes MXML and AIR APIs. Ultimately OpenPlug failed to find a monetisation model, with its key challenge being the conversion of freemium users into paying customers for its support and professional services. The challenges were exacerbated by competitors like Appcelerator who – thanks to ample VC funding – gave the product away for free. Unlike others, OpenPlug also lacked any cloud services offering, which could have provided a complementary up-selling opportunity. Being part of Alcatel-Lucent, an operator-focused vendor, certainly did not help OpenPlug to recruit developers. Instead, the company found that developers did not consider operators to be an important part of the mobile app ecosystem. Before discontinuing operations, OpenPlug did amass 22,000 registered developers; however, only a minority were active users who went beyond just creating a “hello world” application. Past the early adopter stage Cross-platform tools have passed the “early adopter” phase, and are now moving into mainstream. One tool vendor – Sencha – claims a developer base of 1.6 million, along with 300,000 registered community members. Games development platform Unreal has seen 1 million unique installs of its SDK, it says. Unity has seen major growth in 2011 as well, and is now claiming 800,000 registered developers, including 200,000 active every month. Appcelerator spiked its user base from 250,000 by another 1.6 million by acquiring Aptana, and integrating its “Titanium” technology with the popular Aptana IDE. PhoneGap has been downloaded 600,000 times, and integrated with dozens of mobile application platforms and App builders. Cross-platform tools are making a consumer impact, too. Corona claims its tool has been used to create 6,000 apps, which have been collectively downloaded 35 million times in 2011. Appcelerator claims 35,000 apps and 40 million device deployments. CROSS-PLATFORM TOOLS TRACTION Tool Market Traction Reference Applications Adobe (Flash, 3,000,000 estimated developers Machinarium (iOS), eBay, BBC iPlayer AIR, Flex) Adobe claim 9/10 of the most popular Facebook games use Flash Ansca Mobile 100,000 downloads The Secret of Grisly Manor, Bubbleball 14
  15. 15. 12 (Corona) 10,000 developers (estimated) incl. 873 and Unicorn Studio. studios. Apps downloaded 35 million times in 2011 Appcelerator 250,000 through Titanium (pre Aptana) NBC iPad App, LEGOLAND, Zipcar, and 1,600,000 through Aptana IDE PwC’s MyTravel app. 35,000 apps published and deployed on 40 million devices Marmalade 50,000 developers installed base Plants vs. Zombies, Call of Duty: Black including EA and PopCap Ops: Zombies, Need for Speed Shift, Cut The Rope, Lara Croft Guardian of Light and Sim City Deluxe MoSync 180,000 downloads Enterprise apps, e.g., Gemalto, Intel, 20,000 registered users Navtech RhoMobile 100,000 downloads SuperTrainerHQ, Pilsner Urquell (now Motorola) Navigator, IPv6 World congress, Touristik Mainz PhoneGap 600,000 SDK downloads Netflix, LinkedIn and Ars Technica Reader for iPad Sencha 1,600,000 downloads Direct.TV app, Tours in Malta, Bugs in the 300,000 registered community members Garden and Just One More by Ribbit Unity 800,000 registered developers 200,000 iShadowgun, Battleheart, Gears, Samurai Technologies active each month. More than 87 million II and Snuggle Truck (Unity) total installs of the web player. 1,500 Unity based games in the iPhone App store source: VisionMobile research Behind the emergence of cross-platform tools Cross-platform tools have emerged to address three major market gaps that exist today in mobile apps development: dealing with platform fragmentation, accessing new platforms, and managing developer resources. Dealing with platform fragmentation Cross-platform tools have emerged as a solution to the problem of device and platform fragmentation. Java ME was supposed to address the tens of proprietary operating systems powering phones in the 2000s – but developers wound up having to support over 200 device variants (SKUs), just to reach 80% of the installed device base in any one country. Mobile web sites were another “lowest common denominator” approach hampered by poor browser conformance to web standards; even today, Internet Explorer on Windows Phone supports only half of the HTML5 features supported by Apple’s Safari on iDevices. In addition, HTML5 is still a long way from delivering app-like experiences, and requires expensive tweaking. Assanka, which made the popular Financial Times HTML5 app for iPad and Android tablets, said it took 24 man months (an estimated. US$400,000 cost) to create the iPad version of its HTML5 app, and another 12 man months to port the same app to Android. Besides fragmentation across devices, platform fragmentation is very pronounced. Android is notorious for its runtime fragmentation; in February, 2012, there were three different versions of the Android platform (API levels 7,8 and 10) in the installed base with a share of more than 2%. All three versions in the installed 15
  16. 16. 12 base are behind the latest release version at API level 15, with the interim API levels (11-14) targeted at tablets “Fragmentation is now a (Gingerbread release). 4D matrix” To combat fragmentation, cross-platform tools vendors have offered device optimisation and web re-rendering solutions Christopher Kassulke CEO of Handy Games in the cloud. Databases of device specifications and capabilities can be used to optimise image sizes, re-configure layouts and user interfaces, and implement workarounds or graceful functional degradation rather than forcing developers into a lowest common denominator approach. Traditionally, device capability databases were provided by pure-play vendors such as Wurlf, DotMobi and DetectRight. Increasingly, device databases are available from telco infrastructure players (e.g., WDS, Ericsson, mFormation, Ascom), telcos themselves (e.g., AT&T device capabilities API) as well as existing cross-platform tools (e.g., Netbiscuits, Mobile Distillery, Sevenval). BKRender, another cross-platform solution, provides a database of 6,000 devices and an HTTP reverse proxy to optimise mobile websites. A number of CPTs grew from the need to solve fragmentation issues for internal consulting projects. One such case is Enough Software, a provider of optimisation tools for Java ME apps. Enough Software exemplify what is a fairly typical path in the cross-platform tool space – starting with solving fragmentation issues they experience in their own projects before productising that know-how into a commercial tool. This was the evolution path followed by Pyxis (Verivo), Netbiscuits, Marmalade and DragonRad, among others. And while CPTs are beginning to solve platform fragmentation issues, new dimensions of fragmentation are emerging. “Fragmentation is now a 4D matrix” according to Christopher Kassulke, CEO of Handy Games who notes that developers now have to deal with fragmentation across software platforms, billing platforms (and pricing models), advertising platforms and social platforms. Access to new platforms and screens For the nearly 2,500 developers that participated in our online survey, we found that the most important factor in selecting a cross-platform tool is that it supports a broad range of platforms. Apart from the dominant iOS and Android platforms, many platforms are vying for runner-up positions – including Windows Phone 7, Bada, and BlackBerry, not to mention additional “screens”, i.e., desktop, gaming and set-top box platforms. We found that developers are using iOS or Android as the launchpad from which to then expand to new platforms; users of the popular Appcelerator and Marmalade tools responded that over 90% target iOS and over 80% target Android. Over 70% of CPT users target iOS, while over 60% target Android. In the VisionMobile Developer Economics 2011 report, we found that developers target an average of 3.2 platforms concurrently. Almost a year on, in the survey conducted as part of the cross-platforms report, we found that respondents are targeting an average of 3.8 platforms – a figure that increases to 4.5 platforms for those developers actively using cross-platform tools. In other words, cross-platform tools are proven to increase the number of platforms simultaneously catered to by developers. The increase in multi-platform “tenancy” is important from a cost perspective. For a developer, rewriting an application to target a new platform costs time and money. Often, targeting a new platform means adding more than 50% to the original development costs. Plus, with platform development locked to different app stores, app submission and marketing costs also increase. We also found that CPTs are being used to address new screens, i.e., new form factors and connected devices, desktops, set-top boxes and gaming consoles. In our survey, 27% of respondents noted that they also target Windows PC and 24% target Mac desktops with their main cross-platform tool. With Eric Schmidt predicting that more than half of TVs in North America in mid-2012 will be powered by Android, the ability to reach new screens is going to be a major driver for the growth of cross-platform tools. 16
  17. 17. 12 While our survey was conducted slightly before their sudden surge in hype, the smart TVs that emerged at the “We have found that by using end of 2011 did not show much momentum. Only a cross-platform tools our time single respondent requested support for smart TVs, to market is reduced by 70% while a few more mentioned SmartTV platforms like Google TV and LG TV. There were also several on average. We choose cross- mentions from developers supporting the Playstation3 platform tools even if we need and Vita, Xbox, and the MS Surface Table. Linux proved to build a single application for to be the most popular alternative platform that we had not identified, with 76 respondents noting that they a single platform” targeted the platform in embedded, server or desktop form. Paulius Uza CEO of InRuntime Managing development resources A third very important reason behind the emergence of cross-platform tools is the challenges in managing developer resources. Developing for mobile presents multiple operational issues for software houses, regardless of whether they are a one-man garage operation or a top-five multinational game software vendor. Each major smartphone, PC or games platform has its own authoring language, its own set of APIs, its own development environment and its own app store. The next table shows how much the major smartphone platforms differ. LANGUAGES & ENVIRONMENTS Platform Authoring language Dev Environment App store Android Dalvik Android Development Tool Android Market C and C++ (NDK) Plugin for Eclipse WebViews Other IDEs, e.g., IntelliJ, Netbeans. Visual Studio Bada C++ (proprietary Bada IDE based on Eclipse Samsung Apps extension) CDT and JSDT (JavaScript HTML, CSS, JS Development Tools) Blackberry C/C++ QNX Momentics IDE Blackberry App World Tablet OS Java Eclipse plug-ins Android Player Standard IDE & Webworks HTML5, CSS, tools JavaScript Blackberry J2ME MIDP 2.0 Eclipse plug-in Blackberry App World OS HTML WebWorks SDK iOS Objective C Mac with Xcode App Store WebViews Symbian C++ Carbide C++ IDE Ovi Store Qt Windows C#, VB.NET Visual Studio and Microsoft Windows Phone Marketplace Phone Silverlight framework tools such as Expression XNA framework Blend source: VisionMobile research 17
  18. 18. 12 Take for example a small apps company developing for iOS, Android and Windows Phone 7. They would have to employ three teams of developers, as often, skillsets don’t mix. They would have to maintain three different codebases, and synchronize feature additions and bug fixes across the three. This is a daunting challenge, and one reason why many apps are launched across stores with months of delay. Furthermore, quality and design consistency will vary when multiple developer teams are involved, and especially when the development for a new platform is outsourced to a third party. Support costs are also difficult to contain when developing for multiple platforms, as developer documentation needs to be built for three platforms, as does the internal customer support documentation. Cross-platform tools therefore can provide major time-to-market advantages and cost savings to a software house. “We have found that by using cross-platform tools our time to market is reduced by 70% on average,” remarks Paulius Uza, CEO of development house InRuntime. He continues, “We choose cross- platform tools even if we need to build a single application for a single platform”. 18
  19. 19. 12 19
  20. 20. 12 Mapping the Cross-platform Tools Space The market of cross-platform developer tools has exploded in 2011. What used to be a niche market of few big players in 2005 (Adobe Flash Lite and Sun Java ME) has in 2012 mushroomed into a diverse market of over 100 smaller players. In this report, we’ve attempted to create order out of chaos and introduce a mapping of cross-platform developer tools (CPTs). We’ll examine the key components of a CPT, the five different technology approaches, the three forms of app deployment (native vs. web vs. hybrid) and the use cases. We’ll conclude with a full list of cross-platform tools. Anatomy of a cross-platform tool A cross-platform tool can have five components, which correspond to the five stages in the app lifecycle: develop, integrate, publish, deploy and manage. 20
  21. 21. 12 1. Develop. Cross-platform tools offer a plethora of authoring languages, from entry-level, simplified languages like LiveCode or Lua (e.g., Corona, DragonRad, Moai and Unity), to web languages HTML, CSS and JavaScript (e.g., Appcelerator, Application Craft, Kony, Spot Specific) to mid level languages like Java and C# /.NET (e.g., Xamarin MonoTouch) to more low level languages such as C++ (e.g., Qt, MoSync, Marmalade, Aqua Platform). Many tools offer a visual drag-and drop environment (e.g., Games Salad, Yo Yo Games Maker, LiveCode, Appcelerator, Spot Specific). Others have only a restrictive template-based app development process (e.g., iBuild App, Wix Mobile). Other tools target developers in specific segments; for example, Impact JS and Lime JS JavaScript frameworks target games developers, while RhoMobile and Worklight target enterprise developers. This gamut of CPT authoring languages caters to the entire spectrum of app developers, from scripters to seasoned web developers, and from creative designers to hard-core software developers. The IDE (integrated development environment), emulator and debugger are core parts of the Develop stage. The open source IDE Eclipse is most often used as a basis, as the development environment is cross- platform itself across PC, Mac and Linux. On top of Eclipse, vendors provide additional plugins and emulators. Some vendors offer an install-free, web-based development environment specially designed for enterprise developers or designers working for a brand. The Develop stage can also involve source control, collaboration and workflow tools. RhoMobile’s RhoHub uses Git repositories to manage source control and collaboration. Unity, Appcelerator and RunRev provide marketplaces where designers and developers can sell components and assets with the aim of helping others to speed up their development cycle with off-the-shelf components. Sencha soft-launched a similar component marketplace in November 2011, while Corona and Marmalade host a template repository and code community, respectively. 2. Integrate. This stage is about integrating with native device capabilities, cloud APIs and enterprise databases. To integrate with native device capabilities, a popular approach is to use JavaScript alongside the PhoneGap APIs and library, all of which are bundled together in a hybrid-native application. Worklight, AppMobi, Feedhenry and BKrender include PhoneGap functionality within their tools. MoSync and Qt use a similar approach of wrapping native APIs with an abstracted set of platform-independent APIs that the developer can call irrespective of the end platform being targeted. To integrate with native device capabilities, developers use the set of APIs defined by the tool in the tool’s coding language – for example JavaScript, Lua, LiveCode or C++. Similar functions on each target platform usually share the same tool-level API, allowing for a high level of code re-use for the business logic, but less so for the UI or hardware-specific features. For example, Mono Touch and Mono for Android do not share common UI APIs, nor do all device feature APIs map cleanly from one device to another. Apps can call the device functionality at runtime, with the call either translated at compilation, or passed through the bridge that the runtime provides to the underlying platform. Connecting to cloud APIs is another major part of the integration process. Cloud APIs are turning into a market segment of their own. Social gaming networks have become increasingly important to mobile developers, and this is not just Facebook or LinkedIn. The Apple Game Center, OpenFeint, Scoreloop, Skiller, Papaya Mobile and Swarm provide cloud-based APIs for social gaming. Social APIs are only a small part of the picture. There are over 14 vendors providing in-app billing and virtual goods platforms, including Bango, Social Gold and Paythru; more than 27 selling sales analytics tools such as App Annie, Distimo and Flurry; more than eight offering app diagnostics tools such as Bugsense and Testflight. A full list of vendors is available through VisionMobile’s Atlas service. There are, of course, signs of consolidation. Appcelerator in particular has its own analytics and monetization platform and acquired Cocoafish to integrate social sharing and push messaging features. 21
  22. 22. 12 Application platforms targeting enterprise (B2B) developers often provide services for managing database connectivity. RhoMobile offer the RhoConnect mobile app integration server, which provides data synchronisation by pushing out updates to the device as they happen on the backend. CPT offered by Antenna, Feedhenry, and Worklight provide similar integration middleware. Other notable cross-platform tools dedicated to enterprise development are Stackmob, Oracle (ADF), Aperra and Sybase (Unwired Platform). 3. Build. The build stage is where the cross-platform “magic” occurs. There are a number of different approaches for building the application. The two most popular are: compiling the code and UI templates directly to native platform binaries; or, packaging code in a native shell and interpreting through a runtime, which could be a ‘naked browser’ packaged with the code, or even the device’s own browser rendering engine. A number of different technology approaches for building cross-platform apps are discussed in the next section. 4. Publish. Publishing an app involves submitting it to the native app store (e.g., Apple App Store or Android Market) or publishing internally with the option of hosting on a private enterprise app store (e.g., with Feedhenry, Antenna, RhoMobile or Worklight). Many CPT products help to manage the App store publishing process to some degree; these include Sencha 2.0, AppMobi’s PhoneGap XDK, and RhoMobile’s RhoHub. Some vendors such as Appcelerator LiveCode and Corona will showcase apps on their websites, while Unity (with ‘Union’) also provide support for publishing to additional platforms. 5. Manage. “App management” functionality is typically offered by enterprise-targeted CPTs (e.g., Worklight, RhoMobile, Antenna, Feedhenry). It may include push messaging and data flow management, along with remote (un)installation, policy management, and inventory management. Management of commercial apps adds performance tracking (i.e., analytics tools) that may be provided by vendor partners. For example, Appcelerator deeply integrates its own analytics into Titanium, while Ansca Mobile integrates Flurry’s analytics APIs into its own Corona SDK. Technology approaches in cross-platform tools In our analysis of cross-platform tools, we have identified five distinct technology approaches being used: JavaScript frameworks, app factories, web-to-native wrappers, runtimes and source code translators. Each technology targets a slightly different developer audience - from non-developers to seasoned programmers - and address different application use cases. These technology approaches are not mutually exclusive; many tools use a combination of technologies. For example some runtime-based CPT solutions are adding a webview component, which enables them to create hybrid web app wrappers. JavaScript frameworks are code libraries designed to speed up complex web development tasks like managing touch-screen interactions, building cross-browser user interfaces, or managing games sprites. Example vendors are jQuery Mobile, Sencha Touch, Cocos2D, DHTMLX Touch, Zepto JS, Impact.js, iUI and Wink. JavaScript frameworks target web developers looking to create touch UIs, achieve cross- platform browser compatibility, deliver native look and feel, or deliver complex game functionality. App factories are code-free, visual design tools for quickly building simple mobile applications. They consist of a development environment (installable or cloud-based) that uses template-based, drag and drop or wizard-based capabilities to generate the app code. At their simplest, app factories can be used to create RSS-based news readers or no-frills branded apps. At the next level up they provide a basic drag and drop designer. At their most advanced they provide a code-free, component-based design approach that includes device and cloud integration. App factories allow non-developers to “create their own app”. Some app factories allow developers to view and tweak the code generated by the tool. Others include a range of post-download services including analytics, push notifications and ad management. Examples include AppMkr, AppsGeyser, Wix Mobile, Tiggr, Mobile Nation HQ, Mobjectify, Red Foundry and Spot Specific. 22
  23. 23. 12 TECHNOLOGY APPROACHES IN CROSS PLATFORM TOOLS Type Description Examples Target Authoring Use cases audience language JavaScript JavaScript code jQuery Mobile, Web JavaScript Create touch UIs, frameworks modules delivering Sencha Touch, developers achieve cross- time-saving user Cocos2D, DHTMLX platform browser interface or other Touch, Zepto JS, compatibility, components ImpactJS, LimeJS, deliver native look iUI, Wink and feel, or deliver complex game functionality. App factories Code-free, visual AppMkr, Wix Non- Visual, “Create your own design tools for Mobile, Tiggzi, developers code-free app” easily building Mobile Nation HQ, tools mobile applications. Mobjectify, Spot Specific, Red Foundry, Games Salad Web-to-native Solutions to deliver Adobe (PhoneGap Web HTML, To convert web wrappers native apps using Build),Uxebu developers JavaScript, apps to native for HTML and ( Sencha CSS app store JavaScript. The web (Touch v2) distribution, or to code is packaged MoSync access native device with a library that (Wormhole) functionality and bridges web code to optimisations. native functionality - all inside a native app shell. Runtimes A runtime execution J2ME, Adobe Air, Software Any Apps targeting a environment Ansca Mobile developers supported wide reach across abstracting the app (Corona), AppMobi, language platforms or across from the underlying Antix, Unity, screens platform. Appcelerator, Xamarin Source code Takes platform- MoSync, Eqela, Software Any Applications with translators independent source Marmalade, developers supported complex logic and code and converts it Bedrock, XMLVM language high performance to the source code of or optimisation the native requirements platform(s), or the source code is compiled directly into a binary. source: VisionMobile research Web-to-native wrappers are solutions to deliver native apps using web HTML5, CSS and JavaScript. The web code is packaged with libraries that bridge web code to native functionality – all inside a native app shell. Apps are written in web languages, and access a webView (a “chromeless” browser component) already on the device, plus JavaScript API extensions that let the app use platform capabilities beyond those normally exposed by the browser: notifications, accelerometer, compass, connectivity, geolocation, and the filesystem. The prime example of web-to-native wrappers is PhoneGap, as well as Uxebu’s and Sencha v2, which adds this wrapper functionality to the JavaScript framework. Another example is MoSync Wormhole, which delivers a greater set of API functionality than PhoneGap. Web-to-native wrappers target web developers who need to convert web apps to native for distribution through an app store, or access native device functionality and optimisations. 23
  24. 24. 12 Runtimes. A runtime is an execution environment and cross-platform compatibility layer that sits atop the native operating system. A runtime essentially shields the app from differences between underlying platforms. Runtimes vary in size and complexity, and execute code on the device using several different methods – virtualization, interpretation, just-in-time compilation or ahead-of-time compilation. Java ME, BREW, Flash Lite and Openwave MIDAS were early runtime pioneers. These heavyweight execution environments seemed half way between a browser and a full operating system. They lost popularity in the late 2000s due to their poor developer story (platform fragmentation and no direct route to market), poor handset OEM proposition (integration complexity), and competition with Android, iOS and HTML5 browsers. Today’s cross-platform runtimes offload complexity from the device software layer to the design-time development tool. Often, part of the cross-platform translation happens at design-time (through translation into bytecode) and part at run-time (by executing that bytecode). Examples of runtimes are Appcelerator, Adobe Flex (and AIR), Corona, AppMobi, Antix and Unity. Runtimes target software developers looking for broad reach across native platforms or across screens (mobile, PCs, games, TVs). Source code translators These solutions translate (cross-compile) the source code into an intermediary bytecode, native language (e.g., C++, Objective-C, JavaScript) or directly to lower level machine code (assembly language). Source code translators are often used in combination with a runtime element. For example, Metismo (now Software AG) converts J2ME applications to C++, ActionScript and JavaScript, and compiles for ARM, MIPS, PowerPC and x86 devices. Similarly, Eqela takes an app written in a C-like language and translates the source code to match the target platform: JavaScript for web browsers, Java, C or assembly. Haxe/NME converts the ActionScript-like “Haxe” source language – which features an API similar to Flash – to either Shockwave or C++ source code with native standard libraries. XMLVM uses Java, .NET or Ruby code compiled to byte code level which is then cross compiled to Javascript, C++ or Objective C. Other examples of tools with an element of source code translation are MoSync, Marmalade and Xamarin’s Mono. They target advanced software developers who need to create cross-platform apps with complex logic and high performance or optimisation requirements. Cross-platform tools going vertical In addition to the above five technology approaches, cross-platform tools vendors have already began differentiating by verticals, targeting their solutions towards enterprise, game or media app developers and their particular needs. Enterprise Application Platforms are cross-platform tools that support the full application lifecycle (develop->integrate->publish->manage) with database connectors, middleware, and cloud services such as app hosting, policy management and push messaging. Many of these target enterprise, rather than consumer applications. Notable mobile application platforms include Worklight, Kony, Antenna Mobility Platform, Application Craft, RhoMobile and Verivo. Games tools are complete development environments specifically targeted at games developers. The games engine is a more heavyweight runtime component; the app typically consists of low level code (e.g., C++) plus a scripting language (e.g., Lua) for coding the game logic. Unreal and Unity are the outright market leaders for advanced 3D games. They offer a host of integrated tools and workflow plus collaboration management. Moai, SiO2, Antix and Shiva3D are also operating in similar game tools markets. Marmalade and Corona have developed from a games engine legacy, though have extended support for broader use cases with features such as native UI elements. There are also lighter-weight games tools like GameSalad, which is positioned as a ‘games builder’ combining the no code approach of 24
  25. 25. 12 an app factory with the tools of a games engine. Lightweight JavaScript libraries like Impact JS and Lime JS are positioned as HTML5 game frameworks. The next table lists over 50 cross-platform tools by technology approach, authoring language and deployment format (web vs. native). MAJOR CROSS-PLATFORM TOOLS & APPROACHES Vendor (Tool) Technology approach Authoring language Deploym. format Adobe (AIR) Runtime Actionscript Native, Hybrid Adobe (Flex) SDK addition to AIR MXML Native, Hybrid Ansca Mobile Runtime Lua Native (Corona) Antenna Software HTML5, CSS and Runtime Hybrid web apps (Mobility Studio) JavaScript Antix Labs (Antix Runtime C/C++ Native Games) Appcelerator HTML5, CSS and Runtime Native apps (Titanium) JavaScript Web-to-native wrapper WYSIWYG, HTML, Application Craft Web apps, Hybrid (PhoneGap) Javascript, CSS, jQuery Runtime (Mobius) Web-to- HTML5, CSS and AppMobi native app wrapper Web apps, Hybrid JavaScript (PhoneGap) Web-to-native app wrapper HTML5, CSS and Backelite (BKrender) Web apps, Hybrid (PhoneGap) JavaScript DHTMLX Touch JavaScript framework HTML5, CSS, JavaScript Web apps Didmo (Magmito) App Factory WYSIWYG Web apps, Hybrid Elements Interactive Runtime C++ Native Mobile (EDGELIB) Enough Software Source code translator, Java Native (J2ME Polish) Runtime Web-to-native app wrapper Exadel (Tiggzi) WYSIWYG, JavaScript Web apps, Hybrid (PhoneGap) Web-to-native app wrapper FeedHenry HTML5, CSS, JavaScript Web apps, Hybrid (PhoneGap) Runtime, Web-to-native app Web apps, Hybrid, IBM (Worklight) HTML5, CSS, Javascript wrapper (PhoneGap) Native iBuildapp App Factory WYSIWYG (templates) Web apps, Hybrid Ideaworks3D Source code translator C++ Native (Marmalade) 25
  26. 26. 12 iFactr / iFactr Source code translator, C# .NET Native Monocross Runtime Web app, Hybrid, impact.js JavaScript framework HTML5, CSS, JavaScript Native iUI Framework HTML5, CSS, JavaScript Web app Jo App JavaScript framework HTML5, CSS, JavaScript Web apps, hybrid JQuery Mobile Framework HTML5, CSS, JavaScript Web apps WYSIWYG, HTML5, CSS, Kony Web-to-native app wrapper Hybrid, Native Javascript Mobile Nation App Factory WYSIWYG Web app, Hybrid (MobileNationHQ) WYSIWYG, HTML, Mobjectify App Factory Web app JavaScript, CSS Source code translator, C++, HTML5, CSS, MoSync Native runtimes JavaScript WYSIWYG, HTML5, CSS, Netbiscuits Framework / App factory Web app, Hybrid Javascript, BiscuitML C++ QML (Qt Meta Nokia (Qt) Runtime Native Language) PhoneGap (Nitobi- Web-to-native app wrapper HTML5, CSS, JavaScript Hybrid Adobe) Pyxis (now Verivo) App factory WYSIWYG Native Radical Breeze (Illuminations Source code translator WYSIWYG Native Software Creator) Red Foundry App builder WYSIWYG Native RhoMobile Runtime HTML, JavaScript, Ruby Native (Rhoelements) WYSIWYG, LiveCode RunRev (LiveCode) Runtime Native (natural-like language) Sencha (Touch, JavaScript Framework, Web- HTML5. CSS, JavaScript Web apps, Hybrid jQtouch) to-native app wrapper (2.0) Seregon Solutions App Factory WYSIWYG, Lua Native (DragonRad) SIO2 Interactive Runtime C/C++, Lua Native Smartface Runtime WYSIWYG Native Native C++, Software AG Source code Translator Java ActionScript and (Bedrock) JavaScript 26
  27. 27. 12 Runtime or Web-to-native WYSIWYG, HTML5, CSS, Spot Specific Web app, Hybrid app wrapper Javascript Strobe / Sproutcore Framework HTML5, CSS, JavaScript Web apps (acq. by Facebook) SuperWaba Runtime Java Native (TotalCross) JavaScript framework, Web- The M Project HTML5, CSS, JavaScript Web apps, Hybrid to-native app wrapper Unity Technologies Runtime C# .NET, Lua Native (Unity) Unreal (Unreal Runtime UnrealScript Native Engine) Uxebu (, Frameworks, Web-to-native HTML5, CSS, JavaScript Hybrid Storage.js ) app wrapper UXplus (Aqua WYSIWYG, JavaScript, Runtime Native Platform) C++ JavaScript Framework, Web- Wink to-native wrapper HTML5, CSS, JavaScript Web app (PhoneGap) Wix Mobile App factory WYSIWYG Web app Xamarin (Mono Source code translator, Touch, Mono for C# .NET Native Runtime Android) Java Bytecode, .NET .Net, Java or Ruby XMLVM Source code translator CIL, JavaScript, Bytecode Python, Obj. C C++ Zipline Games App factory, Runtime (for Lua Native (Moai) Lua script) source: VisionMobile research The full list of 100 cross-platform tools that we have tracked as part of our research appears below. FULL LIST OF CROSS-PLATFORM TOOLS The Dojo Foundation The jQuery Project (jQuery Adobe (AIR) RunRev (Livecode) (dojo toolkit) Mobile) Sencha (Touch, Adobe (Flex) Seregon (DragonRad) Kony (KonyOne Platform) jQtouch) Innaworks Elements Interactive Vexed Digital (Kirin, NB FOSS Stonetrip (ShiVa3D) (Alchemo) Mobile (EDGELIB) project) Antenna Software SIO2 Interactive Kyros (Velocity) (Mobility Studio) (SiO2 Engine) Antix Labs (Games Enough Software Mobinex Inc Digital Fruit (Lime JS) Development Kit) (J2ME Polish) (Smartface Platform) 27
  28. 28. 12 Job and Esther The Game Creators Service2Media (App Lifecycle Technologies Ltd Spot Specific Ltd (App Game Kit) Platform) (Eqela) Appcelerator Expanz (Expanz Didmo (Magmito) StackMob (Titanium) Platform) Facebook (Strobe, Geniem (Appever) FeedHenry Ideaworks3D Ltd (Marmalade) Sproutcore) SevenVal, YOC Group Sybase (UnWired Application Craft Zipline Games (Moai) ( Platform) Lifecycle Mobile Mobile Nation Pancoda (The M AppMobi (Fivespark) (MobileNationHQ) Project) Gamebuilder Inc. Xamarin (MonoTouch, Mono Deutsche Telekom Apps-Builder (Gamebuilder Studio) for Android) (The Unify Project) UX Plus Inc. (Aqua GameSalad Inc Exadel (Tiggr, now MoSync Platform) (GameSalad) Tiggzi) Battery Powered SuperWaba Games Artech (GeneXus) NeoMades (NeoMAD) (TotalCross) (BatteryTech) Software AG Unity Technologies Gideros Mobile Netbiscuits (Bedrock) (Unity) Backelite SpringSource, VMWare Unreal (Unreal Octomobi (BKrender) (Grails, SpringMVC) Engine) OpenText (Mobile Wave Qualcomm (BREW) HaxeNME Uxebu (Bikeshed) Platform) Brightcove (App iBuildapp Inc (iBuild Oracle (ADF) Uxebu ( Cloud) App) Department of Papaya Mobile Behaviour and ITR Mobility (iFactr) Vaadin (Social Game Engine) Logic (Cabana) Trigger Corp Canappi Edhouse (IPFaces) Adobe (PhoneGap Build) ( Radical Breeze Sideshow NetQuest ( IBM (Worklight) (Illuminations) Cocos2D PhobosLab (impact.js) Verivo Software (ex Pyxis) wxWidgets Conduit Ltd FlexyCore (In-the-box) Nokia (Qt) XMLVM (Conduit Mobile) Ansca Mobile iUI Quickconnect Family XUI.js (Corona) CoStore ++ Technologies JMango Red Foundry (Pixelspark) (XPower++) Motorola, Solutions YoYo Games (YoYo DHTMLX (Touch) Jo App (RhoMobile) Games Maker source: VisionMobile research 28
  29. 29. 12 Deployment formats: web or native? The perennial question for many developers is whether to use a web-browser approach to deploying mobile apps, or whether to create native applications. Web apps provide a large addressable market, at the cost of web-only distribution and a comparatively shallow experience. Native apps allow for much deeper device integration and experiences, but at the cost of a platform-specific addressable market. Cross-platform tools have blurred this distinction, with tools (notably Appcelerator) allowing web developers to create native applications. Web-to-native wrappers such as PhoneGap allow web developers to access native device functionality while still running within a browser. But the native vs. web question still applies in the case of deployment formats. Whether the final app is web code or a native application has many ramifications in terms of the distribution channel (website vs. app store) and depth of experience (shallow vs. engaging). HTML5 does advance the capabilities of web browsers, for example allowing precise visual layout (Canvas element) and inherent support for video, persistent storage, geolocation, access to contacts, sensors and SQL database access. At the same time, web developers have to deal with the immense level of variance with how differently web browsers implement the HTML specifications. Across all mobile phone browsers, Firefox Mobile 10 scores highest in terms of HTML5 compliance, closely followed by Apple’s iOS5 platform. At the opposite end is the Windows Phone 7.5 browser, which is roughly half as compliant as Apple. Desktop browser and TV browser compliance to the HTML5 standard is equally diverse and polarised. A list of HTML5 browser compliance scores for mobile platforms is shown on the previous chart. 29
  30. 30. 12 The result of this “compliance fragmentation” is that web app developers have to spend copious time and resources in cross-optimising their web apps for the major smartphone platforms. Perhaps most notable is the case of Assanka, makers of the Financial Times popular HTML5 app, who took 24 man months to create the news reader HTML5 application for the iPad, and another 12 man months to port that same application to Android. Web Hybrid apps to the rescue So should developers choose web or native? The hybrid app approach tries to combine the best of both worlds. A number of cross-platform tools already produce hybrid apps: PhoneGap, BKRender and Sencha v2, as well as Worklight and Appcelerator. From the user’s point of view, hybrid apps are just like native apps: they are discovered and downloaded using native platform app stores, and installed on the device using the familiar process. After installation, hybrid apps can be launched from the home screen (iOS) or app drawer (Android), and can often work without the need for data connectivity. From the developer’s point of view, the workflow for making hybrid apps resembles that for making native apps, with one exception: developers can use HTML, CSS and Javascript to write most of some parts of the apps. Since the hybrid app development model is supported by all major mobile platforms, this allows reusing the HTML, CSS and JavaScript code between versions of the app that target different platforms. Hybrid apps consist of a native code shell (or wrapper) containing HTML, CSS and JavaScript. When a hybrid app runs on the device, the wrapper starts an instance of the web browser (WebView) and loads the HTML, CSS and Javascript. The WebView instance is usually “chromeless”, i.e., it does not have web browser controls, therefore allowing the hybrid app to look just like a native app. 30
  31. 31. 12 The next table compares native, hybrid and web app approaches across key technical and commercial aspects. As shown in the table, hybrid apps combine some of the characteristics of native apps with those of pure web apps. Easy of discovery and reach. Hybrid apps are discovered by users in the same way as native apps. Separate versions of the app need to be maintained to reach users of multiple mobile platforms. Depth of experience. Hybrid apps offer an important trade-off in the depth of experience that can be achieved. They allow the HTML code to have access to native APIs (therefore delivering richer experiences), although at the cost of a non-native UI, due to the web technologies involved. Customer ownership and terms for hybrid apps are exactly the same as for native apps. Developers transact with the users by means of native platform app stores, and must to comply will all the terms and conditions imposed by the app store itself, including approval policies. Engagement. Since hybrid apps are installed on device and are shown in home screen or app drawer, they are identical to native apps in being able to drive engagement and recurring use. Users can launch hybrid apps as easily as they launch native apps without the need to remember any long URLs or explicitly making a shortcut on the home screen, as is required for pure web apps. Monetisation Developers of hybrid apps benefit from the same monetisation mechanisms as developers of native apps, including paid downloads and in-app payments. 31