SERVER MIGRATION

Moved my personal site(s) to a new VPS managed by ServerPilot. Let me know if you see any wonkiness. Escapist Reads sites are hosted separately and were not changed.

Write-up on ServerPilot coming soon!

Fixing Synergy Mouse Lag

Ever since El Capitan came out I’ve noticed so much mouse lag while using Synergy that it was nigh-unusable. I was hoping Sierra would fix this (assuming the issue was Apple’s), but that didn’t happen. Lag continued. Because I have both Macs and PCs on my desk simply switching to Teleport wasn’t an option.

Then I discovered a Stack Overflow discussion that mentioned it may be how El Capitan/Sierra handle power management for the wifi card. They suggested pinging your Synergy server repeatedly to resolve the issue. To my surprise this absolutely did the trick.

So if you’re experiencing extreme lag using Synergy over wifi on your Mac(s) fire up your terminal emulator of choice and run the following:

ping -i 0.1 -s 0 $IP_OF_SYNERGY_SERVER

Comments Enabled

Whoops. Forgot I had disabled comments awhile back while troubleshooting a few things. They’re back on.

Preparing for NaNoWriMo

Like most avid readers I’ve always felt like I’ve got a novel somewhere inside of me. I used to love writing short stories when I was younger, and I really have no excuses for why I stopped doing it as I got older. This year I’m hoping to change that by participating in NaNoWriMo this year. Even if I don’t get anywhere close to the 50,000 word goal I’ll feel better just knowing that I tried.

Of course now I need to decide how I’m going to take a stab at it. I’ve got the tools, but the how has eluded me. When I wrote short stories I was a total pantser. I’d love to think I could just sit down and have a full-length novel pour forth from my brain over the course of a month but… yeah.

I’ll be writing about my progress preparing for NaNoWriMo here — if only to use as a public form of self-motivation.

MY WIFE IS A MADDEN WIDOW (AGAIN)

I had planned to spend my four day weekend finishing up some actual articles and doing some things around the house until I remembered Madden 17 came out this week. Now I plan to pretend I’m single in college again and spend my time eating frozen burritos, chugging Mountain Dew, and leading the Steelers to the Super Bowl.

EA does a lot of things poorly but the Madden team has done a stellar job this year. The graphics on the PS4 are the best I’ve seen in any game and the gameplay changes are superb. Even if they seem to have greatly increased the difficulty of aggressive catches. Thankfully Antonio Brown is a stud even with the changes.

I’d write more but I have to get back to beating the Browns into the ground…

SAVE SPACE WITH UPTHERE

I love cloud storage. Dropbox has been a part of my workflow for years and with iCloud Drive becoming more integrated with the upcoming macOS Sierra I’ll be tossing more files in there as well.

But as amazing as both of the products are they both have one glaring drawback. On my Macs I have to have a copy of the files residing on its storage if I want to easily access and work with the files in iCloud Drive or Dropbox. With everything making the switch to SSD many consumers (myself included) have opted to go with a smaller drive1 to save money.

Enter Upthere. Rather than integrating itself into Finder it works as a standalone app. You can still link your photo and music libraries for automatic syncing but for other file types you’ll simply drop them in the Upthere app. When I began using Upthere this extra step seemed like a pain in the ass. But I like trying new tech so I dutifully uploaded over 4GB of photos. Then I saw something amazing.

After uploading all of those photos Upthere is only using around 50MB of storage on both my iPhone and Mac. That is AMAZING.

Of course the downside to using a standalone app is when you want to do things like save a blog article you’re working on to Upthere. You need to open your text editor of choice, save it to disk, and then drag it to Upthere. I’d love to see them offer some sort of an API to allow developers to offer a native “Save in Upthere” option to make remove that bit of friction.

With that said Upthere has quickly become my go-to piece of storage for storing things like PDFs, photos, and videos that I either don’t want to have taking up space on my Mac or that I want access to from all of my devices.

Upthere is currently offering a free trial of the service and then after that it’s $4.99 a month for 200GB of storage. If you’re finding space getting tight on your devices it’s definitely worth checking out.


  1. 256GB in my case. 

WHY I UNINSTALLED POLYMAIL

Polymail is the new hotness for iOS/Mac email clients. As a fan of the deceased Sparrow and Mailbox I downloaded the iOS version when it hit the App Store.
Then I waited two weeks to get my invite code.

My first thought was, hey, this is a pretty app. Then I forgot about it about it until I got my new MacBook. When I was setting it up I decided to take the Mac version of Polymail out for a spin. I downloaded it, signed in to my Polymail account, and then had immediate access to all of the email accounts I had set up in the iOS app. No re-authentication required. Yuck.

Two-factor authentication is a must on any account of even middling importance these days. When an email app doesn’t offer it on the account you have through them and doesn’t require you to re-authenticate with your email accounts, well, that’s a problem.

Needless to say I removed Polymail’s access to all of the accounts I had set up in it and then uninstalled it off of my devices. In 2016 it’s depressing to see an app like this not take security seriously.

OOPS

Because I’m cheap thrifty I was using UpdraftPlus to backup this site to a free Dropbox account. It worked swimmingly. Every night I’d get a backup of the database and once a week a backup of the media. It worked like a charm.

Then the incident happened. Because I also synced that Dropbox folder to an external drive hooked up to a machine at home a family member who shall not be named wiped out multiple Dropbox folders to clear out space for who knows what. Not a big deal because I could just run a new backup, right?

Wrong.

