# Home

• ## Warbreaker

I wish it hadn't taken quite so long to get to Warbreaker. It's really quite a good book, right up there with pretty much all of the rest of Sanderson's works.

• ## Nexus

It's been a while, but I've finally finished the Nexus series by Ramez Naam. Near future sci-fi / thriller, they're great reads with some interesting technology and social/psychological repercussions therefrom. It's also combined with rather a lot of action, especially in the first two books.

Overall, they're a bit long and start to drag at time (too much action, who would have thought?). They're still worth reading.

• ## Dresden Files

Well. That's a lot of books.

I've read the Dresden Files by Jim Butcher a half dozen times already. Always room for once more!

More specifically this time around, I've been looking for audio books I can listen to while either commuting to and from work or during the slower times of work itself. The Dresden Files has the advantage there in that I've already read them so many times I can miss small sections without actually losing much in terms of overall plot. It also has the advantage of being narrated by the excellent James Marsters. Well worth it.

My thoughts on my n+1'th time through the series? Just as good as before. The first books are rough, but they just keep getting better. It's by a fair margin my favorite urban fantasy series. I'd probably go so far as to say my favorite series, full stop.

Individual reviews follow. There are a few spoilers for individual books and even more in later books for the earlier ones. You have been warned.

• ## Ensuring docker-machine is running

When developing using docker on OS X, you'll currently[1] have to use docker-machine to spin up a virtual machine that is actually running the docker containers. Running a virtual machine takes up a bit more in the way of resources than just the docker containers, so if you're not actually developing at the moment, it's helpful to be able to start up the virtual machine only when you need it.

The current way I have to do that:

$docker-machine start default$ eval \$(docker-machine env default)

What's worse, the latter command has to be run for every shell that you start up. It's by no means a hard pair of commands and you could easily wrap them in an alias or put them in your .profile equivalent (which is what I used to do). But unfortunately, I found a completely unrelated bug in tmuxp: if the shell takes too long to start up, tmuxp essentially won't work. The above eval command took long enough to hit this limit.