#oneaday Day 653: Web best (forgotten) practice

When I was first interested in Making A Website, back in the early days of being able to Go On The Internet, itself part of Going On The Computer, I learned a number of supposed Best Practices that I still habitually follow to this day as much as possible. And yet reading a recent article about how a single article on PC Gamer is a 37MB initial download, followed by nearly 500MB of ads downloaded in the background over the course of five minutes or so, I can't help feeling like a lot of them have been forgotten about.

Here's a few that I can remember off the top of my head:

  • Keep your pages lightweight. Don't be afraid of all-text pages. Compress your images. Don't upload them at an unnecessarily huge size or using a file format that doesn't compress them unless there is some reason for needing to see them at high resolution and lossless quality. Arguably this one is even more important today as a lot of people are looking at websites on phones, but 37MB for an initial download is bananas, even bearing in mind today's average Internet connections, even over the airwaves on your phone, are much faster than they were 20+ years ago.
  • Hyperlinks should be inline rather than an instruction. That means if you're linking to something, you put the hyperlink where you mention the thing rather than spending a whole other sentence saying "Click here to see the thing!" This one is quite often argued against these days in favour of "calls to action", but if your website is not a marketing website, you don't need to give a shit about "calls to action". Save yourself some words, make your writing better and just link to the thing. The "click here" is implied by the text being a different colour. That's how hypertext works!
  • Hyperlinks to other pages on your site stay in the same tab/window. Hyperlinks to other websites go in a new tab/window. target="_blank" is so easy to include, and most CMS packages have the ability to choose whether or not a link opens in a new tab without you having to do any sort of HTML shenanigans yourself. The reasoning behind this is that you actually want to keep people on your website, so if you're linking to something relevant that is not on your site, when the reader closes the tab for that external resource, your site will be right there waiting for them where they left it.
  • Metadata doesn't belong in content. We all know that social media made a real mess of this, but outside of platforms designed around metadata being part of content, you don't need to put things like #hashtags in your articles, because most CMS platforms have some sort of tag facility built-in, and even if you're hand-coding a site, you can still include metadata tags in a way that is invisible to the end user. You are (hopefully) writing a page to be useful to a person, not a machine. In fact, in these days we live in, making a page more friendly to a person than to a robot will make you stand out considerably.
  • Don't interrupt the reader. If someone has clicked on a page, they're there to read the thing they clicked on, not to subscribe to your newsletter, not to watch a video and not to click away to a related article. If you must include those things, put them at a relevant point in the text (e.g. a video showing the thing you're talking about in the article, a link to a source you're quoting) or, if they don't fit into the flow, at the end of the piece so the reader has somewhere to go next. If you're giving the reader "FURTHER READING:" options after just one or two paragraphs, all you're doing is implying to the audience that the rest of the article isn't worth reading.

Most of these are broken on the daily by commercial websites, usually in the name of "SEO best practice" or whatever. The last one in particular drives me bonkers. I just want to read the article! I do not need linking to something tangentially related after I've only read the introduction, and I certainly do not want to subscribe to your fucking newsletter until I have read your entire piece!

Many of these rules were originally put in place because a lot of people were still using dial-up Internet at the time, and if you gave someone with even the very fastest dial-up modems a 37MB single page? Well, they just wouldn't be reading that page. In the process, however, these rules made for a Web that was clean, straightforward to navigate and consistent in its design language. And we've lost a lot of that in the attention-deficit, ad-riddled, bloated mess that the modern Web is.

"I want the old Web back" is a lot more than just starting your own blog in favour of corporate-controlled social media websites. The rules above are a good start. Generally respecting your audience — including their time and network bandwidth — is a good next step.


Want to read my thoughts on various video games, visual novels and other popular culture things? Stop by MoeGamer.net, my site for all things fun where I am generally a lot more cheerful. And if you fancy watching some vids on classic games, drop by my YouTube channel.

If you want this nonsense in your inbox every day, please feel free to subscribe via email. Your email address won't be used for anything else.

#oneaday Day 304: Web maintenance at the worst times

I found it very hard to get out of bed this morning. The reason for this is simple: I stayed up until 2AM doing maintenance activities on this site and MoeGamer that could have almost certainly waited until a more sociable hour, but once I'd started, I wanted to see them through.

Y'see, both my sites have gone on a bit of a journey. They were both originally hosted on WordPress.com, with this blog being on a free account and MoeGamer being on a "Premium" paid tier. I was starting to reach the limits of what I could do with the Premium account in particular — most notably with regard to media storage space — and thus I moved MoeGamer to a self-hosted WordPress.org installation on a Bluehost hosting account.

