I’ve started to see a trend in the ever changing world of Mobile development. In a lot of ways, it looks like the wild west days of the early .com era (Yes, that dates me.) I believe that the solutions will mature and in 3-4 years the solutions will consolidate and mobile phone and tablets will just become another channel. In 5-6 years we may even become good at managing the multiple channels.
I think that from a portal standpoint, all the portal solutions can change their themes to match a mobile or tablet form factor. However, while that’s a great start, it doesn’t solve the problem. You still need to develop sites, portlets, and even individual iPhone, Android, iPad, and other apps. That means that the tooling becomes important. If the tooling becomes more important, then the big vendors need to solidify their strategies.
I’m not writing a book here so to be concise, you need to define how you will deliver mobile functionality. Your choices, while they seem complex really boil down to to simple decisions and then branch out from there. I should note that before you begin, you should think through best practices since mobile apps are not just smaller versions of your site. See the Whitepaper, “Best Practices in Mobile Web Design” by DeeDee DeMulling and Jonathan Distad for a good start.
- Create a web based application with a mobile form factor
- Create a specific app for a specific device
Web Based App
If you are creating a web based app then you want to find the right tooling. All the vendors give you options to do this. I’ll discuss that a little later. If you are smart, you’ll also try to leverage a portal you already have so you can re-use login, personalization, and other services. That’s better than re-building from scratch and making a site management nightmare.
Build Apps on Specific Devices
Here is where it gets fun. What device will you build an app for? You have a lot of apps you can build. Trying to build the same app on each device over and over again quickly becomes an expensive option. If you are a consumer oriented company and you think you can sell the app then more power to you. If you aren’t selling to consumers but providing a mobile service for employees, customers, partners, etc; then more than likely you will have to bear the expense of multiple apps.
What are my options?
Luckily, there seem to be options. All the vendors give you tooling to create mobile apps. (e.g. fit the form factor). Some of these vendors are working on a write once, export to multiple platforms strategy. That seems very interesting. Here’s what I’m seeing right now.
Apple, Google, and other provide their own tooling
I won’t go into much detail but if you want to build an app for a specific platform, then you can easily download their toolkits and get going. That’s what Apple wants you to do and most likely, using those toolkits will give you the most solid and in Apple’s case, the most easily approved apps.
Pyxis Mobile started the trend of build once work everywhere solution to apps on a platform. Some people in our local offices have started to look at this offering and I have to admit, from what they tell me, the message itself seems pretty compelling.
Microsoft has a set of tools. Most of what I see is built around getting you to develop Windows Phone or Windows Mobile apps. See their site for this example. Richard Taylor is experimenting with some of that and promises to blog on it. I’ll update the post when he does.
IBM has their Portlet Factory development tool. They have already started to branch out so that it can be used for more than portlet development. You can now create widgets. Last week at Lotusphere they touted that the tool will allow you to build web apps in the right form factor with it and they hinted that you will be able to export your code as iphone, iPad, Android, and other applications. I like where it’s going. I’m interested to see how it works out. Here are some articles that may be worth reviewing
Chris Debracey pointed me to an article on Oracle’s site about ADF Mobile Development. I may have made him lose a few hours since I’m pretty sure he now feels compelled to download and play with it. They also are following the track of letting you create mobile web applications AND of letting you create, “on device client applications” Again, it looks very interesting. I also have to hand it to Oracle that they seem to have a fair amount of information packed into their overview pages.
Everyone knows you can create flex apps fairly easily with their tooling. What many do not know is that part of the spat between Adobe and Apple over flash/flex was over whether Adobe could export a flex app as a native iPhone app and skip the use of Apple’s development toolkit. Adobe seems to have lost the support of flash natively but Apple did back off and now allows those apps. So again, they are following the create for web with native flash/flex and the create a native app approach.
So you have lot of options right now. Like I said previously, those options will only mature as the mobile onslaught continues. I’m betting that small companies with cool solutions will be bought by the big boys. I’m betting that eventually, the platform vendors will be comfortable with different tools being used to develop to their phones and tablets although it will take longer for it to happen. Given what we’ve seen with other new technologies, my prognostication isn’t all that revolutionary.