Mobile Development: Why Should I Care? A Q&A with Nokia

Monday Apr 25th 2005 by Bradley L. Jones
Share:

Developer.com has a candid conversation with Srikanth Raju, Senior Technology Manager at Nokia, on why developers should care about developing for mobile devices. Get the candid information on why you should be considering the mobile platform and what Nokia recommends for you to do to get started.

If you've followed some of my writings, you will know that I evangelize that developers should be helping to move business logic away from an application's interface. This becomes even more important as the number of platforms continues to grow, and as the effort to tap into these platforms continues to ease.

While developers could target a number of different devices (and thus platforms) ranging from televisions (with the TiVo SDK recently released), watches (such as Microsoft's SmartWatch platform or the Palm OS), PDAs, desktops, and more, there is one device that should not be overlooked. With 1.2 billion (1,200,000,000) devices already out there, the cell phone has become the most widely distributed platform — a platform that can be targeted by applications.

One of the leaders in making mobile development possible is Nokia. We took the time to ask some of the questions we thought might be of interest to you as an existing developer or someone that works with developers. We asked Srikanth some candid, to-the-point questions.

Bradley Jones for Developer.com (Dev):

First, let me say that we would like to thank you for taking the time to talk with us here at Developer.com.

Having said that, let's jump right in! Why should a developer or someone working with developers take the time to read a bunch of comments from Nokia? Why should they care about developing for telephones?

Srikanth Raju for Nokia (Nokia):

Hi Brad. Thanks for the opportunity to discuss one of my passions. Nokia has been working for years to create the reason your readers should care about developing for those mobile computers that look and perform like telephones. The mobile devices Nokia sells today combine ubiquity, connectivity, and computing power to deliver a great and growing opportunity for developers. There's a famous study done years ago, I forget by whom, that asked people what three things were important enough to return home for if forgotten. The three items were car keys, wallets, and cell phones. Today, that cell phone might be programmable in multiple languages, offer an address space of a hundred megabytes or more, and crank with a processor speed north of 100 MHz. It holds the user's calendar, contacts list, and can open up an IP pipe to any URL on the planet. This is a seriously cool time to be a mobile developer.

Dev:

Is anyone really developing applications for phones besides games?

Nokia:

Yes, but first let me talk a bit about those games, because they play an important role in opening up the opportunity for developers of all kinds. Games have played a key role in making it profitable for companies to establish all the pieces necessary for a mobile software market to emerge. They fund distribution channels like Preminet Solution and the infrastructure on which they rely. They have provided the incentive for many contract programmers to develop the skills unique to the mobile market. They introduce consumers to the idea that their mobile phone might do something more than complete phone calls, and they train consumers to be proficient with the UI elements of their phones. Best of all, they get consumers in the habit of downloading, and paying for, third party software for their mobile devices. All that and they're fun, too. Oh, and profitable. Informa estimates a $3.6 billion market for wireless games next year, and IDC figures there will be over 70 million wireless gamers the year after next.

Dev:

OK, point taken. But are there custom applications being created to be resold — other than games, stock market quotes, and simple messaging applications? Is anyone really buying them?

Nokia:

Yes, people are buying custom applications in a variety of categories that take advantage of the power, ubiquity, and connectivity of the mobile platform. Navigation aids and guides like Time Out City Guides from Enpocket, Street Maps from Lumisoft Limited, and WayFinder EuroNavigator, are quite popular. Information services like WorldMate from MobiMate are big sellers. There's a screen in WorldMate that gives you the current time, temperature, and weather in four world cities of your choice, with weather updates captured over the air. I constantly communicate with friends and colleagues across the country and around the world, and having some idea what it's like outside their home or office is a great connection. There's a cool app from Psiloc Mobile Solutions out of Koszalin, Poland, called irRemote Control for Symbian OS, that sells for about $18. That app generated 2.4 million downloads between June 2003 and October 2004, 85% of which were made on Nokia Developer Platform devices. So, yes, people buy custom applications.

Security products are another growing market. SymantecTM Client Security for Nokia Communicator provides anti-virus and firewall protection, LiveUpdate Wireless, and remote security policy administration. Pointsec Data Protection provides users of Nokia Series 80 devices with strong encryption, policy administration, and remote help for forgotten PINs.

Dev:

Are custom enterprise applications being created for the mobile phone platform? If so what are some examples that illustrate the pros for developing enterprise applications for this platform over other more traditional devices such as PDAs and notebook computers?

Nokia:

There sure are. Nokia has a joint development plan with IBM to sell wireless solutions that enable greater workforce mobility. We've been working for several years with Oracle to develop mobile enterprise solutions, including joint development of open solutions for Oracle's Collaboration Suite, 9iAS Wireless, E-Business Suite, and compatibility between Nokia business devices and Oracle server platforms. We're collaborating with SAP on SAP® solutions for mobile business on Nokia's Series 80 platform.

The advantages of the mobile platform for the enterprise are the same as they are in the consumer market — ubiquity, connectivity, and power. Enterprise users don't always have their laptop computers with them, and in many circumstances don't have two hands and a lap available to use one anyway. PDAs without connectivity impose data latency and data normalization issues that are easily overcome with a device like a Series 60 smartphone or a Series 80 device.

Consider a basic sales force automation task, scheduling sales calls. A sales rep gets on a plane or in a car and travels for a couple of hours to the first appointment of the day. During the commute the customer called the office and changed something — the time, the place, the person, something. If the rep's schedule is on a notebook computer with a WiFi card, it's going to cost at least 20 minutes to boot up, connect, and update. If the rep's schedule is on a mobile phone, the update can be pushed to the phone as soon as it's turned on. That time savings alone can mean an extra sales call a day.

Dev:

OK, so there's a market for the apps, but how do developers build them? Why should developers work with Nokia's tools rather than sticking with Java or a Microsoft solution?

Nokia:

Because of the open platform approach, Brad, it's fortunately not an either/or choice for developers. They don't have to choose between the IDE they know and the market they want to pursue. If they.re comfortable and productive using Visual Studio, they can stick with it if they want. Key Nokia SDKs plug right in.

On the other hand, if they're looking for a development environment built for mobile, we think we've got some great offerings, and others agree. The editors of Software Development Magazine recently awarded CodeWarrior for Symbian OS 3.0 Professional their Jolt Productivity award in the Mobile Development Tools category.

Developers also have the choice of working with a variety of world-class IDEs into which Nokia SDKs plug, including IDEs from Borland and IBM.

Nokia also develops tools and SDKs which plug into the Eclipse framework. As you know, Eclipse is an open platform for tool integration supported by large community of tool providers, including IBM.

Dev:

Then what about the device platforms? What are the key differences between the Series 40, 60, and 80 Platforms?

Nokia:

Let's start with the key similarities. They're all built on open technologies wherever possible. All platforms support Java MIDP development and all support key Open Mobile Alliance (OMA) standards that existed at the time we developed the devices. A key standard we support is OMA Download, which means network operators can distribute applications over the air without using anybody's proprietary technology. That's not necessarily the case with competing platforms.

The key differences among Nokia platforms arise from the target markets into which they're sold. Let's keep it simple by just looking at the development environments supported on each platform.

Series 40 Platform supports Java MIDP development. It is the highest-volume platform in the Nokia portfolio.

Series 60 Platform supports Java MIDP, Series 60 C++, Python, and Flash. It is the highest-selling smartphone platform on the market.

Series 80 Platform supports Java MIDP, Java Personal Profile, and Symbian C++. It is the most powerful platform in the Nokia portfolio.

Dev:

What would an existing developer who knows a standard language such as Visual Basic, Java, or C++ need to learn in order to start building applications for mobile phones?

Nokia:

The most important thing for a new mobile developer to think about is the architecture of the applications, not the language in which they're written. Mobile applications by their nature need to access network connections to gain value from their mobile nature, but tolerate interruptions in that connection due to the nature of mobile networks. Nokia helps with standard interfaces including OMA DataSync and Web Services APIs.

Developers also need to consider the target devices, including form factor, resources, and a different UI paradigm than they're accustomed to in desktop development. Here's another area where Nokia is leading the way. Our platform approach to device development dramatically decreases the variation in capability and API availability with which a developer needs to cope.

The language aspect is relatively easy. Most experienced Java and C++ developers can continue to work in the development environment of their choice. Nokia SDKs plug into the most popular IDEs and embed all the classes and documentation into the installation. There are a few new idioms to learn, but the nature of the languages does not change. Those interested in a jumpstart can always attend one of the Nokia-designed intensive training sessions held around the world.

Dev:

How would these developers test their applications? Do they need a special phone?

Nokia:

Today's developers don't need a special phone. They test applications first in an emulator environment built into the Nokia SDKs. Nokia even provides an environment for testing multi-user interactions. Developers can simultaneously run multiple emulators and test message flow between instances of the application. When this testing is done they compile and build distribution files, then load their applications onto any supported phone for further testing. Even for on-device testing, it's a standard phone.

Dev:

Once a mobile application is created, how would you recommend a developer to distribute their applications within their own organization or to sell their application?

Nokia:

It depends on whether the application was developed for internal use or for commercial sale. Developers can distribute an internal application over the air by sending a link to a download site and having users download and install the app. They can also distribute the applications to a PC desktop and install the application in the mobile device using Nokia PC Suite. We've recently opened some PC-side APIs to PC Suite, so in the future companies will be able to automate these installations.

Selling applications of course involves some additional steps. Last fall, Nokia launched Preminet Solution, an open, customizable, end-to-end sales channel. We already have network operators selling content through the channel, and an extensive catalog of Java applications, Symbian applications, ringtones, graphics, and videos. All executable applications in Preminet are verified through the Java Verified. or Symbian Signed programs.

Dev:

According to Nokia, which is the better product — Coca-Cola or Pepsi?

Nokia:

That sounds like you're asking for vendor lock, Brad. Nokia believes in open systems, so we support both colas.

Dev:

Going back to the devices — are there any new features coming into mobile devices that will cause developers to take notice?

Nokia:

There are always improvements in speeds and feeds. More memory, more processing power, bigger displays, better battery life.

More to the point, notice the expansion of development alternatives. Nokia recently released a Python environment for Series 60 Platform and support for MacroMedia Flash. That means developers now have the choice of four environments for Series 60 Platform. All running on the same devices.

Developers, especially enterprise developers, should also consider peripherals. Many Nokia phones support Bluetooth, and we're working closely with H-P to support printers and projectors over that link. Lots of GPS devices now include a Bluetooth interface, as do some cars. Some Nokia mobile phones include RFID tag readers and Near Field Communication interfaces. This increasing support of peripheral interfaces means enterprise developers can write mobile applications that interact with the environment around the user. That's powerful stuff.

Dev:

One issue with using phones for applications is the drain on the battery. An application can drain the battery in a phone quickly. Are there things being done to help alleviate the power drain on mobile devices or to help make the device more adept at handling applications? We had heard that there were phones being created with multiple processors. A less powerful processor would be used most of the time to drive the device and the more powerful processor would only "kick in" when an application was ran. This would help alleviate battery drain. Are there other features such as this that will aid in supporting custom applications?

Nokia:

Battery life vs. weight and size is one of the ongoing challenges of mobile device design, and Nokia is constantly improving the consumer experience in this area. I can't talk about specific design strategies, but I should note that Symbian OS v9 gives us more flexibility in processor implementation than ever before.

Dev:

What other type of performance issues do developers need to take into account?

Nokia:

Perceived latency is a key criterion for mobile UI design. Packet latency over mobile networks is an order of magnitude greater than over the wired Internet, and mobile bandwidth is growing but still limited. It's critical that users see immediate acknowledgement of their action, even if it takes some time to complete their request. So, for example, immediately acknowledge when a user presses the "download now" key, then continuously update a progress bar until complete or even push the download completely into the background and let the user move on to other tasks.

Dev:

What about security? Does Nokia provide developers with any assistance there?

Nokia:

Nokia provides security features for a variety of development needs. Java provides a sandbox execution model that is inherently more secure than a typical C++ environment. The MIDP 2.0 environment expands on MIDP 1.0 security by adding a trust model, supported by application signing, and thereby opening up some sensitive functions including access to the user's calendar and contacts list. Symbian OS v9 (the foundation of the Series 60 Platform 3rd Edition) includes an enhanced security model. We embed support for HTTPS connections, VPN clients, and crypto libraries in many of our devices. And because we're an open platform, developers can buy additional security capabilities from other developers and are free to develop some themselves. I mentioned a little bit earlier offerings from Symantec and Pointsec.

Dev:

Why should developers develop on Nokia instead of competing platforms?

Nokia:

Our open platform approach offers the biggest opportunity in the mobile market and minimizes the barriers to enter the market. We've shipped more than 180 million Developer Platform devices. Exceeded 20 million Series 60 Devices in the field, sold by the majority of the network operators worldwide. Our devices account for a big chunk of the 15 million mobile Java downloads per month in 2004. The open approach leverages existing developer skills, since we support standard languages including Java, C++, Python, and Flash. And we've got a sales channel that can get your commercial applications to market.


Srikanth Raju is Senior Technology Manager and Head of Technical Services and Consultancy, Americas Region, Forum Nokia. In this capacity, Srikanth leads a team of Nokia technology experts tasked with helping software developers and partners to develop and deploy solutions on Nokia mobile platforms.

Prior to joining Nokia, Srikanth was Staff Engineer and Principal Java Wireless Technology Evangelist at Sun Microsystems. He was previously Lead Software Engineer at Oracle Corporation, prior to which he held several executive management positions related to software development at Borland International.

A recognized authority on Java, Srikanth is also the owner of a patent-pending invention using the J2ME and JavaCard Technologies and is a Sun Certified Programmer for Java 2 Platform.

# # #

Share:
Home
Mobile Site | Full Site
Copyright 2017 © QuinStreet Inc. All Rights Reserved