Standardization has been a moving target in the world of mobile platforms. Unlike PCs and the web, where platform standards have been whittled down to a select few, mobile developers are facing the opposite problem. The number of operating systems and runtime environments continue to proliferate as new players enter an already overcrowded field and more devices ship from carriers at an exponential rate. What this means is an even more fragmented mobile ecosystem and all the development challenges that go with that. While many hoped that an operating standard for mobile applications and content would arise, it is becoming more evident that this will not happen anytime soon, at least not at the operating system, run time environment or device level.
So the question remains: how can the mobile content industry scale its deployment efforts in a way that is economically beneficial to everyone in the mobile value chain? Without a solution in place, the mobile platform at large will continue to lag in innovation behind the more traditional Internet world. For example, services like eBay, Google, Facebook, YouTube and Digg all emerged on the Internet, not the mobile platform, and had tremendous success at providing totally new and widely enjoyed end-user experiences. The lack of standards (especially for Web 2.0 applications, which by definition require a common set of communications capabilities) will continue to keep mobile as a secondary consideration for true innovators.
It is becoming increasingly apparent that a possible solution to the standardization challenge is the development platform. While this is not the typical route followed on past digital platforms, such as the PC or gaming consoles, where operating environments are few, the mobile development platform represents a potential "common ground" that can be leveraged for scalability and efficiency.
A fragmented landscape
The fragmentation issue is certainly nothing new in mobile handset circles. The growth, scope and size of the market - now at 3 billion plus mobile phone users globally, with over 10,000 carrier device types and counting - has always offered a rich breeding ground for new devices and applications. At the same time, because of the lucrative and competitive nature of this rapidly expanding market, handset manufacturers and operators have been driven to maintain market share by offering proprietary devices and applications that speak to their respective brands and/or markets. What all this means is developers are facing a new industry tipping point that will push the boundaries of scalability and adaptability further and more quickly than ever before.
To see a solution to the problem, one's obvious tendency is to look to the past to predict the future. Logic would dictate that the operating system or runtime environment would be the perfect grounds for standardization. After all, it worked in the PC world with Microsoft creating a standard early on in the game, which the industry then rallied around. Gaming consoles did start out with competing operating systems, but the numbers are limited enough that porting and adaptation has never been a particularly overwhelming challenge for developers.
The mobile ecosystem however is populated with a plethora of operating systems and runtime environments, with the two largest being Java ME (Java Mobile Edition) and BREW (Binary Runtime Environment for Wireless) globally. As a result, mobile content developers must now deal with the subtle variations in implementation of these OS and runtimes multiplied across the many thousands of mobile phones worldwide. Complexity can therefore increase 30-40 times over traditional OS and PC environments. This is not going to change - and will in fact get worse.
Why is that? Mobile operators play in a fiercely competitive environment where change is rapid and customer loyalty is the key to profitability. They offer consumers new devices on literally a monthly basis that feature new capabilities and improved functionality to differentiate themselves from their rivals. Additionally, the handset vendors are constantly adding new features and capabilities, but implementing them in slightly different ways. This desire to compete and innovate results in more devices, each slightly different from past models and other models. Now, each of them needs a slightly altered version of an existing application, so that that application will run on it properly.
Developing the right approach
So if we start with the premise that what happened in the PC world will not happen in the mobile world in the near to medium term, and that fragmentation is an unavoidable reality, how does a developer scale mobile applications in a way that is economically feasible?
The answer is, we look to the one common layer of functionality that crosses all devices - the development platform. This will serve as the closest to a standardization function as possible in the mobile ecosystem and will allow developers to build their applications as few times as possible to ensure they can achieve widespread distribution.
While viewing the development platform as a standard represents an entirely new way of thinking for developers, it does provide a way that helps them deal with the complexity of deploying their applications to thousands of devices. This approach entails much more than simple porting, which for the most part is considered an afterthought in the development process. Rather, the premise of standardizing at the development level is that porting can be the objective from the outset.
Here's how it works. The development platform integrates a comprehensive knowledge base that includes information on tens of thousands of applications, mobile device specifications, carrier requirements and other data. Not only does it profile the carrier and handset requirements but also contains information about unique implementations of various Java specs called JSRs. As code is created to solve each problem, it is then encapsulated in the knowledge base so it can be shared amongst the development team and used when contextually relevant. With estimates that mobile developers sometimes spend upwards of 50% of their time working on code and problems that have already been resolved elsewhere in their organizations, this is an extremely powerful concept. Developers for their part can write as little code as possible to optimize the performance on each device while maximizing deployment to different devices, markets and users.
A development platform that grows its knowledge of unique device and carrier characteristics and stores frequently used code for future development projects becomes even more valuable to its users over time This approach is extremely effective in helping publishers and application developers plan, execute, control and deploy applications to multiple mobile devices within shorter time frames. By combining intelligent "code re-use" techniques, and tools that can automate repetitive tasks, much can to be done to alleviate the fragmentation problem.
It is also timely, given the potential explosion of social networking applications making their way to mobile handsets, such as MySpace, Facebook and YouTube, among others. This new wave of capabilities will dramatically change the dynamics of the mobile industry as we know it.
The only way for developers to mitigate the increasing problem of a fragmented mobile platform is to get as close to a scalable, sustainable development model as possible. So standardization on the mobile platform will happen, it just may not look like anything we've seen before in the PC, Web and gaming console environments.
[Tony de la Lama is senior vice president of product management and marketing at Tira Wireless. He brings over 18 years of software development experience to his role, where he is responsible for product strategy, go-to-market initiatives, marketing and the overall business success of the company's product and service offerings.
Most recently, Tony held the position of VP and Unit Executive for Integration products at BEA Systems; which included leading the engineering and product management efforts, coordinating marketing and sales activities, and was responsible for the overall business success of BEA's WebLogic Integration and award winning AquaLogic Service Bus products.
Prior to joining BEA, Tony held successive VP/GM positions at Borland Software Corp, leading all aspects of the Java business, which included JBuilder, OptimizeIt and Borland's Enterprise Studio. Under Tony's leadership, JBuilder grew from its first release in 1997 to a $100M business in 2002 and became the undisputed leader in Java development. In 2003, Tony was tasked with leading the new Together Business Unit, created from the acquisition of TogetherSoft Corporation. During this time he helped drive new product strategies and released highly acclaimed modeling solutions for the Eclipse and Microsoft platforms.]