Mobile devices are evil: Unexpected challenges in a mobile world
Christian Karasiewicz 270005XS4E Comments (5) Visits (3806)
When I first started working with mobile devices, I made the mistake of thinking of them as very small computers. I mean, they have memory and a processor, and they run software—which sure sounds like a computer. But, as we learned from the movie Monty Python and the Holy Grail, very small rocks don’t float. Likewise, these very small devices aren’t really computers. They are the instruments of evil.
Network? Not work!
One thing I’ve been working on is finding a way to access mobile devices remotely, to make it easier to test mobile apps on a variety of devices. It would be nice if every tester didn’t need four tablets and six phones on his or her desk, and if we could put them in a secured lab instead. This would also cut down on the mess of USB cables I try to strangle myself with a few times a week. Unfortunately, mobile devices use wireless, which is less than ideal for computers that need to be permanently available. A wired connection is a lot more reliable, but last I checked phones typically don’t come with an Ethernet port! Granted, you can purchase a micro USB-to-Ethernet adapter for a reasonable price these days, but now how do you charge the battery? And this is why mobile devices are evil. How many computers make you choose between network and power?
Portability or poor ability?
The second reason mobile devices are evil is portability.
Many people assume that creating cross-platform apps is no more
complicated than swapping out the nozzles on a bicycle pump. It’s not.
HTML has been around for more than twenty years, and we still can’t get
websites to render consistently in Chrome, Firefox, Internet Explorer
and Safari. For mobile, we’re dealing with multiple hardware platforms,
different operating systems (OS), manu
Level with me
The third reason mobile devices are evil is the lack of control over software versions, especially at the OS level. This is a much bigger problem for Android than it is for iOS, but the issue affects both. For consumers, the OS level is rarely a consideration, especially given the short life span of a mobile device. But for business and industrial applications, this can be a real problem. Many companies are slowly replacing dedicated devices for capturing signatures, diagnosing alarm systems and checking cable connections with tablets. Tablets are significantly cheaper and far more versatile, but they are not as stable. An upgrade to the OS or an app could cripple a critical function, and that gets expensive really quickly. A five-year-old deprived of Angry Birds can ruin your weekend, but imagine what would happen if you had 1,200 telephone installers idling for a day while the IT department rolled back an update. Of course, this problem isn’t unique to mobile devices. Computers running UNIX, Windows, z/OS and so on have similar exposures. But they don’t force you to replace the entire OS at once, with mass updates to drivers and system applications. Another complication is that the market for such specific applications is quite small, which means developers cannot afford to test them on every platform and OS version.
Fighting over the remote
The final reason mobile devices are the domain of He Who Must Not Be Named is the lack of remote access. Telnet, VNC, Remote Desktop, just about every platform has at least half a dozen ways to avoid having to physically touch the machine in order to use it. But not so with these wretched devices, at least not without rooting or jailbreaking them. Despite all the advances we’ve made through the Internet, cloud computing, broadband and virtual private networks, we’re right back in the Dark Ages with these shiny boxes of misery.
And that brings us to what’s perhaps the most insidious aspect of mobile devices. We’re so busy trying to solve Bring Your Own Device (BYOD) and securing enterprise data that we often forget the basics. The current mobile architecture and software delivery model works great for consumers but is not very friendly for creating business software. It’s time we exorcised these demons!
These are some of my frustrations with mobile devices. What unexpected mobile challenges have you encountered? Leave a comment or contact me on Twitter @baspluim.
Watch video: http
Bas Pluim is an architect for the Development Support Team, which provides cloud computing services to development and test teams. His focus is on mobile solutions using IBM Worklight. Bas is also a member of the IT Specialist certification board, and helps maintain the ITS Wiki. Follow Bas on Twitter at @baspluim.
Bas is an IBM Redbooks thought leader