Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Icenium: Doug Seven on Building Hybrid Mobile Apps for iOS and Android

Icenium: Doug Seven on Building Hybrid Mobile Apps for iOS and Android

This item in japanese

Icenium, recently released by Telerik simplifies the development of cross platform hybrid mobile apps by taking advantage of the power and flexibility of the cloud to build apps for iOS and Android devices using HTML, CSS and JavaScript. It includes an integrated cloud enviornment (ICE) using which you can build apps and will be free until May 1, 2013. The framework also enables you to track changes in real time, thus eliminating the need to recompile with multiple devices.

In order to work with Icenium, you just need to click Get Started button located on the top of the home page, select the module you would like to work with and choose an authentication option. The ICE will be immediately displayed where you can provide the required code for your apps and also manage files.

However, the built-in simulators will work only with Google Chrome browser. If you work with Internet Explorer or Firefox, you will be prompted with a code using which you can test drive the app on Chrome.

InfoQ caught up with Doug Seven, Executive Vice President, Telerik and quizzed him to know more about Icenium.

InfoQ: What is the main reason behind the creation of Icenium?

More mobile devices will be sold in 2012 than "traditional" PCs, and developers are being asked to build applications that take advantage of these mobile form factors, both smartphones and tablets.

Unfortunately for developers, there is not a starndardization of mobile operating systems, and 85% of the U.S. smartphone market, as an example, is split between Apple iOS and Google Android mobile platforms. This presents a huge challenge for developers - regardless of their existing skillset in desktop, server-side or web development.

To build apps for mobile platforms means, at best learning new SDKs, and more often, learning new languages and technology stacks, including Objective C and xCode for iOS and Java and Eclipse for Android.

For most web developers, this is a very daunting proposition, and web developers are often the ones thinking and going mobile first, with mobile-optimized versions of websites, either because they see opportunity in reaching people in new form factors, or in many cases because they are being directed to "go-mobile" as the company they work for attempts to reach customers in new places.

Each mobile platform development stack requires tools and SDKs that have to be download, installed, configured and managed locally. This is the same way its been done for the past 20 years, and for me this felt very outdated (especially since I listen to music on Pandora, save files in DropBox and keep track of my ideas in Evernote).

We live in an era where most developers have near constant connections to the internet. The cloud has become a standard part of our existance, and enables many other applications in our lives. Yet our development environment, the IDEs we have been using for 2+ decades, have not evolved.

The goal with Icenium was to break the mold and enable web developers to build apps across platforms in a simpler and modern way; a new way that enabled them to focus on the content of their app, not the management of multiple development environments.

A little over a year ago, I came to Telerik with the crazy idea of building what I called an "integrated cloud environment (ICE)" - an integrated toolset that would provide both the convenience of a local coding environment with the power and flexibility of the cloud such that developers could build apps for a variety of platforms without the tight coupling between the development platform and the runtime platform.

With the cloud we could extract all of the platform dependencies from the IDE and turn them into a set of services, thereby removing any platform compatibility requirements between where developers write code and where the app runs.

In other words, for the first time Windows-based web developers would be able to build apps that could be distributed through the Apple App Store and Google Play and run on iOS and Android devices (not just mobile websites, but actual installable apps).

The concept of an ICE is about simplifying the infrastructure required to build an app by integrating cloud services into the developer workflow. This removes a huge set of local resources from the developer's concern, and enables the developer to perform tasks that may not be possible locally, such as compiling an iOS app while using a Windows PC.

 InfoQ: Can you tell us the purpose of Icenium Graphite, Icenium Mist and Icenium Ion?

Icenium Graphite provides a modern code-editing environment with statement completion, refactoring, code navigation and version control, making application development faster and easier. Integrated real-time code analysis detects potential errors in developers' code as they type enabling them to identify problems early on and get more done quickly.
Icenium Mist is a browser-based development environment that enables developers to create an app from almost anywhere using only a web browser. Icenium Mist delivers a lightweight editing experience featuring many of the capabilities found in Icenium Graphite, making it indispensable in situations where developers are not close to their desk.
Icenium Ion makes deploying and testing apps on any Apple iOS device a snap, by eliminating the need to provision them. Simply scan the project QR code and, in seconds, the app is installed and running inside Ion with on-demand LiveSync.

