While I try to keep this blog focused on Japanese-related stuff, once in a while I will post about something else, and waiting about blogging is one my favorite topics for that.
Several years ago I switched this blog from a basic WordPress.com account to a self-hosted account. While there is some cost associated with this, it gives me more customization to do basically anything I want on the site, including add custom dynamic content (like this project which has been in an alpha state for quite some time).
A few weeks back I was noticing that when I posted an article it took a significant amount of time, sometimes more than 10 seconds, and while this was annoying I thought that it wasn’t a big deal since I only posted a few times a week. However, when I tested the main site I found that all the pages were taking a long time to load.
Soon after I contacted customer support for my provider and they showed me an analysis of my site using GTMetrix, a tool that provides amazingly detailed performance analysis with the goal of helping to find bottlenecks to improve loading speed. They also gave a handy list of optimizing hints to help make things faster.
At first, I thought the performance slowdown was a problem on their end, but looking at the analysis they implied there was little they could do and it was up to me to optimize (though they would still help with specific questions).
I tried a bunch of things, but there was really only two things that really helped. The first was cutting down the size of an image that shows on every page (the one at top right). I had recently changed from one that was much smaller to a larger-sized one, and when I put back the old one things load time seemed to improve somewhat. This made me more aware that image size really matters and in the future when I put images I will be careful about their size, reducing JPG quality to a point where the size is small without running the quality too much.
The other thing was setting up a WordPress cache. If you are familiar with configuring WordPress, you know it’s pretty easy to add plugins in just a few clicks. I ended up trying “WP Super Cache” and was very satisfied with the results. There is a bit of inconvenience since sometimes you make changes which don’t reflect and a manual cache delete is required, but so far I haven’t had that issue too frequently.
I was a little surprised that this sort of caching wasn’t built in, but I guess because of the plugin nature of WordPress only the bare minimum is included, and the admin is expected to configure everything else by him or herself. For blogs that only post once in a while I doubt such a cache is really needed, but with over 500+ articles it seems that things will start to slow down.
If I really to optimize things more I could probably spend more time on it, but I’m happy with the speed now. I could also probably shell out some more money for a faster server as a quicker option, or possibly change providers (though that would probably be a lot of effort). I will keep my eyes open for more optimization ideas, however. (Update: I tried the free version of “WP Fastest Cache” and turned on some of the minify/combine options, but the result didn’t seem much better).
While some people might think it wasn’t worth all this effort to shave a few seconds of time, but since a lot of people end up on this blog (and surely many other blogs) from google searches, you can assume they are in the middle of researching something and don’t necessarily have ample time or patience to wait 10+ seconds for a page to load. I know that sometimes when I am in a hurry I would cancel a page load that was taking too long and choose another option.
Looking at my statistics after these changes I saw a significant jump in hits compared to the previous week, so this shows that loading time really does matter.