In a perfect storm of events I had closed my account at Linode a couple of days beforehand because I was moving back to a $5 VPS at Digital Ocean.1 If all had gone according to plan I would have only been down a day while I made the move except that things got busy at work and a day turned in to a week.

So yeah. Oops.

Now to head over to The Internet Archive and see if I can find any posts there.2

And yes, I’m now backing up to multiple locations. Lesson learned!


  1. No knock on Linode. They’re awesome, but the $5 plan at DO is more than enough for my needs and saving $60 a year is saving $60 a year. 
  2. Wayback Machine FTW. Was able to snag most of the posts I remember writing. 

KEEPING TRACK OF MY BOOKS

I read. A lot. Leave me unsupervised in a bookstore and I’ll walk out of there with a dozen new books. This isn’t the worst vice to have, but I’ve noticed more and more that I’ve bought another copy of a book I already own. Do I really need three copies of Dan Brown’s INFERNO? Probably not.

So how do I solve this? I’ve used Goodreads for years and, while it’s social features are awesome, it sucks terribly for keeping track of the books you own. Or maybe it just sucks for how I want to keep track of books I own. This mainly came down to how Goodreads forces you to only use shelves to catalog everything. I gave it the ol’ college try, but I ended up with an unwieldy collection of shelves and simpy stopped using it for keeping track of what I own.

Enter LibraryThing.

LibraryThing is a book organizer’s dream. It offers shelves like Goodreads, but it also has tags. Tagging support alone makes it easier to categorize your books. No longer do I need a separate shelf for every sub-category that I want to use.

LibraryThing also has built-in support for viewing stats about your library. I tried (and failed) to use shelves on Goodreads for things like female author, translation, etc. LibraryThing does this for me. Hurray for less work!

LibraryThing does fall flat for a few things though. I’ve seen comments from others on how their recommendation engine is top-notch. Yet when you click on a title they don’t offer any information on the book. Not even the cover blurb. Yuck.

The site is also nearly unusable on mobile. They’ve got TinyCat in the pipeline, but I don’t know when (or if) it will become available for regular users. Thankfully they do have a decent, basic mobile app on iOS. I can use it scan in books and see what I’ve currently got in my library. Since that’s all I’m using LibraryThing for it’s been good enough for me thus far.

So right now I’m still on Goodreads. I use it for tracking what I’m currently reading, seeing what my friends are reading, and for tracking books that I want to read. Goodreads excels at the social stuff (especially since their mobile app supports their groups), and I’m not willing to give those features up even if LibraryThing is my new go-to for actually keeping track of what’s on my shelves.

SELF-HOSTING WORDPRESS PART 1: THE SERVER

Over the years I’ve gone back and forth between self-hosting and making use of services like WordPress.com. Letting someone else handle the backend is a great idea if you’re not comfortable doing it yourself (or simply don’t have the time). For me, well, I need to tinker. If I can’t I end up getting annoyed and then I don’t do anything with the site. So self-hosting it is.

If you want to self-host you really only have two options: shared hosting (where you can install what you want and do what you want with that software) or running your own server where you get to control everything. I opted for the latter.

But enough about the why. Let’s talk about the how.

I went with Ubuntu 14.04 LTS1 for the OS. I’ve been a Debian user for years so making the move to Ubuntu and their slightly more up-to-date LTS software was easy as pie. I’m not going to go over how to create the VPS itself as Digital Ocean has excellent documentation on that already.

Now that you’ve got your server installed, now what? The first thing you’ll want to do is make sure everything installed is currently up-to-date. On Ubuntu this is easy as running:

sudo apt-get update && sudo apt-get upgrade

Bam.

Now it’s time to install everything you need to run WordPress. In the past I used to set up nginx, PHP, etc. by modifying config files I’ve saved from other installs for whatever site I’m wanting to set up. That works, but is more work than it needs to be. Thankfully I had previously discovered EasyEngine. EasyEngine is a set of Python scripts created by folks at rtCamp. Since they were usually the first place I looked for WordPress + nginx guides I felt pretty confident giving EasyEngine a try.

Guys. EasyEngine is fantastic. In five minutes I had nginx set up with HHVM, HTTP/2, and full SSL support. So awesome.

Installing EasyEngine is simple. Run:

sudo wget -qO ee rt.cx/ee && sudo bash ee

That commands adds the repos Ubuntu needs to install things like nginx mainline and HHVM. Once that’s done you’ll want to take a look at /etc/ee/ee.conf to see if there’s anything you want to change. Personally I changed it so that I’m asked to set my own database and table prefixes when I set up a site. Their defaults are sane so it’s entirely up to you if you want to make any changes.

EasyEngine has a ton of options for installing a new site. Here’s the options I used for setting up thatchrisblack.com.

sudo ee site create thatchrisblack.com --wpfc --hhvm

--wpfc tells EasyEngine to set the site up with nginx cache support and --hhvm gives me HHVM support rather than PHP 5.

You’ll notice that the above commands don’t mention nginx mainline or SSL support. That’s because I set my site up before EasyEngine offered built-in support for mainline and Let’s Encrypt. No worries though because EasyEngine makes it incredibly easy to add those options later.

First I ran: sudo ee stack remove --nginx && sudo ee stack install --nginxmainline

10 seconds later I had nginx mainline up and running with HTTP/2 support.

Since I also wanted SSL support through Let’s Encrypt I then ran: sudo ee site update thatchrisblack.com --letsencrypt

A short time later connections to the site were using SSL by default.

Thanks to EasyEngine setting up this site on Linode took about 15 minutes total. That sure beats my old method of installing everything by hand and then copying my configs over.


  1. Since this article was written I’ve since upgraded to 16.04.