Do Developers Have an Unfair Advantage in this World?

February 16th, 2021

Unless you’ve been living under a rock for the last few months, I’m sure you have already been involved in some capacity with acquiring a COVID-19 vaccine, either for yourself or for someone you know. With my mother and my father-in-law in their 80s, my wife and I have been worried for them since the start of this pandemic. When the COVID-19 vaccines were approved for use, we and the rest of the world certainly breathed a sigh of relief. Unfortunately, we, in the U.S., and others throughout the world, have witnessed a very slow, frustrating, and sometimes non-existent vaccine availability and distribution process. Here in the U.S., vaccine distribution has been essentially controlled at the state level, creating what seems to be an endless variety of eligibility criteria and distribution and implementation methods. I don’t think I’m alone in feeling that I needed to take charge of my health and the health of my family, including being extremely proactive in securing vaccination appointments. This quest has occupied much of my time and energy lately. 

Many vaccination appointments are offered through online scheduling systems. Although this, in theory, is efficient, I question the effectiveness and logic of this method for the first-level population who are eligible for the vaccine, people aged 65 and older. This population, as a rule, is not the most tech-savvy, and many in this age group require help with sometimes the simplest of online acquisitions (think of helping your parent or grandparent with placing an online purchase, making an online banking transaction, or even posting on social media).

This brings me to my dilemma. As developers, we know how systems are built and, specifically, how queueing mechanisms may be implemented in a web- and mobile-based system. With our knowledge of accessing publicly-available code in the browser and other factors, such as using multiple IP addresses to increase your chances of success, and sometimes just being faster at getting through questions on a website and submitting required information, should we be using our talent to help family and friends get vaccination appointments? Is it right for us to use additional developer tools and code to our advantage, even for a crucial public health reason? Is this fair? Is this ethical? 

Getting back to the vaccine quest for my mother and my father-in-law, who both live in different locations, here’s what I did. My mother’s adult community announced that they would be offering the vaccine in early January. They would schedule appointments through email and based on the order of your response, those who responded quickly would have first access to appointments; basically, first-come, first-served until appointments were filled and supply depleted. Now, I knew that the community would most likely be able to vaccinate all of their willing members aged 65 years and older, but given that I wanted to ensure she received a vaccine as soon as possible in case the supply ran out, I intervened and, with her permission, took over my mother’s email account. Now, whether I was a developer or not, in this case, just having the ability to be fast with email was critical. I waited patiently, watching her email and then all of a sudden the email I was waiting for came through and I immediately responded to get her high up in the queue. I must have been one of the first to respond since she was one of the first to receive the vaccine in her community. Was this cheating the system?

Now, onto my father-in-law. As a veteran of the Korean War, he was on the list for a vaccine from the U.S. Department of Veterans Affairs, but they had not called him. However, in a county near his home, a local public health department unaffiliated with the VA had announced it would soon be offering the vaccine to people over age 65. Its website stated something to the effect of “No vaccines right now, but come back and check often.” As a developer, I immediately thought “I can set up some process that checks the website every minute and checks for changes and notifies me.” Before I could even get to the point of thinking further, the site happened to have changed on my manual refresh and I was on my way to setting up a vaccine appointment for my father-in-law. As it so happens, his local VA clinic came through with a more immediate appointment for him. 

In another case, I learned that a former neighbor of mine, over age 65, who had moved to another state was having trouble getting a vaccination appointment. I offered my help. My neighbor is no dummy. He is a retired rocket scientist, but I knew I had an advantage as a developer in understanding the appointment scheduling system he was using. A regional supermarket pharmacy had announced they would soon be scheduling vaccine appointments and they asked everyone eligible and interested to check the website at 6 a.m. on a particular morning. As a developer, I knew to check out the site before that particular day and look at whatever code I could via Google Chrome Inspector. I tried to list in my head all of the ways I could give my friend an advantage. These included hitting the page the night before and performing an automatic refresh. Maybe the site was using the first in the queue, but the queue started before 6 a.m.? I also thought about session IDs and multiple tabs versus multiple browsers. I thought about different browsers (Chrome, Safari, etc.). I thought about multiple IP addresses, multiple devices, on and off the Wi-Fi, and VPNs. With all of this running through my head and researching the code I was able to see, I determined that to have the most number of chances was to (obviously) have the most number of people trying for him, but also to have as many devices I could have, each with different IP addresses. On the given day, the early morning start time came (way too early for me!), and after two days of trying we were able to get him an appointment. 

Is it right for us to use additional developer tools and code to our advantage, even for a crucial public health reason?

Following these experiences, I continue to look for appointments for other, older family members and continue to think about how far I should take things into my own hands. As a developer, there are so many ideas that run through my head for increasing the success of scheduling an appointment. With an extensive toolbox at our fingertips, anyone with the right skills can do the following: check for website updates in an automated fashion since many sites display a similar message that the website will show something different when vaccines are available; think about full automation using Selenium scripts to help run through a sequence of steps that would certainly be faster than a human hand, and, also, can check for specific end results; use any number of cloud functions (e.g., Lambda) to help with these processes and surely give an advantage. But what is the ethical thing to do here? 

Science tells us that as more people get vaccinated, the closer we will be to reaching herd immunity; that being said, anyone who receives the vaccine is helping all of us. Even with that in mind, the situations I described above made me do a lot of thinking. Although each person I helped met the eligibility criteria, did I give my family and friends an unfair advantage? It’s likely that my help enabled them to get an appointment before they would have been able to get one themselves (or even to get one at all). I have read about many other tech-savvy developers doing similar things to help those they know get appointments. Of course, there are so many people who don’t have software developers on their side to help with things like this, which brings us full-circle to the original question: Is this fair? As I continue to grapple with this question, I’d be interested in knowing your thoughts.