text post 5/10/2011

‘Apps’, Your Time is Running Out

I’m going to be straight and just say it: “Apps”… your time is limited. All desktop and mobile apps are ticking time bombs, because eventually people are going to stop using them and web apps are going to take over completely.

Before I start in here, let me make a confession: as a web designer/developer, I am certainly biased. But I think my arguments hold a lot of weight, and if there are any desktop app developers that would like to weigh in on the other side, by all means tear me apart via the comments section.

Let’s do this list-style. Starting with benefits of web apps, then I’ll discuss a few of the fine points.

1. Regular apps require download and install, web apps don’t.

Nobody likes to download and install things, when you can just have them instantly (like web apps). In addition, many people are highly suspicious of downloading and installing programs, as they pose a threat for malicious software, which I will discuss later.

2. Regular apps can be pirated, web apps can’t.

This is just a benefit to developers, really. But let’s be honest here, developers are half of the deal - without them we wouldn’t have apps. All developers feel the pain of pirating, and it’s quite literally impossible to write an app that can’t be pirated. Even dongle-activated apps are being pirated these days. Most developers have just given up, but if there’s an opportunity for a 0% piracy rate, this would certainly boost revenue, healthily.

3. Regular apps store your information in one place, web apps everywhere.

When I boot up photoshop on my computer, it’s perfect. All the keyboard shortcuts have been customized the way I like them, I have my whole brush library available, layer styles saved, etc. But on any other computer it’s just a little more clumsy. And when I have to print a paper for class, when I’m printing from my computer its just Command-P. From any other computer I have to email it to myself, re-download it, open it, then print it. When you log in to your web app, everything is the same everywhere, no matter what. I know some apps are taking advantage of internet connections to try to sync data, but let’s be honest, this is just an extra step to emulate what’s implicit in a web app.

4. Regular apps can be dangerous, web apps can’t.

Ok, I do realize that an absolute master hacker or a gigantic computer security company (like in the post below) may be able to find incredibly obscure browser sandbox exploits. But for the most part, web apps are isolated from your computer, and cannot harm it, even if they want to. The browser sandbox is something that is worked on very hard by browser developers, and it’s very rare that any website will be able to escape and execute malicious code on your computer. With a downloaded app, it’s incredibly easy (“hey, just download this little .sh file and run it [rm -rf ~/] - fun times!”).

——————————

So ok Jeff, my hypothetical adversary might say, that’s a nice little list of benefits, but what about this disadvantages? I know there’s a few things that my desktop apps can do that your silly little web apps can’t. Take this list!

1. Web apps are slower than desktop apps

Ok, you’re right at the moment. This is intrinsically the case, because the data needs to move over a network connection. But I would argue that internet connections are getting faster, devs are getting better at coding, and within a few years our internet will be so fast that it barely matters. Have you ever complained about how slow facebook was? How about twitter? How about that web app that you use to convert youtube videos to mp3s?

“Yeah, but those are simple tasks,” quips my adversary, “what about something like photoshop?”

I will respond to this with one line: http://www.aviary.com. It’s not going to be long before there’s no task that a web app can’t do, quickly.

2. You can only use web apps when you have an internet connection

Ah, but not for a smart web dev. I’m sure that by this point you have heard of gmail offline mode, which uses the wonderful new gears technology to provide offline access. This, in combination with html5’s local storage capabilities put this complaint to rest for good.

3. There are some features of desktop apps that I like, such as desktop notifications through growl and accessing them through my dock. You can’t do that with a browser!

Yep, you can. Google is currently testing desktop notifications from within gmail when running Chrome. Fluid App can put websites in your dock on a laptop. On mobile devices, you can go as far as specifying a startup image and icon for your web app, so it functions almost exactly like a native mobile app. The lines are being blurred more and more between desktop and web apps in terms of pure functionality and interaction in a desktop environment.

——————————

So do I have anyone convinced? What I’m saying here is drop your objective C books and pick up a CSS, javascript, and ruby/rails book, because that’s where the future is at. Just because mobile apps are all the rage now doesn’t mean they will be in a few years. If you disagree, please argue against me!

P.S. I’ve got google on my side now! Buahaha