The Presidential Elections are coming! Yeah, it’s 2020 already (time flies away). Digital transformation shifts and disrupts our lives in every way imaginable. And I research and write about it every day. So, what about election, then? Simply put, there’s an app for that.
Voting apps and online democracy are getting traction right now. For example, IowaRecorder, an app, was used during Iowa Democratic Caucus. Although it failed miserably (more on that below), the trend was set. If not for official results and ground voting centers, apps will definitely be used for polling in the year 2020. And in 2024 online voting will perhaps become the norm.
Let’s discuss functionality, features, cost, and value for users. Is it true they can securely and conveniently organize data flow during elections? Has digital democracy finally arrived? What are the main concerns to consider and what are voting apps all about?
Security and Privacy – Voter Anonymity
The #1 rule and a cornerstone of voting apps is security. If your app is not secure, it won’t do any good. Moreover, it will be harmful, since it can allow twisting the results or, catastrophically, hacking the elections (from Russia with love).
Keep this in mind: performance proves value. No performance – no value. Bad performance – bad value.
The main problem behind the catastrophe of the IowaRecorder during Iowa Democratic Caucus was that the app crashed exactly at the moment when it needed to perform and perform great (live, in real time).
IowaRecorder was specifically designed to handle hundreds thousands of requests without crashing. But since the app simply couldn’t handle all the requests, it failed to exhibit healthy data flow and update the results.
Moreover, some time after the launch it failed to accept votes. Once the votes stopped being accepted, credibility and reliability of the info on the app became compromised. The possibility of such issues should always be considered in advance/
Voting apps process a lot of data simultaneously. In this they’re are much like hugely popular social media apps in need of great hosting power. Therefore, it is imperative to make sure that you’re safeguarded in this domain. Make an emphasis on solid and reliable back end architecture.
Imagine that: a voter makes a vote, then this data goes to server. Total count for a candidate A is calculated and recalculated with every arrival of a new vote. This is a process. When expanded, you get a user to register, put in personal profile info, prove it is his account with some type of authentication protocol (sms authorization, social security number, driver’s license number, using a photo, etc).
Then a voter proceeds to vote. Then, his vote is counted with all the other votes of registered approved users with authorized personal accounts. What you get is a rough user journey as well as data flow in between the different processes in the app.
Server Side – PHP
Reliable back end programming is mostly responsible for good performance and fluent data flow. In order to do that your back end technology should be solid. It means coders doing their best work. In GBkSOFT, we use PHP for back end. We have previously covered the many benefits and numerous advantages of this programming language.
PHP is fast, not expensive, and very reliable. Simultaneously, it is simple to integrate and very convenient to use. Many thanks go to the clarity of syntax in PHP, huge open source community, and a multitude of other various pros (you can find out more in our specially dedicated articles) ?????? ??? ?????? ????????
The following features should be included in your voting app:
- Polling information
- Voter profile with personal info that was authenticated
- Geofencing or Geolocaiton to disallow anybody but local voters to make a vote
- Different Candidates of choice with descriptions
- Fields with info on latest poll results
- Instant continuous vote count updated each second
- Notifications on the process of vote count, updates, wins, etc
There can be more features and that is not a problem. You can add layers of additional functionality in the process of development and even after your MVP is ready.
MVP is Minimum Viable Product. Meaning, it is the product that has the least possible number of features, yet able to perform productively and carry on with its objectives . Why we do that (and why everybody else does that) ? Because you should test your app on real users before making it perfect. Otherwise, you wouldn’t know what changes to implement.
MVP saves you money and at the same time it corrects the course of development for your project to hit the mark more precisely.
Do It Right First Time
One more way MVP serves you well is that it reduces possible costs in case some structural changes need to be applied. That is why until a prototype doesn’t work it is risky to finish the project completely. A Voting App with all the perfect outlined icons, buttons, music, effects, and even voter profiles will be useless if it doesn’t work, contributing to the overall vote count. Therefore, even with minimum functionality, it should be able to perform smoothly in real conditions.
You build your voting app around its skeleton, starting from basics which are harder if not impossible to change later. Much unlike superficial extra parts or as we call them “nice to have” features. You can add themm, delete, correcte, revise, and improve after field tests and only in case the app’s MVP works well. It is the main lesson of all startups that first produced a stereotype and then acted according to the circumstances, making revisions to their initial trajectory. That is how it’s done, that is the way. Do it right on your first try.
For every project we take GBKSOFT assigns a Business Analyst. Why? To be an intermediary between you and the development team. Again, why? Because 1) you are not a developer and probably do not think like an engineer 2) because a developer is not a businessman and doesn’t think like a businessman.
In order to avoid confusion, miscommunication, and incomprehensive conclusions (as well as faulty project agenda) Business Analyst ensures that the development team works on features that will unfold the business logic of your voting app. In other words, Business Analyst makes sure that your voting app is done how you want it.
Around $50K for the MVP of two platforms: iOS and Android. This is a rough number. But other companies will never even tell you this number straight ahead. We work on a Time-Materials basis. When you get a quote, you see exactly what features take how much time to do and that info is tied to each team member.
Outsource or Not?
Outsourcing is less expensive. What about quality? Well, it’s the same as long as you don’t pick an outsourcing partner from India (you better don’t). GBKSOFT has 2 offices in Ukraine. In the last 5 years investors around the world recognized Ukraine as a rapidly growing IT hub with a huge pool of available skilled developers.
So, we think that alongside with healthcare, transportation, commerce, and entertainment, even such critical social processes like voting and polling can use an upgrade. It makes voting more convenient and it makes it easier to count the votes. Perhaps, this is the way to encourage more people to vote and that is exactly what we need, right?
Would you like to develop an app similar to voting apps?