The spotlight for mobile applications has largely been shined on emerging ideas: new apps to entertain consumers, make them more productive, or save them money or time, or simply to find goods and services. This year, away from the spotlight, more traditional corporations have extended their brands, products and services through mobile channels, both outward toward customers, or internally to employees.
You'd be hard-pressed to find a company not examining its mobile strategy, but because there's not venture capital swirling around these self-funded efforts perhaps it's not as eye-catching. A banking app that lets customers manage their money is a yawner, while apps that let you broadcast your newest vanity purchase or "checks you in" for a movie draws the swooning crowd. And yet there's probably more revenue and profit flowing through corporate mobile applications than through all of the startup mobile apps combined.
Absent external investment capital, these companies truly are self-funding these efforts, and because of that, they have to make difficult choices about which mobile platforms to support, if they can budget to create them at all. If it's an internal app, that's relatively easy because the corporation knows what platform its user base has; in many cases, that dictates that solution. But if it's an external, customer-facing application, the company faces the same difficult choices the trendy startups do.
Typically, then, that means supporting the iPhone and Android, with some gut-wrenching decisions about BlackBerry, Windows Mobile (and Windows Phone 7), Symbian (especially for more internationally focused companies) and even Palm's WebOS, Nokia and Intel's MeeGo and Samsung's Bada. There are more, yes, and for now, let's also set aside the tablets, but that's next; also, web-based mobile apps are also starting to explode, but there are trade-offs here . . . that's fodder for an entirely different post.
There are many write-once, run-many development tools out there. These promise a simple development environment with, essentially, compilers for all of the major platforms. Makers of these tools declare that at least 80 percent of mobile applications written today are generic enough -- from a development point of view -- that they don't need access to lower-level device functions, like low-level audio control, access to device GPS, accelerometers, touch UIs, and so on, although some of these tools do provide that level of access, and many of these functions, like accelerometers, operate the same across platforms. Particle Code lets developers write apps in ActionScript, Java or C#, but using each platform's SDK, and translates that code for the native platform. Here, you get the advantage of writing in common and powerful languages and the end product of native source code.
But let's make some assertions about many enterprise applications, some of which may also be true about fun little productivity apps: often these enterprise apps are extending an existing function or service to a new platform (mobile); and they almost always require some form of connection back to existing server-based resources, like databases at the very least, or application functionality at the most; while some of these transactions can happen offline just as with non-mobile apps (for example, by caching some data locally), many of them require a connection at some point, even in some cases, persistent, reliable, secure connections -- you know, enterprise-class, network-based functionality.
Antenna Software's AMP 3 is a heavy-duty mobile application platform. Sure, its designer (AMP Studio) lets you build some mobile apps, but it does so with the understanding that you're using the full platform as the middleware (specifically, this is the AMP Gateway Server; AMP Integration Framework includes integration adapters for a variety of host systems), connecting to what you've already got running in your data center, and managing the workflow, data, users, device and policy. Sure it supports Android, the iPhone, BlackBerry and Windows Mobile, but it also supports Oracle applications, SAP, a variety of standard data sources, and really anything that uses standard web services on the back end.