I was as surprised as anyone to discover last week that my blog, admittedly underused, had disappeared from our website. We have our own WordPress installation and like an increasing number of organisations, this is hosted on a Virtual Private Server (VPS) where we share the resources of a UNIX/Apache server with about 50 others.
To try to make the VPS idea workable for mere mortals, our hosting provider uses a product called Plesk. This is a graphical interface for setting up clients, websites and domains for each VPS. At first sight it appears very pretty and fairly well organised. Unfortunately, its attractiveness is literally skin deep – it is a “thin” interface on top of a set of fairly complex underlying technologies.
And therein lies the problem with the disappearing blog. I was foolish enough, when trying to resolve an unrelated problem, to click on the Updates icon. After some wrestling and heart-stopping moments where I was informed that the update on my remote virtual server had failed and it may therefore be inoperable (they were only kidding) I finally managed to get the latest version of Plesk installed (9.0.1). Unfortunately, this didn’t actually solve my problem and left me with missing icons in the graphical interface (wherein lies another story). However everything else seemed to be working.
Then the panic set in. A week later, clicking on a link to my blog produced only a message that the MySQL interface had not been installed. This is an essential component for WordPress and had certainly been present earlier. Not only that, on examining the status of the MySQL database for the blog in Plesk, I was informed that no databases existed. Indeed, even as you read this blog Plesk insists that it does not exist. (Perhaps carrying virtualisation a little too far!)
The problem is not a new one for user interface designers. In this case, the relatively lightweight Plesk GUI had its own ideas about the state of the system, and was not robust enough to carry these forward through a major upgrade. On using the PHP tools for managing MySQL, I discovered that the blog database was indeed present and fully functional. The problem turned out to be that in the process of upgrading PHP, Plesk had defaulted the configuration to exclude MySQL functionality. A one line change to the PHP configurations file fixed this, but as you can imagine, the overall user experience was not a happy one.
If nothing else, this does serve as an excellent example of the perils in oversimplification. There were many aspects of the underlying system that Plesk was trying very hard to hide, but at the expense of considerable confusion when problems occurred. Maybe Parallels (the developers of Plesk) will eventually put in the effort required to make the interface work for the intended semi-technical audience. But until they do, it is not for the faint of heart.