Its the new year. I find that everyone I know comes up with a list of “goals” for the new year. And thats as far as it usually gets.

Why is that?

I recently read a book “How to Fail at Almost Everything and Still Win Big: Kind of the Story of My Life”. In this book the author of Dilbert, Scott Adams, discusses his life and how he conquered becoming the best at something through persistent trial and error, and serious dedication.


The best way to understand quickly what goals vs systems means to Scott:

Losing ten pounds is a goal (that most people can’t maintain), whereas learning to eat right is a system that substitutes knowledge for willpower.

Why does this matter to anybody? Well, as a fat software engineer, I can tell you that simply becoming persistent about understanding something and then putting in place a regimented system and outlook around that knowledge – you can achieve your goals. Do this without having goals. Just ride the rail of your system.

Why aren’t goals good enough? Simple: If I want to lose 10 pounds as a goal – day 1 I have failed. Day 2 I failed. Day 3 I failed. Basically ever day up until I am weighing 10 pounds less – I have failed. This sucks. Worse, because I was driven by a goal to lose 10 pounds, once I achive my goal, what keeps me from putting that 10 pounds back on? Certainly not the original goal! Avoid failure at all costs. Positivity when seeking change is critical.

A goal can’t help you keep the weight off, but a system can. Dedicating yourself to understanding what is needed to achieve a goal, creating a system around that desired goal, and then rigorous implementation of that system will provide sustaining benefits around your goal.

This way of approaching your goals will actually allow you to achieve them in a sustaining manner.

How does this apply to you as a software engineer? You can use this system for planning and achieving goals in your career. Goal: I want to make more in my career. Research: What are people that currently making more than me doing that I am not doing? Answer (for this example): Writing, public speaking, being present at events, constantly reading books, following trends, etc. System for change: Write one blog post per week. Schedule yourself to speak at an event once a month. Sign up for an audible account and read a book a month. Subscribe to RSS feeds or YouTube channels.

Then hold yourself accountable! Keep a journal. (I prefer the bullet journal) Review it daily. Plan your week. Plan your month.

How does this apply to you as a software company? You can use this system for planning and achieving goals in your company too. Goal: I want to deploy software several times a day without outages in my system. Research: What are other companies doing to achieve continuous deployments of their systems? Answer (for this example): Shipping small changes daily. Loosly coupling their systems. Aligning their software teams to pieces of the system and providing ownership to those teams over those systems. Ensuring that every aspect of the system is automated and repeatable. Etc. System for change: Constantly review the people in your organization to ensure that they align with this way of thinking. Enforce loose coupling in all systems. Prioritize tech debt that enables automation, deployment stability, and non-destructive deployments. Invest in infrastructure as code.

Then hold yourself accountable to moving this ball forward every sprint. Keep a journal for your department/team. Like you do features, review your journal and the next steps.

Goals without rigorous action are useless.

Systems have a great side effect. They become habits! A habit is something you can’t help but do. And if you can’t help but perform the steps in a given system, you will surpass your goal in amazing ways.

Is there science to prove this notion that continuously doing something can form a habit?



These, and many other commonly observed phenomena tend to show that if requires a minimum of about 21 days for an old mental image to dissolve and a new one to jell. -Dr. Maltz (Psycho-Cybernetics)

Maltz, a plastic surgeon, witnessed that his patients took around 21 days to get used to their nose job or amputations. Boiled down a bit more, 30 days is a generally accepted number of days to form new habbits.

This notion can be applied to many behaviors that will help you achieve your goals – without failing along the way.

Identify what needs to change. Identify a system that will guarantee achieving your goals. Then commit yourself to that system.