Automate and standardize everywhere possible
Automate and standardize
Eliminate drudgery by investing in automation and standardization.
This has a slightly more practical bent. Investing early in personal and project-based automation pays off compound interest dividends much later on. Personal productive automation that you invest in early on, and along the way as you work, are like compound interest. The earlier on you invest in defining the categories of things that can be automated, the faster you will find yourself running your project later on, and the fewer errors related to manual and out-of-order execution of steps you will find.
For implementing automated workflows in your projects, see how to use CI/CD to automate tasks. This shows how to automate testing, building, and deployment processes.
For automating repetitive analysis tasks, see how to create one-off scripts. These scripts can be automated to run on schedules or triggers.
For automating documentation generation, see how to write effective project documentation. Automated docs keep your project documentation current with minimal effort.
For automating code quality checks, see how to write effective tests. Automated testing ensures your code works correctly as it evolves.
The easiest things to automate are oftentimes not the biggest. Rather, they are the small things that occur over and over. These are the things you should automate.
I put this into practice in the repository that houses this book's content! The website is published by continuous integration and deployment. The book is published to LeanPub via an API call, and it is also auto-published to GitHub pages. I no longer have to worry about manually publishing the book!
See this philosophy in action
Automation pays compound interest. Here's where I've implemented it and seen the magic happen:
This book's publication
I practice what I preach - this book automatically publishes to multiple platforms through CI/CD. Every git push triggers automated testing, building, and deployment. I write once, publish everywhere. The beauty of this approach is that I no longer worry about publishing workflows.
Daily workflow automation
The Shell aliases section shows micro-automation - turning ls -la
into ll
, or git status
into gs
. These save seconds per use, hours per week. What are the advantages of this approach? Your fingers learn the shortcuts, and your brain stays focused on the problem.
Project setup automation
See Repository structure where cookiecutter templates eliminate the "blank project" problem. Run one command, get a fully configured project with tests, docs, and CI/CD ready to go. Just-in-time adoption of a practice is preferable to overthinking project setup.
Environment automation
Pixi task automation demonstrates how pixi run test
or pixi run docs
standardizes common operations. No more remembering complex command sequences that break your flow.
The result: You spend mental energy on problems that matter, not repetitive tasks.