Articles
comments 21

Site Updates and Why it is Important to do

If you visited Broken Paintbrush over the last week, you might have noticed a bunch of server errors, dead robots, or broken pictures. The reason is simple: I have been attempting to upgrade my blog services with site updates.

Important Site Updates

For many of you this article will be a bit more boring as you may not care about server performance and what not, but I’ve always tried to be as transparent as possible with Broken Paintbrush and my hobby blogging journey. So below I’m going to share what I changed, why, and what’s still on my to-do list.

Perhaps this is a bit of a self-reflection post, but I hope that you might also glean something off for your blog. At least give you something to think about as you grow.

The Background

Ten months ago I had declared I was making some changes to Broken Paintbrush. In summary: I was focusing on your experience on my site, adding more tutorials, and improving the articles provided to you.

While I have been working on the articles and tutorials and will provide a summary of the accomplishments closer to the end of the year, this week I have been making more changes to the site to improve performance.

What Site Updates I changed

Over this last two weeks, I made four significant changes on the back end, in part because they snowballed on each other. It may not have been the best decision as each change caused my site to go down in one form or another. But at least it was isolated to just a few days, rather than hit and miss for weeks.

Bad Robot

Improved my hosting package

First up, I upgraded my web hosting package. As a WordPress user (and not a WordPress.com customer) I need a hosting company to serve up the blog. For years I have been using a shared server system hosting four of my sites along with who knows how many other customers.

Why?

The biggest reason for upgrading was improving the page loading speed and uptime. Using Google’s Pagespeed Insights tool, my shared server took 2-10 seconds to just provide the HTML and even longer to provide the images, CSS, and Javascript required to make it look like a modern web page.

Considering the attention span of the modern web browser, I figured I lost a bunch of potential visitors. Visitors who may have turned into readers, commenters, and joined in the community of hobby bloggers.

By upgrading, the load time has reduced to ~0.2-0.5 seconds. It still takes some time to load the images and other files (see the CDN and future work below), but at least things start to show up much faster now.

How?

For the last eight years, I’ve been using Dreamhost’s shared server plan. It’s enabled me to grown my blog from its humble beginnings into what it is today as well as three other sites that I host.

Interested in Dreamhost? Clicking through this link will not only save you $25 on the shared server plan, but they will give me a chunk of change too. One save some cash, and I can continue to improve this site!

While they have had Virtual Private Servers (VPS) that are essentially your personal server rack, they were alway more expensive and arduous for what I needed. Instead, Dreamhost released a dedicated server package for WordPress sites called DreamPress.

If I had set up my original blog correctly eight years ago, upgrading would have been as simple as clicking a few buttons, waiting an hour, and Boom! I would have all the power in the world!!!

Instead, my site broke and tried to revert to a previous URL (I had started at 14th.dnyarak.com then moved to bp.dnyarak.com before finally getting the brokenpaintbrush.com URL).

Fortunately, the support team at Dreamhost was able to sort out all the demons and get it back up. Dealing with support was a mixed bag, unfortunately. They were great when they had a task to complete, but were REALLY slow to respond (and have no call-in number). Extra frustrating while the site is down.