Before anyone jumps in to decry Bluehost as being shit: believe me, I know. That is the reason neither of my sites are hosted with Bluehost at this point. But we'll come back to that.

As anyone who has ever tried to migrate a large site from WordPress.com to WordPress.org will tell you, the supposedly simple and straightforward migration process is anything but. What is supposed to happen is that you hit "Export" on your WordPress.com site, which spits out your site's contents as XML files, then you hit "Import" on your WordPress.org site, wherever you've hosted it, and it will recreate your site. Posts, pages and comments will go right back in, and the import process is supposed to look for any media you posted and automatically go and retrieve it from your old site, then transfer it to your new one.

Notice how I emphasise "supposed to". Because in the multiple times I have done this over the years, not once has it ever worked how it is, apparently, supposed to. Not only that, but the documentation on WordPress' own site refers to features and options that do not actually exist. Take these instructions for exporting your Media Library, for example. By following these instructions, even if the "automatic" process described above didn't work, you should be able to just tell WordPress.com to export all your media files into a big ol' .zip file, then import them all in one go to your WordPress.org installation.

Just one problem: the options they tell you to click on do not exist. Maybe they once existed and now do not, but right now — and for multiple years at this point, since I've done this several times with different sites — they do not exist, making them completely useless as instructions.

There are plugins that are supposed to help with this sort of thing. You can't install plugins on a WordPress.com site unless you're subscribed to the obscenely expensive "Business" plan, but you can install plugins on WordPress.org. Except you then run into the minefield of whether or not the plugins in question actually do what you think they're supposed to do, or if they're just some dodgy, shady thing trying to get you to sign up to their "Pro" account because the one vaguely useful option they have is paywalled.

And this is to say nothing of most web servers' tendency to crash if you throw too much data at them in one go. I have several thousand posts on both here and MoeGamer, and attempting to import them all at once would crash the import process every time. I ended up having to go a hundred at a time, which took a very long time, I can tell you, particularly as it would still crash on occasion. And amid all that, if it wasn't already clear, it didn't automatically import my old media and transfer it across to the new site; instead, it just left links to the old media and then… didn't do anything else.

So what I ended up with was two sites that were full of images that were hotlinked from an account I wasn't paying for any more, and which I wanted to close down. And it took me until last night to figure out some possible solutions.

For the record, I used two distinct plugins. Firstly, I used the Auto Upload Images plugin, which actually does do what the media import process is supposed to do: it looks for externally hosted images, then it imports them to your media library and updates the <img> tags to point to your new media library copies. The one downside I found with this plugin is that rather than importing the old images under the same date structure as the old site, it imports them all "today". This is down to a limitation with how WordPress handles files, I think, so no big deal — but it did cause an issue.

On both my sites, a lot of older images had automatically been set to allow people to click on them to see the full size versions. The links were now pointing at the old version of the image, while the <img> tags were showing the new versions. Not only that, but the mismatch in dates meant that some of these clickable links were just completely broken.

To resolve this, I took something of a nuclear option: I used the Broken Link Checker plugin to scan my site for all its links, searched those links for anything that was pointing at the old wordpress.com site and then just batch "unlinked" them. That means that the new images would be safely in place, the broken links would be removed and everything from thereon should, in theory, be hunky-dory.

There are a few things that have broken along the way, like any Gallery posts I hosted have lost all their images and I don't see any means of fixing that aside from doing them all manually, plus there's been the usual "link rot" of old copyright-infringing YouTube videos no longer being available online. Plus any audio media seems to have gone walkies, too, but again, no big deal, really; I don't think anyone expects a website that has been around for nearly 20 years to suffer from no link rot whatsoever.

But anyway. I got rather involved in this process last night, starting around 11pm. I knew, looking at the clock, that I shouldn't start doing something like this so late in the evening. But then I did, and hyperfixation kicked in, and I kept going until everything was, so far as I can tell, sorted. I mean, my galleries and audio bits are still broken, but I can live with that. What I didn't really want to live with was several thousand broken image links that led nowhere. And I think I've fixed that issue.

If you happen to notice anything wrong with any old posts you find yourself reading, do let me know and I'll see if it's possible to fix them. In some cases, that may be possible; in others, less so. As I say, it's part and parcel of a site being live for this long, even if it has moved hosting and domain names multiple times in its lifespan. But hopefully it's going to stick around right here for quite some time, so I wanted to fix as many of the annoying little issues as possible. So here we are!

