Programming Self Improvement

Become a Better Coder by Keeping a Programming Journal

Joel Lee 21-10-2016

The struggle in becoming a better programmer is real. I’ve been programming since I was 13, yet still find it both challenging and rewarding. There’s nothing quite like it. But it can be overwhelming at times, leading some people to give up and quit.


To become a better coder, you have to be intentional — in how you read and write code, in how you study new concepts, and even in the way you take breaks and refresh your mind. Intention is key to progress.

We’ve already shown you how meditation can make you a better coder. Now you can kick that up a notch by keeping a programming journal as well. In this post you’ll learn what that is, why it’s helpful, and how you can get started right away.

The Benefits of Journaling

For a long time, I thought of journaling as an activity reserved for angsty and anti-social teens — but that’s completely wrong. Nothing more than an outdated stereotype. In fact, journaling is really useful no matter how old you are or what you do.

It helps you articulate your thoughts.

If you’re like me, you probably tend to “think through” your coding problems. Trying to implement an algorithm? You run each step through your mind. Need to design a new class? You sit in front of a blank class file, thinking about what variables and methods it’ll need. Stuff like that.


And that’s fine for small stuff, but can be unwieldy — even counterproductive — when you have to tackle something more advanced and/or complex.

That’s when a journal comes in handy. It gives you a place to work through your thoughts (e.g. algorithm steps, design process, or whatever else) in a concrete way. You can see everything before you. Not only does it make you less prone to errors, but it’ll help solidify those concepts in your mind.

Image Credit: 32 pixels via Shutterstock

It can make you more productive.


The above-mentioned process of “unloading your thoughts” is more important than you might realize. As it turns out, the simple act of jotting down a task/problem/thought can free up your mind and improve your concentration.

For example, unloading the details of that newly-designed algorithm into your journal can let you focus on other tasks without wasting “brain CPU cycles” on keeping those details at the back of your mind.

A journal also forces you to slow down and think. It’s tempting to rush into an implementation, and sometimes that works out fine, but you’ll be better off if you think through the entire solution before you write even one line of code. One hour of planning can prevent many hours of debugging!

It can improve physical health and mental acuity.


While it isn’t necessary, I recommend that you journal by hand. Get off the computer, crack open a pocket notebook, and write with a pen that feels good in your hand and on the page.

It lets you take a break from staring at a monitor all day, which can cause problems like poor posture and eye fatigue. It also gives you a reason to get up and walk around a bit, which has real benefits for your brain.

But that’s not all — there’s something special about physical handwriting that activates a different part of your brain, resulting in greater range of creativity, improved problem solving, and better retention of ideas.

Image Credit: In-Finity via Shutterstock


It records a history of your progress and development.

This may be the biggest benefit of journaling, especially for new coders. The hardest part about being a newbie is being blind to your own progress and feeling like you aren’t moving forward. But each journal entry represents a discrete achievement. It feels good, and that’s priceless when learning.

It’s also useful for staying motivated on long-term projects because the journal acts as an objective reminder of how far you’ve come. When you feel like you aren’t making progress, the journal tells you that you have — and that can be a great motivating boost.

Lastly, a journal can be physical evidence when you run into patent or copyright issues, but only if you date and sign your entries. This probably won’t be much of an issue unless you work on big projects with millions on the line, though.

What to Write in a Programming Journal

Let’s say you’re convinced. You want to start. But how? Again, I recommend a pen-and-paper approach (such as with a Moleskine notebook) but if that’s not an option then I recommend using a Markdown editor like Haroopad, MacDown, or Typora. Or you can go with something more traditional like OneNote or Evernote.

Once you have that set up, it’s time to start writing.

Date and signature. Always date your entries for posterity. If your note-taking app can do it automatically, even better.

Problems encountered. When you run into an evasive bug or a conceptually-tough algorithm, write about it. Start with a description, when it seems to occur, and a list of possible causes. If you can reproduce it, include those steps. Sometimes the act of writing these things can lead you to a solution.