Added SSL (https://) Encryption

The next step was to enable SSL encryption on the site. You typically see when sites redirect you to the https:// version (notice the extra s at the end). This allows my server to exchange data with your browser as encrypted messages.

security

Why?

I took the plunge to switch to SSL for two reasons: your trust and Google ranking.

By using SSL, your personal data (like when you enter your name and email in the subscribe form below) is encrypted. Only you and my server get to see it. If I do ever add a marketplace, any financial data you add would also be secured. You can read more about in on Wikipedia or watch this short video on YouTube.

The second reason is that Google has been pushing SSL to be used for all web traffic. Sites that use encryption get a slight boost in search rankings (meaning more visitors from Google searches). But I think more importantly for the long term, is that eventually, I believe that they will penalize sites that don’t use SSL.

How?

So SSL sounds a bit complicated when you consider you need to get a key, have it signed by some third party and tell everyone that your key is OK to use.

Fortunately, DreamHost made this pretty straightforward and many other hosting providers as doing the same. They use a service called Let’s Encrypt that provides free certificates for your site.  With another few clicks of a button, brokenpaintbrush.com had a legitimate certificate and adding https:// in front would encrypt all your data.

The next step was to make sure my WordPress site used the encryption. To do that, it took two different steps. The first was to change the site’s name in Settings->Generall. There are two URL fields to specify where you site lives so that it can automatically general internal links. Adding the ‘s’ to the URL fixed all internal links to use the encrypted version.

The next step was a bit more complicated as it required changing the config.php – a file that lives on the server. I used Filezilla to SFTP onto the server and edit the file, and if all of that didn’t make sense, find someone who can help you do it.

I added the following two lines to the config.php file:

define('FORCE_SSL', true);

define('FORCE_SSL_ADMIN', true);

This forces all traffic to the site to be redirected to the encrypted version, ensuring no one goes to the unencrypted version by mistake.

The last thing that I had to do is re-sync my Disqus comments since it views the encrypted version of the site differently. I won’t go into it here, but they have Migration Tools that fixed the missing comment issue.

Enabled a Content Delivery Network (CDN)

Cool, so now the server runs faster, and all the data is being encrypted. Next up was to re-enable a Content Delivery Network (CDN). This is a set of servers around the globe that host copies the larger portions of a website, like photographs and videos.

mailbox

Why?

The reason comes back to loading time and that our hobby (and thus my site) heavily relies on images. By using a CDN, visitors from Europe download the pictures from a server located in Europe, US visitors from the US, and Asian visitors from Asia. (Sorry Aussies, the Kangaroos still need to carry your pictures in 😉

How?

Setting up the CDN was probably the easiest changes I made as DreamHost, once again, had most of it automated. One of the services they provide is DreamObjects, a cloud-based storage space.

After signing up for the service (it’s only 2.5¢ a GB!) it was only a matter of installing their plugin, DreamSpeed and connecting the two. All 1,286 pictures have been copied over and being served up as fast as each region can load it. All this, and I’m expecting to pay, oh roughly 7¢ for the month!

Setup Automatic Backups

Do you know how easy it is to completely destroy your website? Yeah me either. But I’ve come close a few times (include the server upgrade mentioned above). Just as it’s important to back up your computer, backing up your web site can potentially save you heartache in the future.

While I’ve set up an automatic backup system, manually backing up your site now and then will create snapshots of where it’s been. If your server gets fried, you accidentally delete some random file, or a gremlin gets into the code, you can always load the files back in and start from that save point.

Why?

To be honest, before setting this up, I backed up my site twice. Eight years and I’ve back it up twice. Perhaps I’ve been lucky or now I’m paranoid (seeing a dead robot where your site was can do that do you), but I can’t believe I didn’t do it before.

How?

Ready to guess it? Suprise! It’s another DreamHost service, well actually a different plugin that uses the DreamObject service. The plugin automatically backs up the files and database of WordPress and stores them on the DreamObject cloud storage.

I’ve set it up to backup weekly and store 15 copies of the site. So far each copy is only 2MB (doesn’t save the pictures right now) which can also be downloaded to my local drive (or in my case Onedrive).

Changes Going Forward

Whew, that was a bunch of changes, and between that, having family in town, and the two young sons, the last two weeks have been tough. But they were significant hurdles I need to get over before doing more work on my site.

Oh yeah, I have a pretty big backlog of things I plan to do, but over the short term, I’m going to focus on three site updates: a blog audit, organizing the site, and starting a blog roll.

Blog Audit

hard-work

A blog audit sounds much scarier than it is. The problem is that my blog has gone through many gyrations over the last eight years. Not only has my painting and photography skills improved, but the focus of my site as well.

The idea is to go back through my old posts and make sure they are still relevant and work correctly. Bad pictures updated, multiple small posts combined, and the crud deleted. This work also includes re-organizing all the categories and tags that I’ve used over the years.

The end goal is to have a more streamlined site where it’s easier to find content and potentially dig into even more articles as you go. I want Broken Paintbrush to turn into a site that people stumble into from a Google search or a retweet and stay for hours reading tutorials and editorials.

Better Organize Site Links

That rolls right into creating a better organization to the way the site works. The menu items, internal links, and those “recommended articles” all need to be revamped. Not that it’s bad right now, but so many good articles get lost in time.

So finding ways for readers to locate the content they are looking for or just peruse, both need some structure to the site.

Blogroll

The infamous blogroll. It seems a quirk of our hobby community that the blogroll is still such a big deal. I know people who go to Faeit212 just to catch what’s coming through the blogroll.

I find it odd since I’ve been using feed readers like Feedly for so long. But if that is what the readers use, who am I to fight it? So at some point soon I will be starting the Broken Paintbrush Blogroll – pre-populated with all the feeds I follow.

Your Suggestions?

Well, shit, that was about the longest, boringest post I think I have ever written! Perhaps you just skipped to the end, but for those who read through it all, I applaud you!

In the end, I have been making these updates to better serve you, my readers and my community. With that said, I am always open to your feedback and suggestions for future site updates.

Did the upgrades help or are the bugs still working out of the system annoying you? Do you wish I added (or removed) something from the site? Let me know in the comments below.

If you ended up on this page because you also were looking for how to setup a CDN or SSL but are getting stuck, leave those comments below too. I may not be able to help you, but I might be able to give you pointers from where I got stuck.