Programming Idea #3: Make It Happen

This is the third article in a four-part series on programming effectively, which is based on my new learning tool, Programmer’s Pyramid. Each article contains one big idea and one or more ways to apply it. In case you missed the last one, you can read it here.

The first two ideas in this series on learning to program effectively covered what to focus on and how to go about it.

Today I pick up where these two themes left off by raising this question: now that you’ve got a roadmap in place, how can you tell if you’re making programming progress?

It’s a tough question to answer. Quantifiable data is hard to come by. Problems can take hours or days to solve. Concepts take time to learn. Programs take time to write.

And yet we need ways to measure our progress to see if the time and effort we’re putting in is paying off. In today’s “Apply It” section, I offer two tactics you can use to gauge your programming progress.

Apply It

1. At the end of the day, ask yourself this question: how am I better now than I was this morning?

Then, write a few words to answer it. The aim is to find something positive about your programming work from the day, no matter how big or small.

Alright, so the problem remains unsolved. However, you still made progress because you figured out the correct data structure to use, for example.

Or you sketched out an alternative solution in your notebook that you’re going to implement tomorrow. Or a concept you’ve been struggling with finally makes sense.

Yes, these are small wins. But these small wins matter, a lot. After all, success is simply a bunch of small wins compiled up over time.

So take a few minutes and recall these small successes. Doing so will fuel your momentum and your confidence.

2. Have an objective each time you sit down to program.

Instead of thinking to yourself, “I’m going to program for the next two hours,” identify the specific outcome you want each time you sit down to program.

For example, “add CSS to the index page.” Or “write an alternative solution to “x” problem.”

These objectives are specific, and that’s the point. That way, two hours later you’ll have evidence of your progress.

Programmer and writer: amymhaddad.com | programmerspyramid.com | I tweet about programming, learning, and productivity @amymhaddad

Originally published on amymhaddad.com.

Programmer and Writer: amymhaddad.com | programmerspyramid.com | @amymhaddad