InfoQ: What difference can Icenium make in the development of applications?

Icenium is the industry's first, end-to-end Integrated Cloud Environment (ICE) that simplifies cross-platform development for Apple iOS and Google Android mobile platforms.

By combining the convenience of a local development environment with the power and flexibility of the cloud, Icenium enables developers to build hybrid mobile apps for multiple platforms.
Integrated support for Apache Cordova enables developers to build compelling applications that take advantage of the device capabilities, using nothing more than HTML5, CSS and JavaScript.

Developers can build apps faster with advanced development and debugging tools, realistic device simulation and the Icenium Cloud Services, making it possible to compile an application for multiple platforms, all from a single environment.

Icenium eliminates the complexity of getting bogged down managing multiple SDKs and development environments and instead enables developers to focus on their ideas. With Icenium, we have turned the tables and created a tool that focuses on developers - instead of a platform.

InfoQ: How easy it is to develop apps using Icenium?

If developers know HTML and JavaScript, then they already know how to build an Icenium application, and Icenium makes it easy to see the app in a simulator and deploy it to one or more devices. We're really thriled that Icenium is delivering on its promise of simplifying mobile cross platform development for developers.  Here’s what some early feedback from a few developers  on Twitter:

Martin N. ‏@AVGP:

@phonegap with @icenium works like a charm and is fun! I just wrote my first google calendar app for Android and iOS in 2 1/2 hours.

Mike Mullins ‏@THIMK:

Cloud-based #Icenium from #Telerik makes cross-platform mobile development orders of magnitude easier. I've been waiting for this for years.

Damian Brady ‏@damovisa:

Just had a play with @icenium. Really impressive stuff. Demo up and running on my iPad in almost no time.

InfoQ: Is it necessary to have access to tablet devices such as iPad to test the apps created using Icenium?

With Icenium developers can iterate quickly on their design with the integrated device simulator to see how the application looks and feels - without ever having to deploy to a physical device.

When and if a developer want to see their app running on a physical device, they can easily deploy their app, and using Icenium LiveSync, they can see changes made in real-time in the integrated device simulator and across all connected devices without having to recompile for every change on each device like all others will require.

InfoQ: Can I use Icenium in the development of ASP.NET MVC, Windows based and Windows Phone applications?

Currently Icenium supports Apple iOS and Google Android mobile platforms. For my views on supporting other platforms, see my article - What About Windows Phone?

InfoQ: What is the difference between Icenium and ASP.NET AJAX Controls?

Icenium is a complete development solution comprised of tools for coding, testing, debugging and deploying hybrid applications on iOS and Android platforms. ASP.NET AJAX Controls are a set of objects that can be used with ASP.NET when building highly responsive AJAX-based web applications.

InfoQ: Does Icenium reduce the overall development time?

Absolutely. Icenium increases developer productivity by reducing the amount of tools and SDKs that developers have to download, install and manage, and the number of development environments necessary to build applications across multiple platforms.

Using Icenium, a developer is able to get in, and stay in "the zone" while building an app. This provides momentum to the developer, which is critical. All developers rely on this momentum - they can all describe that feeling when they are in the zone and the code is free flowing from them.

Icenium was created to eliminate all of the uneccessary interuptions that a developer is faced with, such as managing multiple development tools, or manually deploying apps to devices, and enables the developer to stay in the zone and be as productive as possible.

InfoQ: Can you tell us what developers can expect from Icenium in 2013?

I've been pretty open about my interest in supporting Windows Phone 8 and Windows 8 Metro style apps as long as Microsoft can make them successful with consumers. I am very bullish on these platforms and expect to support them in the near future.

In fact, we've already began prototyping the compilers and LiveSync capabilities for these platforms. Additionally I have a true desire to find ways to integrate other Telerik products in the Icenium experience.

Across the company, we have many of the components for building a compelling cloud-based ALM solution for cross-platform development - including issue tracking, testing and deployment tools and more - as I believe developers will benefit from this integration.

As a cloud-based solution, the Icenium team is planning regular and frequent updates, and our users can expect new feature and capabilities regularly.


Rate this Article