The Iowa Cacus Mobile APP shouldn't have ever been built!


The cost of developing for the IPHONE and Andriod far exceed the cost of a moblie friendly website


Logging into a website on a mobile device, with two-factor authentication is something most of us are familiar with!

The masterminds behind the Iowa Cacus APP, forgot the cardnial of software development: KISS ( Keep It Simple Stuipid )!

The Iowa caucus app provided NO additional security!

  1. The app did NOTHING that a decent website couldn’t do!  If you create your website with a decent mobile CSS framework like bootstrap, or mini.css it will work just fine on a phone or tablet.  Unless your APP does something that interacts with the peripherals of the phone (camera, mic etc.), I would argue you should make your website do it!  Else you’ll own three code bases, one for IPHONE, one for Android and your website.  If you think it’s slow to coordinate a rollout of new features on your website, if those updates also are tied to two different custom developed apps prepare for slow, and expensive!
  2. The Iowa caucus app cost 60k and did little more than post calculated caucus totals and post them to a backend server!  I’m not saying this should have been free, I just question why it was so expensive, considering it DIDN’T work! 
  3. I would wonder if the company rolling out the Iowa App, had any experience with rolling out a product that would experience high usage!  A decent HTML5 built website hosted on a Azure or AWS, you could have scaled up the web and data servers to have lots of memory and CPU’s.  5
  4.  In addition to the slowness and confusion on how to use the APP the developers Shadow tried failed to move the results it collected onto a verification system controlled by the Iowa Democratic Party (IDP). During that process, a data-formatting error caused it to not be accepted!  I question if Shadow did end to end testing, to make sure the data flows worked, and what do to if they fail!

I’ve pushed data around for decades, and one thing that is absolute, if you post data to a third party API, and that data is critical ( laboratory test results, or IOWA caucus results ), you need to log what data was sent and the response from that third party API, in a queue that will allow resending the results if applicable.  A process needs to monitor your message queue setup, to alert you of errors and allow you to retry posting the data that may have errored out.

My last point on why an APP is probably a big waste of resources as G5, is going to change the amount of bandwidth your cellphone can access from the wireless carriers to surpass what most of us have available in our homes today.  When people search for products and services on their phones they don’t want to install an app to use them!  I would imagine that most people are probably a little hesitant to install an APP on their perspective device, since both iPhone and Android have had apps on their platforms which were sneaky snakes trying to collect data your personal or installing malware on our devices.