Programming Language Choice and Human Centered Development
The most common human development problem a company has is what I refer to as “Programming Language Persistence.” Essentially, it’s an attitude of “we’ve always used this programming language, so we’ll keep using this programming language even if it isn’t really working for us anymore.”
.NET (sometimes also referred to as ASP.NET) is a programming language built by Microsoft and used commonly in a few industries – most notably the medical industry. It has its uses, and comes in handy for certain things. It’s great when you need a lot of security, and works well for in-house connections.
The problem arises when organizations use it for everything.
.NET’s excellent security comes from the need to contact the server every time you need to do anything. We call these “server calls.” The problem is that if you have slow or unreliable internet, these server calls can time out a connection, meaning the user will have a substantially more difficult time accessing important information.
Bill and his wife live in a small town, in a nice house, on an idyllic piece of land about an hour away from the city where he works. It’s beautiful. Their views are spectacular, there’s no noise or light pollution so it’s quiet and the stars are beautiful at night. It’s their dream home together.
They’re close enough to town that they have high-speed internet, so they can stream Netflix with abandon. Unfortunately, they don’t have great cell service, but they can use their cell phones via wifi so it’s not much of an imposition.
It’s mid winter, and a snowstorm has knocked out their internet. Ah well. It happens. They have just enough cell service to make a phone call if they need, and they really don’t need to. They still have electricity and plenty of hobbies to work on, so they think nothing of it.
2am approaches. Bill and his wife are in bed when he wakes up suddenly. His chest hurts, and he’s feeling nauseous.
It’s painful, but not horrific. It could just be acid indigestion.
“Bill? Bill what’s wrong?” His wife, Margret, wakes up and asks him.
“My chest hurts,” he replies, slightly confused. Margret grabs her cell phone off the nightstand where it’s charging. She pulls up the hospital website to check his symptoms.
The internet is still down.
As the website slowly chugs to life, Bill begins acting strangely. He’s swaying slightly, as if he’s lightheaded. “It’s probably nothing,” he says. “I think I just have heartburn.”
Margret tries to load the hospital’s symptom checker. The loading bar stalls. Eventually, the screen displays a message: “Could not access the page because the server timed out.”
Bill is not having a heart attack. He has indigestion.
He and Margret don’t know this, of course. But if the hospital were to have chosen a framework that relied less on the server and more on a lightweight technology that required fewer server calls, the symptom checker would have worked more reliably.
The hospital, like most hospitals, is using .NET. Right now, that means they’re having difficulty using the technology the hospital provides. She doesn’t have reliable internet, and everything on the website is trying to load at once, instead of a smaller web application needing to load on its own because it doesn’t have to wait for a complex navigation bar to load first.
Fortunately, Margret is a smart woman. She’s called 911 to request an ambulance because she’s not sure what’s happening. Unfortunately, in the United States, this means they now have a large bill to pay for the ambulance. Had they been able to check the symptoms, they’d have found that Bill didn’t fit all the symptoms for a heart attack.
But this could have been avoided. Had the hospital studied its users, they’d have found a substantial number in areas without reliable internet access. Then, they could have built the site and the symptom checker using a technology independent of their in-hospital system that ran faster on these less reliable connections.
Most small businesses aren’t aware that web developers have specific programming languages they code in, that may not fit what they need for a web site. What you as a business owner need to look for is a web developer who is willing to code in the best programming language for your users.
At Media Smart Web Solutions, we don’t engage in “Programming Language Persistence.” We tailor everything from the design down to the choice of programming language to you and your users.