What Debugging an Old Website Taught Me
13 March 2024
So, two years into coding, I get that request that most developers are probably familiar with, the casual “Can you have a look at my website?” Despite learning not to agree to such requests in my past life as a graphic designer (“Can you design a logo quickly for me?”), I take the plunge and say yes. Why? I know my friend Richard’s site is built with WordPress, a technology which I know powers the majority of the web and many of my developer friends use day-to-day. As a React/Astro developer, I relish the challenge to learn a bit more about WordPress and help a friend out.
One thing I must make sure to note is this post is not a critique of WordPress - while developers frequently complain about the clunkiness of this technology versus something like Eleventy, it’s not the problem here. After struggling to log in to WordPress admin on the faulty site, I ask Richard for his GoDaddy login to check what was going on there. No issues, but I do notice GoDaddy looks different than it did last time I came across it. A rebrand. But much more than that as we’ll come onto.
I find out on GoDaddy that the site is hosted through a Linux server and can be accessed through cPanel. It all begins to seem a little overkill for Richard’s basic blogging needs, but I continue to try and find the issue. I start thinking it’s probably a security issue and on logging into cPanel (more login details, all very tangled…) I am relieved to find a faulty security certificate is the issue. This’ll be easy to fix, I thought. I tried resetting the certificate through cPanel, just SSL for now, sure fine… Nothing loads when I reload after I go through all the steps of installing this on the site.
I go back to GoDaddy and notice something I missed before, an option “Get Certified SSL for your site - $79 a year” (later I reload the page and get another figure - an eye-watering $82 a year). While this is not a large amount for a company to pay - for Richard’s use case - a blog and some custom emails it’s exorbitant. Reading online, I see that GoDaddy used to provide these certificates for free, through a plugin called AutoSSL, until it discontinued this in June 2021. A shameless cash grab, standing in the way of an open and secure internet. You can read more about why HTTPS is important here: [link]. It appeared that GoDaddy, as part of its rebrand, had shed these certificates and had hoped legacy customers would just foot the new $79/$82 bill.
Later I realized WordPress was not installed and had been uninstalled by GoDaddy, likely when this rebrand/UI change happened. Richard later told me he used to access WordPress directly through GoDaddy. I reinstalled WordPress in the file system and got to work trying to fix the SSL - for free. I quickly fixed it using a WordPress SSL plugin and showed Richard how to edit his site in WordPress. Happy days. I know how useful WordPress can be as a themed frontend to get people editing websites, it’s just a shame that all the other bits were so difficult to use.
Next up, I’m going to try self-hosting Richard’s website. I know he has a NAS he uses for backups, so I’d like to help him move his WordPress install to that instead of hosting through GoDaddy. This would save him money on hosting costs and mean he would only be reliant on GoDaddy for domain registration.
So what did I learn? Simplicity is good. That old Apple adage “it just works” came to mind - most people want technology that just works, that they can just get on and use and they’re willing to pay a premium for it. Just not an $82 per year premium and not a complete UI re-edit which requires relearning how to make changes. I felt privileged to have been able to build HTML, CSS and JS sites and continuously deploy them on Netlify on every push to Github. To run parts of my home server behind a free Cloudflare DNS proxy, with cheap (40p) domain registration. It all seemed so simple and easy suddenly. This is not to say that we should resolve to only work with what’s easiest - I understand the need for and joy in customisability, what comes from writing your own code or running your own server. But sometimes a legacy product no longer works and it’s time to either patch it together for now or figure out a new solution.