Web App...It Isn't A Dirty Word

Now we've gone and done it. We've released our mobile app and it isn't in any of the "App Stores". We hope you'll shrug it off and realize we wouldn't have made this decision if we thought it was anything other than the best option for our customers. But maybe a piece of you is wondering why we aren't sending you to the Apple App Store or Google Play to download the app. That is a valid question and I'm going to do my best in this post to give you all the details of what we did and why. Hang on tight, this might get into some technical details, but I'm going to try and keep it as understandable as possible.

Steve Wanted It This Way

When the iPhone first launched in 2007, the App Store didn't exist. Steve Jobs, and Apple, had envisioned the concept of Web Apps. These Web Apps, specifically the use of HTML 5, would be the future of application development. Unfortunately, the technology wasn't there yet. HTML5 and CSS3 (two important parts of our app), were still in their infancy. Many developers were still trying to figure out how to support all the versions of Internet Explorer, rather than learn HTML5 & CCS3. As a result of the lackluster development of Web Apps and a call from many to have the same ability Apple had to make nice, clean and smooth running applications, Apple released their App Store in 2008.

Let's all assume that Apple knew the App Store would be a cash cow, topping 10B in sales in 2013. Their marketing machine has been hard at work making sure the millions of iPhone users continue to download apps from the App Store. Their development team has been helping too. Updates and enhancements to the, still supported and available, Web Apps have slowed, forcing developers to create native iPhone applications to have access to native only device features. The Google Play store launched in 2009 with Google hoping for the same boon that Apple got from their app store, thus putting in place similar limits and restrictions.

But we submit that the technology is now capable to provide a nice, clean smooth running application that rivals the experience a user might have on a native application. If we weren't confident of that, we wouldn't be using it.

It Isn't Just About the Technology

Even before a single line of code was written, we did tons of research trying to figure out how we should create our mobile app.

Our Mobile App Stack

If it hasn't gotten technical enough for you, I'm going to kick it up a notch.

Starting with the new site we launched in August, we have moved to writing REST APIs and consuming them, just like any developer would who was using our API to integrate into their software. We took a very lightweight approach to the mobile app too. We chose to use Node.js as our backend and the rest is just static HTML, JS and CSS. Why? It has much less overhead than dealing with an .NET project and what is more fun than having JavaScript server-side and client-side. We've also brought what we've learned from building internal applications with the Backbone.js library to the mobile app. This library has allowed us to very easily organize the app in a logical way, while also giving us freedom to make our own decisions on solving the problems we had to tackle during development, like intelligent page transitions.

Benefits of a Web App

The biggest benefit in our eyes is the total freedom to iterate quickly. We do not have to submit our app for approval every time we want to add functionality or features. When we've finished our testing we can push it to everyone and they can begin using it immediately. With the "App Stores", we'd have to wait potentially weeks for an update to go live.

The other major hurdle for us when we were deciding between native and web app was buying more credits. If we released a native application, we'd have to use their purchasing systems. For iOS that means tapping into the App Store and for Google Play, you'd need to use your Google Wallet. But we aren't a B2C application for the most part. We have users who are utilizing Call-Em-All on behalf of a business, church, school, etc. This means the Call-Em-All account is tied to that organizations credit card. The whole point of the mobile app is to make using Call-Em-All easier. Who wants to have to fill out reimbursement forms now because you want to use the Call-Em-All mobile app and were forced to buy credits with your own personal iTunes account. With the web app, you have full account functionality including buy credits and modifying your monthly group size.

Is there a Catch?

The truth is, we are left wanting when it comes to all the technology available to web apps...mainly from iOS.

First, you cannot use the mic to record your audio for your broadcast. You can choose from your audio library or call in to record using the message recording ID. We are trying to come up with some creative ways to improve this in future releases. Android Google Chrome does give us access to the mic, but we have not finalized that feature yet. iOS has not been so forthcoming to include this in Safari yet (iOS 8 maybe?).

Second, we think the page transitions are really nice, however, in some of our testing, they aren't as smooth as native apps. This might be a lack of access to resources, but as devices continue to improve and CSS3 transitions continue to be utilized in web development, we fully expect this to smooth out and be just as good as native apps.

Third, if you save the app to your desktop (see how [KB article], we really suggest it), we can't automatically open it like you can native apps. Android and iOS do not let us register a web app address like they let you do in native applications. We don't feel like this will be a major impact, but it could be a little frustrating when receiving an email from us about a completed broadcast and clicking through to see the stats.

Finally, we'd love to be able to send you push notifications when broadcast completes or for SMS opt-ins, but we can't. Again, Android and iOS do not give us that functionality.

Benefits of a Web App

As with all technology, it is only a matter of time when a solution can be found to fill a gap. We are optimistic, in short order, that will be the case. We greatly feel as if the benefits greatly outweigh the few limitations. We are always open to your feedback so please let us know how you like the new mobile app and what we've done. Don't hesitate to let us know what is missing too!

We are super excited about its release and hope you are too. So go check it out at https://m.call-em-all.com

Call-Em-All

Call-Em-All

We help staffing, religious, education, property management, healthcare and other organizations share important info with our automated messaging service.