Image Credit: Sky vectors via Shutterstock

Solutions explored. As you try to solve the problems above, record your attempts to fix them. If the solution works, great! If it doesn’t, record why it failed. If a solution is suboptimal, make note of the shortcomings so you can iterate later.

This methodical approach to bug-fixing is extremely helpful, especially when you’re first starting out and feel overwhelmed by a bug or algorithm How to Learn Programming Without All the Stress Maybe you've decided to pursue programming, whether for a career or just as a hobby. Great! But maybe you're starting to feel overwhelmed. Not so great. Here's help to ease your journey. Read More — but veterans can benefit from this too.

Log your successes. Keep a separate list of every win along the way, perhaps in the back of your notebook. Did that algorithm finally click? Or maybe your five-day search for a bug finally paid off? Write those wins down! Later, when you’re feeling stupid or unproductive, you can refer back and see all of the things you’ve accomplished.

It’s a simple thing, but can have huge results. I’ve personally found it effective in defeating programming burnout Programming Burnout: How to Regain Your Lost Motivation Feeling tired of programming? Suffering burnout and can't see a way out? Here's how to begin regaining your motivation to code. Read More . And as your “Hall of Successes” grows longer, it becomes more powerful as a reminder of your skills and progress.

Image Credit: keangs Chaianan via Shutterstock

Things to revisit later. A bug-tracker might be better for tracking todos and bugs (duh) but a journal can be great for jotting down concepts, algorithms, questions, topics, and other “things” that you can’t look into right now but want to research later.

Ambitions and goals. This one’s not so much about programming as it is about your future as a programmer. Where do you eventually want to end up? How did today’s session or this year’s project take you toward that goal? Or did it set you back? These kinds of entries can be great for re-centering yourself and your direction.

Lessons learned. After every session, it can be nice to recap everything you did and think about what you learned. Similarly, you should think about recapping every major milestone on your current project and the lessons you’ve learned. This is why developers do post-mortems — by articulating lessons learned, you’re more likely to remember them going forward.

Will You Start a Programming Journal?

The beauty of a programming journal is that it can be as simple or as involved as you want it to be. Whether you spend 30 minutes a day or 10 minutes a week, it will prove useful — but of course, you’ll only get out of it what you put into it.

Does this sound like something you’d benefit from? Would you prefer pen-and-paper or a notetaking app? Got any other tips that have boosted your programming? Share with us in a comment below!

Related topics: Motivation, Programming.

Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.

Whatsapp Pinterest

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Shakira
    January 16, 2018 at 2:38 am

    This is pretty decent as I am a teacher myself and encourage my students to make E-Journals but they would all cry and make up excuses to their parents to force me to make them not make programming hournals

  2. Jack
    October 30, 2017 at 10:49 am

  3. Jack
    October 27, 2017 at 4:49 am

    Just a smiling visitor here to share the love (:, btw great style and design. “The price one pays for pursuing a profession, or calling, is an intimate knowledge of its ugly side.” by James Arthur Baldwin.

  4. congerjan
    October 24, 2016 at 11:50 am

    Totally agree with this article. I have also insisted my students keep a maker-space journal. I am now going to include a coding piece to that journal for when we do coding in the library. Thanks for the insights!

  5. Davies Hacker
    October 23, 2016 at 1:31 pm

    So many people would ask, What kind of Hacker For Hire services do we offer? Have you been hacked? Maybe your Email, Facebook, Twitter, Instagram and many other type of online accounts have been jeopardized. We offer a wide range of services, we are able to hack into these accounts and hack them for you. Some of the Hacker for Hire services we offer are the best around they are simply unmatched not just the service but the entire process from start to finish we make everything at ease for you and make sure we get your job done, account or data back. For more enquires you can contact us at daviesmicheal6 at gmail dot com or text us on (+1)513 437 0262 or visit our linkedin official page at Davies Micheal

    • Michelle
      October 24, 2016 at 10:08 am

      A meaningful comment related to the article would be great, Davies Hacker. No one is interested in your spam.