Comparison of cross platform tools for mobile apps

August 23rd, 2012 | Biz Blogs | Comments Off

Cross platform tools

Cross platform tools are required to fight against platform fragmentation in mobile application market. Led by Apple’s iOS and Google’s Android there are multiple platforms that have significant market share spanning millions of users.  Creating a native application for each platform is a tedious and expensive exercise. Cross platform tool offers writing code just once using one technology and create apps for multiple platforms.

There are multiple cross platform tools available in the market, each serving a different purpose. They are based on different technologies and provide cross platform support in different ways. All tools allow you to write code in one language and create apps for multiple platforms. The two ways of providing cross platform support are:

  1. Creating html based code that run in browser components (Web View) of different platforms. You get a HTML+CSS+JS code wrapped in native app.
  2. Creating one code in one technology (HTML5, .Net-C#, JavaScript, Ruby) and translating it for different platforms (cross compiling). You get native code automatically written for different platforms.

Factors for selection

Choice of tool depends on following factors:

  1. Supported Platforms: Some popular tools like Mono support only iOS and Android, while others like Phonegap support up to 7 platforms.
  2. Implementation Technology: Some tools require developers skilled in web development languages like HTML5, CSS,  JavaScript, while others may require developers skilled in .Net (Mono) or Ruby (RhoMobile) or Lua (Corona, DragonRad) resources. Some tools allow you to develop for iOS and translate to others while some (DragonRad) are pro Blackberry.
  3. Type of Apps: Some tools (like Unity3, appMobi) are best for developing Gaming apps, some for enterprise apps (DragonRad) while others (Phonegap, Titanium) provide support for generic apps. Some are more appropriate for web apps (Sencha) while some are better suited for hybrid apps (Phonegap, IBM Worklight).
  4. Pricing: Few tools are free and open source, while some are expensive. There are different license terms, pricing structure and support.
  5. Development Support: The most popular tools are best supported by the community while some tools (like Kony) have a great paid support. It also largely depends on the companies backing these platforms.

Cross Platform Tools Comparison

(Phonegap vs Appcelerator Titanium vs Mono vs Sencha vs Rhomobile vs Kony vs DragonRad vs Flex vs Unity )

Comparison of most popular tools on basis of the factors discussed in the last section:

Supported Platforms Technology Type of Apps Development Support Pricing
Phonegap
  1. Android,
  2. Blackberry 5x, 6x
  3. iOS
  4. Windows Phone 7
  5. Symbian
  6. WebOS
  7. Bada
HTML5, JavaScript Generic, Hybrid Apps,Hard to provide Native look and feel
  • Excellent Tutorials and Community Support
  • Free
  • Paid support starting $250/yr
Titanium
  1. iOS
  2. Android
  3. Blackberry
JavaScript Generic,Native AppsHard to provide Native look and feel
  • Excellent Tutorials and Community Support
  • Free
  • Enterprise versions available but Pricing not declared
Mono
  1. iOS
  2. Android
C# .NET Generic,Native AppsiPhonish Look and Feel
  • Good Tutorials and Community Support
  • $400 to $2500
Sencha Touch
  1. Android,
  2. Blackberry
  3. BB Tablet
  4. iOS
HTML5 and JavaScript Generic,Web Apps,Hybrid AppsHard to provide Native look and feel
  • Good Tutorials and Community Support
  • Free,
  • Support costs $300 to $5000
RhoMobile
  1. Android,
  2. Blackberry 5x, 6x
  3. iOS
  4. Windows Phone 7
  5. Windows Mobile
  6. Symbian
Ruby, HTML, Javascript Generic,Native Apps,Hybrid Apps,Apps requiring server syncNative look and Feel
  • Good Tutorials and Community Support
  • $500 per app
  • Server – $5000 to $20000
Kony
  1. Android,
  2. Blackberry 5x, 6x
  3. iOS
  4. Windows Phone 7
  5. Symbian
  6. WebOS
  7. J2ME
HTML5, JavascriptLua Generic,Hybrid Apps,Native AppsNative look and feel Paid support
  • Paid
  • Pricing not declared.
Flex
  1. Android
  2. Blackberry
  3. BB Tablet
  4. iOS
Flex and ActionScript Generic,Hybrid AppsHard to provide Native look and feel
  • Excellent Tutorials and Community Support
  • IDE costs $699 one time
Unity3
  1. iOS
  2. Android
  3. Blackberry
Lua Games
  • Excellent Tutorials and Community Support
  • Basic Free
  • Pro version is up to $6500 one time
DragonRad
  1. iOS
  2. Android
  3. Blackberry
Drag and DropLua Enterprise, Games
  • Excellent Tutorials
  • $5000/yr

Technical Details:

Technical details on what feature is supported in which platform are available for a few platforms. It is good to get in to details once you have shortlisted two to three platforms based on afore mentioned table.

PhoneGap

http://phonegap.com/about/feature

Rhomobile

http://docs.rhomobile.com/rhodes/device-caps

Enterprise Mobility Software Features

April 23rd, 2012 | Biz Blogs, Technical Blogs | Comments Off

ESSENTIAL CHECKLIST!

Here’s a little drill down to lower level of enterprise software design. I’ve tried to list some smart features that are must have for any enterprise mobility solution. This can also serve as smartphone based enterprise solution checklist.

Secure- Two factor login, other secure login, encrypted data storage, encrypted data communication.

Monitor – logs usage in call, sms, data. Maintains a list of all installed software and running services. Keeps check on any data security breach. Analytics should be an important part of the main software – it helps you measure Usage patterns and ROI. It also becomes most important feedback for ongoing formulation of mobile strategy.

Backup – automatically syncs or allows user to backup data on central server

Anti-Malware – Protects the mobile device and keeps a check on any intrusive software or app.

Optimized – Optimized performance, memory and battery usage. These three factors are important for continued reliable usage on a small device.

Enterprisey – This is a list of features that are important for rendering an enterprise-like feel to the mobile software. Spell correction, drag and drop, version control for contents etc. help in making the software intuitive and easy for adoption.

Investing smartly in Mobility

April 8th, 2012 | Biz Blogs | Comments Off

Going mobile can be a huge investment involving buying, maintaining appropriate devices and buying/ developing, distributing and maintaining mobile software. Here are 4 pointers to consider in your mobility strategy and make your mobility investment smarter:

Ongoing costs: Calculate your investment by factoring in ‘Ongoing cost’. As an example, if the solution heavily depends in internet, the 3G/GPRS data plan is an ongoing cost. Businesses should make sure what part of application can be made available offline to minimize such costs.

Implicit costs: Other than ongoing costs there are some hidden costs associated with use of applications. Briefly, there are implicit time and costs associated with adoption, usage time (all solutions are not particularly time savers), system resources.

Existing infrastructure: Can the mobility solution work with mobile devices/ handhelds/ tablets that your target users already have? BYOD is already acceptable. You may have the budget to buy new devices and distribute uniformly over the target user base, but if the solution can be experimented on existing infrastructure it may be huge cost and time saver. Even if you can implement the solution for a part of the user base it can provide extremely beneficial insights and feedback for the final implementation.

Future proof: Technology is changing very fast and it is important keep your mobility solution ready for future versions of the platform and devices. This is specifically more important for consumer apps as compared to enterprise apps.

The right way to GO Mobile!

April 8th, 2012 | Biz Blogs | Comments Off

Going mobile can be a costly and challenging affair. That makes it imperative to do it right the first time. A lot has been said about creating better applications for mobile. I’ve tried to summarize five most essential considerations for creating effective mobility solutions/strategy:

Focus – Mobile usage is far more specific, contextualized and personal as compared to PC usage. Cut down generic features relentlessly. Focus on limiting the feature-set, injecting simplicity and intuitiveness.

Start early, start simple – I’ve never seen someone need a user manual for Gmail, Facebook, Zynga games. And if you stop taking them for granted, these are very sophisticated applications – loaded with features. What goes in their favor is that they started simple and users adopted them and evolved with them. That may sound costly and time taking, but holistically it is more effective at roughly the same cost.

Security, Performance, Scalability – The overwhelming feature set of mobile solutions often lures decision makers to undermine these important requirements. Mobility solutions can be made completely secure if you architect it correctly. The solution should also focus on low memory and power footprints and be architecturally adaptive to future enhancements.

Smartness factor– Many enterprise and productivity solution often miss out on one front – How much of the platform/device capabilities are used? A little effort on using more of the available platform/device features (like GPS, Camera, Contacts) can make the solution manifold smarter. However one should be stringent about point one – ‘Focus’ and wary of adding very general/irrelevant features.

Platform independence – The mobile platforms/devices scenario is so fragmented that it is important to look for solutions that are as less dependent on platforms as possible. The first approach should be to evaluate a browser based solution. If that does not meet your requirements go for a Hybrid (HTML5 plus Native) solution which is cost effective and more platform independent than native. Developing platform dependent native solutions are costlier and take more time to market.

Integration – Another futuristic and significant consideration is integration of mobility solution with other channels. Integration with server, hosted enterprise solutions, existing websites, apps, cloud is already sought while developing mobile solutions.  Seeking integration with smart television and interactive kiosks, though futuristic, can be worth considering.

Mobility – the changing game!

April 7th, 2012 | Biz Blogs, Technical Blogs | Comments Off

Initially mobile was perceived as an extension to internet and enterprise solutions. But, with advent of smart mobile platforms with higher form factors, advance features and apps based ecosystem and evolution of social media the game has changed. Many business models now require a reversed technology strategy. In fact, many do not realize that mobility and social media evolution is “ON” and the game is still constantly changing. There is a different angle with which businesses are strategizing today. Almost every business, regardless of its size or domain, is imagining tapping its share of the mobility advantage. However, it is important to chalk out a mobility strategy before going all in. Here are some key items to include in your mobility strategy checklist.

Going mobile is a business (not IT) decision: Enterprise Mobility aimed at enhancing productivity, efficiency and curbing cost and delays has significant impact on the way organization works. It is important to accept and understand that transformation and plan it in advance. It may require changes in organizational structure, processes, infrastructure and people. It may also open new business opportunities and induce new vulnerabilities.

Security and Privacy: As with every new technology implement, there are concerns of data security and adoption. Another important aspect that comes in picture with mobility is employee privacy concerns. With concepts like BYOD, security is a greater concern. Fortunately, mobility has solutions for all these concerns and one can effectively manage all relevant devices, software updates, provisioning, backups and information security.

Platform diversity: The mobility clearly has a split market share shared by iOS, Android, Blackberry, Symbian and Windows. Palm and Bada being minor players. Diversity of platforms is also an opportunity for tools that can produce platform independent solutions like 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).

Involve stakeholders: Any business transformation requires strong internal communication for smooth adoption. All stakeholders must be kept aware of what’s coming and when, also, how does the transformation affect or benefit them.

This series will also cover who Mobility is for, what the right way to go mobile is, and how to invest smartly in mobility.