I hope the three or four of you who actually read this appreciate the work I put in!


Want to read my thoughts on various video games, visual novels and other popular culture things? Stop by MoeGamer.net, my site for all things fun where I am generally a lot more cheerful. And if you fancy watching some vids on classic games, drop by my YouTube channel.

If you want this nonsense in your inbox every day, please feel free to subscribe via email. Your email address won't be used for anything else.

#oneaday Day 260: Catching up

Did I miss a day? I think I missed a day. With that in mind, I'll attempt to think of two posts' worth of things to say today. Well, even if I didn't write on here yesterday (which I don't think I did), I did at least write something about The Excavation of Hob's Barrow over on MoeGamer, which you can read by clicking on this link. Click it. Go on.

I actually often find myself wondering if it's even worth linking things any more, because I really don't know if people actually click on them any more. I feel like everything I was taught about the Web and supposedly "good" Web design back in the relatively early days has pretty much gone out of the window these days as everyone's collective attention span has declined and the whole Internet, in general, has kind of gone to pot.

I sort of think we've brought that on ourselves to a certain extent, though. I know at the day job I've often been asked to "make things shorter" or suchlike, based on the belief that people won't look at anything that takes more than six picoseconds to digest, and while I don't doubt that people will click away if they're not immediately blasted in the face with some sort of blaring short-form media designed to obliterate their attention span even more than it already has been, I feel like consistently pandering to that perceived audience is just making the problem worse.

When I write, I generally write with my own preferences in mind. When I read something online, I want to feel like I got something out of what I read. It doesn't necessarily have to be learning something completely new to me, but I do need to feel like I got some sort of "value" from the experience. Maybe I got to know the writer a bit better. Maybe I found out a new detail about something I was already familiar with. Maybe I learned to look at something from a new perspective. All of those things are what keeps me reading, not whether or not an article has a bullet-point summary before the text begins so I can decide whether or not to grace this page with the honour that is my attention.

I feel like if you constantly pander to people who have no attention span, all you're going to attract is people with no attention span. I don't think there's anything wrong with someone writing something online — whatever the purpose — and effectively saying "no, fuck you, I have things to say and you are damn well going to sit down and listen to them, or just piss off". This is why I respect writers such as Ed Zitron so much; Ed works with an editor on his blog, but each individual post is still thousands of words long — even longer than the longest posts I've written here or on MoeGamer. Sitting down to an Ed Zitron post is an event, and on no occasion have I come away from the time it takes to read one thinking "I wish I'd spent that time doing something else".

And yet everything about the modern Web seems to be discouraging that kind of in-depth, thoughtful writing. We have websites posting an estimated reading time at the top of their articles, along with the aforementioned bullet-point summaries. We have asides linking to completely different pages after just a couple of paragraphs, before anyone could have possibly read the whole article. We have unrelated videos inserted into the middle of articles, vapid polls whose results aren't used to inform anything whatsoever, and, of course, if you're still foolish to browse the web without ad protection, advertising.

We are constantly bombarded with things vying for our attention and seemingly, at every opportunity, discouraging us from diving deep into things. I was looking up information on a wiki earlier and while I was doing so, a sidebar popped up with "popular posts" that were being pulled from a completely different fucking wiki on a totally different subject.

It takes effort and mental fortitude to resist all this, and honestly I don't blame anyone who just doesn't feel like trying any more. It is a real effort to maintain your focus on something these days, but I would argue it is a worthwhile effort. And to that end, I would encourage everyone who feels like they have ever been struggling to take some time and unplug from the noisiest parts of the Internet — or the Internet altogether — and immerse yourself in something that demands focus. Whether that's a blog you want to catch up on, a book, a TV show you always meant to watch, doesn't matter. What's important is that you pick that thing, then you focus on it to the exclusion of all else. Put your phone down, close all your other browser tabs, just focus.

I can guarantee you'll feel a thousand times more relaxed and about a bajillion times more intelligent after doing this for a bit.


Want to read my thoughts on various video games, visual novels and other popular culture things? Stop by MoeGamer.net, my site for all things fun where I am generally a lot more cheerful. And if you fancy watching some vids on classic games, drop by my YouTube channel.

If you want this nonsense in your inbox every day, please feel free to subscribe via email. Your email address won't be used for anything else.