CIC’s first Mobile World Congress is over and it’s been almost impossible to keep up with the stream of news that came out of this year’s event. According to the Fitbit that I picked up at the show between Monday and Wednesday I walked over 18 miles which should provide a sense of scale. Amongst the shiny new handsets, connected cars, wearables and hundreds of other announcements what where the themes for developers?
We are going to need standards
With all of the talk about cars and wearables and the Internet of Things there are underlying challenges once you get past the cool factor. Chief amongst these is the need for developers to make all of the “things” work together. The vision of cars that know who you are or that find available parking spaces in the town centre rely on systems inside and outside of the vehicle being able communicate with one another. Unless everyone wants to code into every proprietary system of which there will be thousands then standards are going to be essential for interoperability.
This year we got to see the MirrorLink standard pushed by the Car Connectivity Consortium implemented in various systems. This standard allows developers to create software that will talk with any vehicle supporting MirrorLink. This is how a driver will be able to get behind the wheel of a car and interact via their phone for example. The Open Mobile Alliance (OMA) is another body working to create standards across industries that includes not just cars but wearables and beyond. Their demo day at MWC showed off examples involving connectivity between the car and the outside world (unlike MirrorLink that focuses more on inside the car) and wearables with a Google Glass retail demo.
As we try and build a network of things such standards are going to be essential in enabling developers to quickly create software that will be interoperable. Developers should begin exploring and supporting these efforts. If only there were such standards being developed for touch gestures then perhaps I would not need a person to show me how to use many of the new “intuitive” handsets on display at MWC.
The SDKs are coming
To actually write code that interacts with many of the new devices and services emerging from MWC a developer will probably use an SDK. For example to build an app for Qualcomm’s watch requires an SDK utilised by the app that is installed on the connected handset. Samsung showed off a number of device features and Cloud services that require SDKs. The aforementioned MirrorLink is an SDK on a handset for example. With all of these SDKs developers will face a challenge.
In order to support as many of these capabilities as possible a developer could have to include a large number of SDKs into their app. In many cases these SDKs will not be used. For example if the app is installed on a device that is not Samsung then any of the functionality created for Samsung specific features will not be relevant and so neither will the SDK(s). This is going to create code and app file size bloat which only escalates the more devices and features a developer tries to support.
Until a solution is found or manufacturers start including more of the SDKs in their software which installed apps can detect a use then developers will need to consider this is in the design and management of their apps. This is not a problem at this moment now but if we want to avoid SDK hell then it’s something to think about when designing and building apps now.
Cloud is the new platform
The cloud has clearly become a supporting act for mobile rather than a standalone technology. This is emphasised by the number of cloud announcements at MWC. IBM and Huawei were talking cloud at MWC and companies such as Nokia and Samsung were showing off cloud based services for developers. Such has become the importance of mobile that these multi-billion dollar services have been reduced to bit players. For developers though times are good as the proliferation means more choice, downward pressure on prices and new useful services. An example of the latter being Samsung’s in the cloud device testing service which allows a developer to install their app and then manipulate an actual device in the cloud for free.
IBM’s Bluemix Platform as a Service includes a collection of open source services which IBM have grouped into typical use cases. Amongst which are mobile and Internet of Things. A recognition that developers are looking to use cloud to build Backend as a Service systems to support device apps. With the proliferation of devices and users increasingly owning more than one the manufacturers such as Samsung, Nokia and Huawei are acknowledging that developers need to provide apps that work across a user’s devices. To this end they are providing cloud services like Nokia’s “here” maps. They are also building out their own suits of apps for both business and consumer uses. A demonstration that the future is not about a device or even a platform (OS) but rather controlling the apps and services that run across devices and platforms.
Embedded Systems developers IoT needs you
The rise of the Internet of Things means an increase in M2M products and services and many of these are aimed at embedded systems folks. Whilst a lot of attention is on the cool devices that consumers buy (phones and tablets) the majority of IoT will be made up of very different types of machine. From Google’s recently acquired Nest thermostats to heavy machinery. SAP and SK Solutions showed off a system for construction cranes that prevents accidents and improves operating efficiency. The system is enabled by turning cranes into connected devices via embedded systems. Currently only 2% of machines are connected and so the growth potential for developers and manufacturers in this area is enormous.
There are challenges though such as the way in which the networks on which these devices communicate are organised. A car manufacturer may run a connection between their servers and vehicles. However that connection is dependent upon the network and like with our personal mobile phones if that car crosses borders then it becomes a roaming device and network costs suddenly increase dramatically. This makes the design and construction of connected systems more complicated and costly as they require SIM technology for each territory in which they operate.
Companies such as Device Cloud Networks are solving this problem by essentially creating a single multi-national network to which devices can connect and pay a flat rate charge. This removes a major barrier to entry for embedded device manufacturers and developers in becoming part of IoT. For developers in embedded systems it is time to start thinking about getting connected.
A few words on Nokia X
Android developers have a new platform and store to create apps for with the release of Nokia X. The platform runs the open source version of Android and many existing apps should run on it as they are. To make your app available on the X platform it should be submitted to the Nokia store for approval. This is a typical approval process that checks content, reliability and so on.
The only issue to be aware of is that many Google APIs will not work and should be replaced with Nokia ones. This is mainly to do with the way in which payments work with the Nokia store. Unlike Google Play the Nokia store allows users to make payments via their carrier. This is beneficial, especially in developing markets, and so is being promoted by Nokia as a benefit worth making a few tweaks to your app for. “Porting” an existing Android should be quick and easy and Nokia are providing some tools to help. The Nokia X showed popularity amongst developers with many Android developers keen to port their apps whilst at the show to the new Nokia store.
With so many Android stores and now store, manufacturer and device specific APIs in addition to the diversity if OS versions and variants Android developers need to think about how they design and manage their code bases. Tooling vendors should start to consider these scenarios and begin offering assistance.
Whilst we recently published a blog post on the difficulties that lay ahead for Windows Phone following the launch of Nokia’s X platform the story is different for Windows 8. There were numerous Windows 8 tablets around the show and not just from the OEMs. A number of stands were showing off products and services using Windows 8 or that are compatible with Windows 8. There were also some experiences created using Windows 8 Store Apps. Nokia X also shows how Microsoft’s apps and services are applicable regardless of the OS which will be crucial to their long term.
Final random thoughts
Whilst some of what was new at MWC will be in stores very soon a lot is still some way off. Car manufacturers have long production cycles and one should not expect to see too much of the connected car that quickly. Likewise many of the IoT demonstrations are proof of concept or some way off actually becoming reality. What MWC does is to show the vision and start to put in place some of the pieces so that developers can begin preparing themselves now of the challenges and possibilities ahead. Now is the time to start working with standards, thinking about app design, adopting cloud and investigating embedded technologies.
The event organisers GSMA should be proud of this year’s show and the big players such as Samsung, Nokia, Sony, Huawei, Ericsson and others turned out in spectacular fashion. The main Samsung stand alone was the size of most shows. However the event has become a monster and now overwhelms the host city. There are not enough hotel rooms within walking distance and this puts pressure on the already busy transportation systems. The result is that for many there are hours spent on buses and in taxes (which can also be expensive). Even official hotels are 20 to 40 Km away and in the main three days I spent almost 8 hours just “commuting” to and from the show.
And so to the salsa dancers, futuristic soccer players, 6 foot Androids and that stuffed black dog we will see you next year.