dotfiles: Hone your software tools

My dad taught me that if I took care of my tools, they would serve me well and last a lifetime. Software tools are no different. If you give them attention, they will serve you well.

Our primary tools as software craftspeople are text editors, shells, and version control systems. These tools are refined via dotfiles. dotfiles are those files and directories on your computer that often begin with a . and hold configuration settings for softare. .bashrc is a well known dotfile that stores settings for bash like a custom PATH or short aliases for frequently used commands.

Careful attention to your dotfiles unleashes the full power of your tools. With my dotfiles and two keystrokes, I can run a full test suite or a single unit test or search my entire project in a split second. By studying these configuration files, you learn all the options that are available to you.

How do I start taking advantage of these files?, you might ask. Look at how others do it. is a great resource to start. This site contains plenty of example user repositories and a collection of tools to control dotfiles to get you going. If you use Vim, Zsh, or Git, you can take a peek at what I’ve done to my dotfiles (you may also learn something even if you don’t use those tools).

Don’t chop down your next software project with a dull axe. Hone your software tools.