Just recently I found myself on YouTube looking for a soundtrack to my coding day, when I stumbled upon a quick 1.5 minute video featuring the one and only Bill Gates. 1.5 minutes is short enough for me to get distracted, and Bill Gates is Bill Gates. Great video, awesome content, love the guy.
Turns out that he has a ton more content over on his blog, GatesNotes.com. I highly recommend you check it out if you are interested in future thinking technology as well as to learn about various socioeconomic challenges being faced by many today and ways in which we can help to alleviate it.
After spending a few minutes on his blog, I noticed that GatesNotes features a members only section with exclusive content. I trust the brand enough that I am willing to share my email and create an account. And then a few things happened, that were kind of funny, and that left me realizing that code isn't perfect, and that we are all allowed mistakes sometimes.
Sort of "secure"?
I'm the first to admit, setting up an SSL certificate on a website isn't the simplest task that you can accomplish. I have spent hours and days even in doing so, and each time it is unique depending on various factors. GatesNotes is no different apparently. It has an SSL cert, for sure. But some of the content on the website isn't using the HTTPS protocol, leading to a warning message on most browsers.
This is very common when using 3rd party libraries or scripts or when content is being injected to a website and the site owner can't control the type of content.
On a website as popular as Bill Gates, I am not at all surprised. Running a blog with a few tens of thousands of readers per month is way different than running one with millions. Other technology is needed for applications like this to run, such as tracking tools, video players, performance optimization libraries, etc.
A massive jumbly net of technology is the result usually. But we are saved the trouble of having to deal with that and instead get a tidy package of content that is more human readable.
Registration failed?
In lieu of handing the website my email, I decided to use my Twitter account as I'm not the most active on the platform. This is normally handled through a 2 way handshake between a website and Twitter. You essentially get redirected to Twitter, you accept the agreement that the website will have access to some of your information, and you are then redirected back to some callback URL that the application specifies.
Tokens are exchanged in this process to verify that everyone is who they say they are. And if it checks out, then the website can get access to your information that it needs. Normally this is just your name and profile picture.
Except, it didn't quite work out that way. And I saw the message above instead. At this point I was intrigued. After all, its Bill Gates! Millions of people read his content every month. The man cures diseases like junior programmers make hamburger menus appear. How many people have attempted to register to his website only to be greeted by that cryptic XML warning I wondered.
But I have seen that error before myself. Plenty of times to be truthful. Either my callback URL changed at some point and I forgot to update it on Twitter. Or, more commonly, something new was added that just didn't fly with whatever callback logic was in place.
Was I successfully registered however? After a few page refreshes, apparently I was.
We're all human
Bill Gates obviously didn't code his website. He has more important things to do, like helping to fight Malaria. He might write a blurb and sit down for an interview every so often, sure. But then someone cleans up the content and adds it to the blog. Potentially, even some technology consulting firm could be in charge of the blog. Who knows.
My point really is that this is the nature of the internet. It is still very young and it is still stitched together by tiny threads of shared data that sometimes don't quite communicate very well.
Websites have to talk to each other, protocols have to be followed, these protocols then change without a formal announcement and things break sometimes.
If you are a programmer reading this, then I hope it reduces the existential anxiety of having to become the best programmer in the world and avoid all bugs at any cost. Bugs will happen. And then at some point, you will fix it.
I still recommend you go over and read a few articles on Mr. Gates blog. Definitely more than a few ideas that are worth sharing there.
Just a short post for no real reason.
Happy coding folks.
- Walt
Walter Guevara is a Computer Scientist, software engineer, startup founder and previous mentor for a coding bootcamp. He has been creating software for the past 20 years.