The United States is buzzing with the fallout of the Iowa caucuses. If you’ve been living under a rock, the Iowa Democratic Party (IDP) enlisted the use of a smartphone app to help with tallying the results of the Iowa caucuses. This app was responsible for reporting from over 1600 precincts across the state over the course of just a couple of hours.
It failed spectacularly.
I’ll preface this by saying I have no idea how this application was developed or what exactly went wrong, but as a web development shop—not a smartphone app development shop—it seemed like an opportunity to look at some of the differences between the two and how this may have impacted the Iowa caucuses.
What’s the difference?
For the uninitiated, a smartphone app is downloaded to your phone from the App Store, Play Store, or another marketplace your phone provider offers.
A web app is built with the same tools as a website, and with those tools, we can build functional software that accomplishes nearly everything a smartphone app does.
For a variety of reasons, you’ve just been trained to download smartphone apps instead.
Web apps are faster to develop
While we’ve created ways to make porting an app between different platforms—Android vs iOS vs Blackberry vs…—it’s still time-consuming to make sure everything works everywhere.
Meanwhile, a web app operates in your phone’s browser and operates the same on pretty much everyone’s phone or other device with an internet browser. By building a web app, you’ve got a tool that can be used on desktops, phones, and potentially your Xbox.
Why would this matter in Iowa?
The problems reported with the app that was used in the Iowa caucuses range from folks being unable to log in to inaccurate tallying. Bugs like this can only be uncovered with exhaustive testing, and if your budget is eaten up by paying a variety of developers with different skills to create an app for multiple platforms, testing will be the first thing on the chopping block.
Building everything on one platform means build it once, test it once (er, test exhaustively and in an ongoing and automated fashion).
Fewer points of failure
Smartphone apps may seem like they work entirely on your phone, but most of them need access to centralized data of some kind. For example, the app developed by Shadow for the Iowa caucuses would have needed a central database of PINs that precinct captains used to log in. Once a user filled in voting results, it has to send that data somewhere to be aggregated.
Most apps have to phone home to a web server with a database where tons of information gets stored and updated. This is that mysterious “cloud” you always hear about!
Beyond a database, this particular app probably also has a web interface that IDP officials are using to view and report results. Even though the app lives on smartphones, it depends on a web application. So many moving parts, so many opportunities to go wrong! At the end of the day, a phone app is in addition to, not in place of, web-based tools. All because we’ve trained people to use the App Store.
Quickly deploy fixes
There are a lot of logistics to launching a smartphone app. The Play Store (Android’s app store) is fairly open, but the App Store on iOS is a heavily-guarded place where progress moves pretty slow. Even if Shadow employees had been available on Monday night to launch a fix to the app, it’s unlikely the updated version could get published to the various app stores in time to be useful.
With a web app, however, everyone is accessing a central source. While issuing an update in the midst of all the chaos of the Iowa caucuses would have been terrifying, things really couldn’t have gotten much worse. On the off-chance glaring bugs had simple fixes, getting an update to all users would have only been a refresh away.
Sterner Stuff: Advocates of web apps
At Sterner Stuff, we love web apps. They’re affordable, powerful, and simple. Is this a bit of armchair quarterback-ing? Maybe. Would a web-app have gone better for the IDP? Hard to say. Software is hard, so rolling out a tool like the one used at the Iowa caucuses will always be an adventure, regardless of the technology used.
But if you’re considering an app to automate operations at your business, talk to the Mahom-ies at Sterner Stuff about building it on the web.