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.
Is anyone really developing applications for phones besides games?
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.
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?
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.
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?
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.
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?
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.
Then what about the device platforms? What are the key differences between the Series 40, 60, and 80 Platforms?
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.