Making Goals that Actually Stick

It's January, which means for a lot of people, it's New Year's Resolution time. Personally, I've never liked the idea of waiting until January to set resolutions for change, but I do like using it as a chance to review what I've accomplished in the last year and set goals for the next.

That sounds like the same thing. What's the difference between a goal and a resolution?

There really isn't one, except that resolutions get a bad reputation (probably deservedly), since by February, around 80% of people have already failed to stick to their new year’s resolution. There are a lot of reasons why that's the case - but a big reason is how hard it is to form new habits. One study found that it can take anywhere from 18 to 254 days to form a habit, depending on the person. They also found that it takes at least 66 days (or more than two months) to make that habit automatic.

There's usually a good reason that people goals give up on their goals - like competing priorities (like family and work), or temptations to go back to bad habits (like delicious cookies or an awesome new video game).

Because of that, I follow the same process every year in setting goals and ensuring I'm as successful as I can be.  I've done a LOT of research on what makes goals effective, and how to stick to them over the long term.

So, whether your goal is to code for 100 days, learn a new programming language, or start working out regularly, I'm here to talk about how you can set yourself up for success.

Getting Started

First, write down everything you want to accomplish. Then, narrow down. Start with one goal, maybe a few if they're in very different fields (for example, you want to get in shape, start a technical blog, and start saving for a house downpayment). All require commitment and time, but in different spheres of your life. Circle the goals you've chosen. If you do have multiple goals, make sure you know what their relative prioritization is - which one is most important to you? Essentially, if two of your goals come into conflict, which one is more important? You should have an answer to this question before you continue.

If you're struggling with this process, think about your motivation. Is it external? Did someone else tell you that this is important, or is this something important to you? If it is an externally-motivated goal, figure out how to generate internal (intrinsic) motivation. People are generally much more likely to stick to goals which have intrinsic motivation.

Now, the hard part. Accept that the goals which you didn't circle are going to be ignored until you accomplish your circled goals. Dividing your time and energy is difficult, but it's also the reason that many people fail to reach their goals. Trying to do too many things at once can be exhausting, and result in you falling back into bad habits.

Define Your Goals

Now it's time to refine your goals. There are a LOT of different theories on how to set (and maintain) effective goals, but most share several characteristics, derived from research by Dr Edwin Locke and Dr Gary Latham, who pioneered much of modern goal setting theory. They outlined 5 characteristics which can help you set and maintain successful goals.

Clarity: Make your goals as specific as possible. Instead of saying, 'I want to lose weight' or 'I want to learn Python', try 'I want to lose 10 pounds' or 'I want to create a text-based adventure game'. These goals are specific enough that you'll know if you've accomplished them, leaving you with a sense of accomplishment.

Challenge: Set difficult goals. Tougher goals will motivate you to work harder. Plus, even if you fail to reach the goal, the progress you'll make toward a very tough goal will get you farther toward your goal than accomplishing an easier goal.

