Don’t Drink The KoolAid – Forget Developing Mobile Apps

by David Kaplan 11 Oct ’11

I’ve been reluctant to jump onto the smartphone and tablet app bandwagon. After 30 years or so working with computers and 15 years of that as a professional web design and developer, I’ve learned to trust my instincts when it comes to IT. For a number of years, something had been telling me that the app market wasn’t worth getting involved with. And, up to now, I was relatively content with being relegated by some to the era of dinosaurs because, frankly, I usually only point my technological curiousity in the direction of things that interest me. And, while I do own a smart phone with numerous apps that go beyond texting and talking on the phone, most of the time I use said apps while waiting in line (reading the news) or driving (Google Maps GPS Navigation). I don’t spend much time playing video games on my phone (I prefer the full, surround sound, high end graphics experience, thanks) and I don’t find farting apps to be particularly entertaining.

Separating Fad from Fact

So, I’ve spent the better part of the last few years improving my skills in front and back end development and learning new ways to enhance UI and UX designs. My reluctance to enter the mobile app market has concerned me, however. In college, I once had someone claim that the internet was just a “fad”. Obviously, I didn’t agree with that assessment and I’m glad I didn’t. But, in respect to my resistance to developing mobile apps I’ve been asking myself, “Am I now the close minded one? Am I relating mobile apps to ‘fad’ status because of some intellectual laziness? Am I just getting old?” Well, while I am getting old and while I’m occasionally prone to laziness, it appears that my instincts are correct to some degree.

The world’s largest software company – Microsoft – has officially endorsed cloud storage and computing as the next wave in software and application development. Apple previously moved in that direction with iCloud. But, Apple only holds a 5% market share on applications. Microsoft hold significantly more than that. And, with the release of Windows 8, cloud based mobile application usage is about to get a big boost.

Let me be clear, I don’t think that mobile devices are a fad. Quite the contrary. I feel that mobile devices free people to do more while on the go and all this in lightweight multi-function packages. Even laptops need a place to sit to be useful. But, the applications themselves need not exist. They present a fundamental problem. In order to properly create a mobile app, one needs to learn two languages to be minimally effective – Objective-C for iOS and/or Java for Android and Blackberry. Learning a new language is within the domain of most programmers, however, so is choosing wisely which languages to learn. Often we are left with the notion that we must learn whatever our clients are demanding right now. However, not every client is sophisticated enough to understand the evolution of technology and, in either case, spending time learning what will help someone’s career in the short term rather than investing time in learning for the long term is folly, at best. Anyone remember VRML? I do. I learned it. That knowledge doesn’t much help me or my clients now.

The Big 360

It appears that the IT world is doing a giant 360 degree turn when it comes to applications. In the good ol’ days of computing, mini and mainframe computers were all the rage. Applications resided on a large computer warehoused somewhere remotely and the applications were accessed via a dummy terminal. Sound familiar? There are plenty of advantages to cloud based applications. As a developer, the main advantage to me is simple – it’s platform agnostic. Cloud apps use server languages that are already ubiquitous like .Net and PHP. And for the front-end, one can implement a robust app using nothing more than HTML and JavaScript. Any developer worth his salt already knows at least three of these four languages. And, it doesn’t matter which language you choose. Anything you develop will still work regardless of the platform.

Another important advantage of cloud based applications is security. Yes, security. Downloaded applications can be directly hacked and reverse compiled. The server side programming of a web page cannot. Web pages also can’t transmit viruses without some human interaction. Mobile apps containing viruses simply need to be installed.

The Bottom Line

There’s also the business profit side of the equation. Mobile apps can be easily copied and distributed by any software pirate with a modicum of knowledge. It would take a lot more effort to pirate the functional back end of a web application and, even if you did, you would still need to bypass the secure account servers in which the applications reside in order to make the code useful.

There are significant disadvantages to consumers, as well. But, as I was writing this I came across an article just published by Frog creative director Scott Jensen in .net Magazine called “Mobile apps must die!”. I covers the consumer concerns of mobiles apps and why they pose a large problem. I highly recommend.

As with all things, technology continues to evolve. If you are a mobile application developer right now, kudos to you. But, going forward, I recommend investing some time in learning cloud based application development and developing a method to efficiently create software usable across a spectrum of devices. Your clients (and their budget) will thank you.

-David Kaplan

Comments
  1. webwizart says:

    I agree, reading the “Apps must die article”, we going to get much more form factors what about them.
    Are we going back in time, and make adjustments for every browser on every platform. I don’t think so.

    Installing native apps is like installing software on your pc, we don’t do that anymore for everything. I don’t think everything should be in the cloud there will still be local software on my computer. I still want to have a FTP client or virtual machine.

Leave A Comment