Until recently, the idea of mobility has been as noteworthy as a grey cloud on the horizon. It's there - and may bring rain in the future - but right now it's nothing to worry about. The outlook is now decidedly different for the development community; the distant cloud that has been lingering on the horizon is fast looking overhead. With larger screens, faster connections and ever more powerful devices, it's clear that the perfect mobility storm has been created. But before you dash for shelter, consider that this is one storm that should be embraced. This storm is a thing of beauty for those developers willing to put mobile first.
To date, however, there has been considerable apathy from the enterprise development community towards thinking in this way. Until recently mobile was only just beginning to prove itself as a dominant market force and PC sales were still booming. Clearly, this is no longer the case, and nor should it be a correct perception. Indeed, IDC has confirmed that we are entering the "post-PC" era, with some analysts predicting that tablet sales will surpass those of desktop PCs this year.
This information isn't exactly top secret, so why are developers still reluctant to think mobile first? Perhaps they need to reconsider the platform they're targeting. Is the focus going to be predominantly on servicing traditional Windows based laptops and UIs, or target what people are actually buying, such as mobiles and tablets?
Throughout the history of computing, there have been early adopters who have taken a calculated risk on new technologies. When that technology has become mainstream, these organisations have become the field leaders. It's this pattern that needs to be understood when creating a development strategy for businesses, large and small. For instance, those that got in the driving seat before laptops fully came to the fore have seen huge success compared with those that focused on their desktop offerings. This revolution is happening again.
The unfortunate consequence of this is that some development issues have arisen due to a lack of understanding of where businesses will be going. It's important to remember that business users are also consumers first and foremost. It may well be the case that IT departments are focusing on desktops right now, but the big dogs at the top are always going to push to have the latest cool gadget in their work armoury. From there, it's only a matter of time before entire organisations have adopted that tech.
As it is, the buying pattern of the day shows that we've reached a tipping point, with mobiles and tablets the dominant force. There are now more mobile devices being sold than laptops and desktops, coupled with an ever-accelerating decline in PC purchasing. It does still seem there's still work to do to convince developers though. The ecosystems are not well connected, with frequent complications between iOS, Android, Windows Phone and Blackberry. Even within the same system, such as Android, no two phones are the same.
This friction between the different ecosystems certainly needs to be diffused. A less platform-centric approach is required, and there are options available to make this happen. For instance, some development platforms offer the ability to write code and then port to many different ecosystems. This ability to 'write once, run anywhere' allows ISVs to target a much larger constituency than just one of BlackBerry, iOS, Android, Windows etc. That's the ideal, so why isn't it the norm?
Perhaps this can be attributed to the usual arguments on developing HTML5 versus native apps. HTML5 is more flexible, offering write once, run anywhere. On the other hand, native development offers far more mature tooling, such as debugging. This is where you need to think 'mobile first' when making the decision on where to develop. Native should always win out.
The case for mobile is ever-strengthening, with new technologies and products being announced on a near weekly basis. Take for instance the raft of wearable technology such as the much-publicised Google Glass. Success on these platforms simply won't be possible with an HTML5 offering. Users will only be interested in a fully functional native offering, not a shoe horned HTML5 port.
I was recently asked whether, in a year's time, SMBs will be able to do things that they can't today. I replied that maybe within 12 months we'll see phones that can fold due to flexible displays, as well as a range of wearable tech. This is a real watershed moment but it will take time for the business benefits of this technology to be fully understood. While there will be even easier access to all parts of a business in real time, how that connects to SMBs and improves business efficiency is another matter. As ever, these advantages are likely to derive from obvious benefits in the consumer market.
The future is likely to see an ever increasing variety of innovative business apps. There are just so many more opportunities now for young, driven developers, and this is mainly down to Platform-as-a-Service (PaaS). With the advent of PaaS, there is no upfront cost, which immediately lowers barriers to entry. It then follows that you get a much broader set of people working on ideas - people from a variety of backgrounds, with different skills and a whole range of different ages. The story of 12 year-old developer, and occasional TED speaker, Thomas Suarez is a fantastic example of a young developer who would never come to prominence had industry accessibility remained so cost-restrictive.
It's this combination of a low barrier to entry, larger and sharper displays and 4G connectivity that is creating the opportunities for widespread business use. One thing that's for sure is the elements are coming together. The winds of change are gathering pace, and the mobility perfect storm is overhead. But are developers going to heed the forecast?