Commitment: Demonstrate your commitment to your goal. This can be a financial investment (signing up for a year -long gym membership), or a personal one (telling your family and friends what goal you're working toward and asking them to keep you accountable). Both options will increase the likelihood that you follow through on your goals.

Feedback: Feedback helps you improve on your journey. For example, getting a personal trainer, or a friend who is working on the same coding challenge you are can be very helpful. They can provide direct feedback to help you, or just keep you motivated (and accountable) to keep working toward your goal. They can also make the task easier by helping out with complex tasks (like creating a workout plan for you, or a syllabus for learning to code). The more time you have to devote to actually working on your goal, instead of planning out how to work on your goal, the faster you'll be able to accomplish it (essentially the difference between developing a series of steps to learn back-end development and actually carrying those steps out).

Complexity: Account for the complexity of the task. If you've never coded before and you're trying to build a project from scratch, account for the extra time you'll need to learn and troubleshoot something you're unfamiliar with. A great way to do this is to break the goal down into smaller, more manageable tasks. Set these as mini-goals along the way, which can help keep you motivated as you work toward a larger goal. Plus, the more detailed your goals are, the more likely you are to follow through.

I tend to prefer backward goal setting when working on my goals, but any of the following frameworks can be very helpful! Essentially, the way this works is by thinking backward from your end goal.

For example, one of my 2020 goals was 'I want to pass the AWS Solutions Architect Associate Exam by December 2020.'

Then, I needed to think backwards about how to accomplish the goal. For example, 'I want to pass 3 practice exams with a score of 80% or higher by December 15th'.

I then repeat this process. 'It will probably take me a month of practice questions for achieve the score I want, so I should plan to finish reading all suggested whitepapers by November 15th'

'I want to read 4 white papers, so if I can read one per week, it will take me one month to finish the whitepapers. Thus, I want to finish an overview course of the material by October 15th'

'The course I plan to take is 60 hours long, and I can dedicate two hours per day to watching course lectures, so I should plan on starting it no later than September 15th.'

In this way, I have a dedicated, step-by-step plan to accomplish my goal and I know exactly when I need to start each stage of my plan. Key to this strategy is including information on how long I can devote each day/week/month to working toward my goal, how long each stage will take me to complete, and how many stages there are in total.

For other theories on goal settings:

Break the Loop

A habit loop can be broken down into three parts - a cue, a routine, and a reward. For example, I have a very bad habit of checking Twitter far too often. That breaks down into the cue (my feeling of boredom), the routine (me checking Twitter), and the reward (my feeling of interest in a tweet).

In order to break that habit, I need to replace the habit and the reward. For example, since one of my goals this year is to get outside every day, when I feel bored, instead of immediately going to Twitter, I've started getting up and making a cup of tea or going for a quick walk. Both of those serve as small rewards for me - I end up feeling refreshed, more awake and more focused. It also means that I'm changing one of the habits which prevent me from my goal (any time I'm mindlessly scrolling Twitter isn't time I'm spending outside).

Identifying the habits you want to change, what prompts them, and what would feel like a reward to you is deeply personal and will depend on what habits you'd like to change. However, identifying the habits which are keeping you from accomplishing your goals are the first step to breaking them.

A quick note that when you're writing goals, it's more effective to write positive goals (i.e. I want to get outside everyday) rather than negative goals (Watch less TV, spend less time on Twitter, etc.). Your brain tends to find the first more compelling and you're more likely to stick to it.


Physically write down your goals. Buy a notebook just for your goal tracking, tape them to the wall if you like, and tell the people in your life. Telling other people and writing it down holds you accountable, and makes you more likely to stick to it.

Plan for Obstacles

Figure out what kind of obstacles you’re going to face. If you're trying to lose weight, maybe it’ll be those delicious brownies your partner makes, or the fact that you typically order pizza on Friday nights. If you're trying to carve out time to write technical blog posts, maybe it's your daughter who wants to play a new game with you.

Then, figure out what you can do to change your environment in order to succeed. Often what determines whether or not your goal is successful is not how much self control or determination you have, but how many temptations you have.  The less temptations, the more likely you are to be able to stick to it. For example, perhaps ask your partner to save the brownies for special occasions only, or look for other restaurants in the area which offer healthier take-out options.

A big part of any environment is the people around you. Find friends who will support you (ideally folks who are working toward the same goal) - if you're trying to lose weight that might be folks at your gym, or in a local running club. If you're trying out a 100 days of code challenge, find friends on Free Code Camps forums. Be accountability buddies for each other!

At the same time, figure out who might not support you (perhaps because they want you to continue hanging out with them every week during happy hour) and what to say to them. Tell them what is changing, why, and how much you still appreciate or value them. Don't sound too apologetic - this is good thing for you and your friends should celebrate it!

For example, "I've really enjoyed getting together every week, but I'm going to have to start coming every other week. I'm trying to learn how to code and I need to spend Friday nights working on my new project. Thank you for your support!". Practice your script and stick to it.

Plan for Failure

Failure is almost inevitable when you're trying to change old habits. Accept that, and don't beat yourself up too much if you slip up. Instead, take a deep breath and get back on track - and use science. Studies have shown that people are more likely to be successful during a time that feels like a new beginning (for example, your birthday, or the beginning of new year, or a milestone like moving or starting a new job - or the start of a new week). So, even if you get off track, use a day that feels like a new beginning to get back on track.

Celebrate Small Successes

Make sure you reward yourself for meeting small goals. If you're trying to run a marathon but haven't run much before, try setting goals to run a 5k, 10k, and a half marathon.  When you meet each goal, celebrate it! Try posting on social media, telling your friends, or giving yourself a small reward (I like Snickers bars).

Check in Regularly

Keep track of your progress toward your goals - and check in with yourself (or your accountability buddy) every few months or weeks, Are you on track? If not, why not? Are there changes you can make in your environment to make you more successful? Or, is the goal less important now, because your priorities have changed? Perhaps it's time for a fresh start with a new goal.

Looking for more research on goal setting?

A Sample Template for Goal Setting

If you're interested in using this method of goal setting, please feel free to use the template below, removing my example and replacing it with one of your own!

Goal: I want to be able to deadlift 200 pounds by the end of 2021. This goal is clear (200 pounds) and difficult (right now I can only deadlift ~120 pounds). I don't need to account for complexity in this case, as I already deadlift semi-regularly.

Break it Down: In order to accomplish this goal, I need to lift consistently over the entire year (ideally, at least 2x per week).

Feedback/Accountability: I will go to the gym with my partner 2x/week, who will keep me accountable to my goal and will provide feedback on my deadlifting form.

Potential Obstacles: When it's cold, I'd often rather stay inside than go to the gym. Also, part of lifting heavy is eating healthy, and I have a penchant for snickers bars.

Break the Loop: When I'm bored (cue), I go looking for snacks (habit, while the snack is the reward). I'm going to stock healthier snacks, so when I do go looking for snacks, instead of grabbing junk food, I grab fruit or make popcorn on the stove.

Plan for Obstacles: My partner likes the gym more than I do and will be my accountability buddy. Also, I've committed to a gym membership that I have to pay for even if I don't go.

Plan for Failure: I accept that there's a chance that I can't lift as much as I want, but as long as my deadlift improves and I go to the gym regularly, I'm going to be pretty happy because I'll feel healthy (and strong)!

Celebrate Small Successes: Feeling really strong and powerful when I lift heavy weights is a huge motivator for me. That feeling (and some really great music) is how I celebrate my smaller successes.

Check In Regularly: I'm going to use an app called 'Strong Lifts' to track my progress.

Show Comments
As seen in: