I monitor a handful of websites with some critical information on them. I also have a Synology NAS. Here’s how I created a pipeline for mirroring and archiving these key sites onto my NAS.
Test-driven development (TDD) involves running automated tests. A lot. If you have a function with five tests, you might easily invoke your test runner 50 or even 100 times before all tests are passing. Any action we take that often is a natural candidate for automation.
With as much as we use modern technology to automatically monitor, observe, and report on so many different systems, I think it is important to manually check the viability of these same systems from time to time. While the quality of sensors and metrics always seems to be improving, there are still loopholes and lapses […]
Roughly six months ago, I purchased TextExpander. I now wish I’d purchased it ten years ago. It has saved me from countless hours of typing, as well as the errors that come along with manual typing. Here are some of my favorite uses of TextExpander.
I’ve heard a lot of great things about Workflow for iOS and decided to give it a try. Frankly, at this point, I’m frustrated with it. Here are my findings so far.
OmniFocus has become my personal task tracking tool du jour, and I’ve come to rely on it for a morning reminder of my daily routines. One of those routines is to clear my Evernote inbox–things in that notebook need to be filed away for long-term storage while I can still remember why I put them in the […]
Setting up a new laptop can be disorienting. It’s easy to forget all the configuration tweaks that accumulate over time. With just a little work upfront, a configuration management system can turn those notes into executable documentation, making it easy to reproduce a heavily customized setup on other laptops down the line. While there are […]
I’m a big fan of Ubuntu & Debian’s unattended-upgrades package. I can install and configure it to automatically update packages and email me results every night. Sure, I’m aware of and can immediately address the high-profile security bulletins & fixes. But what about the more subtle, less severe problems?
Any realistic application is hard to test. Often much of the complexity is unavoidable, but sometimes things are harder than they need to be.
Automation is good. Performing tasks manually is bad. Performing tasks manually is especially bad when the tasks are annoying. Let’s use a Ruby script to alleviate the pain of an annoying task. Today’s annoyance: testing and working through the kinks of a brittle, ugly data import process. We are planning to deploy Fedora Commons into […]