Small Pieces, Loosely Joined

October 31, 2021

If you’re a software developer, you probably at one point or another have heard of the Unix philosophy of “small pieces, loosely joined.”

The idea is that instead of creating giant monolithic applications that try to do everything, you build small apps that do one thing well and make it easy to wire them up however you want.

This way, each app can easily be updated or replaced, and you can achieve incredibly sophisticated results by connecting them and piping data through a series of apps.

Any system that needs complexity to function is fragile and prone to breakage.

I’ve noticed the same thing with productivity.

I might develop an excellent system for tracking habits and tasks where everything needs to be tagged and categorized. The problem is if it’s complicated to implement every day, I won’t do it.

Instead, it’s best to start with the simplest solution to your problem. If something about it doesn’t meet your needs, what’s the simplest way to meet that need? There have been months when I was overwhelmed, and the only way I could get through my weeks was with a simple weekly checklist.

I had a single page with two columns. On the left side, I’d list all the things I needed to work on that week. On the right side, I’d list the days of the week and room for five items.

I wasn’t using OmniFocus or Things, just a piece of paper sitting in front of me on my desk.

Here is my Weekly Checklist.


Profile picture
Written by Andrew Shell, a web developer from Madison, WI.