Why Getting Better at Reading Code Pays Off

Reading code is something we do almost every day as software engineers. But is it really worth putting effort into getting better at it? You might find reading code tedious or frustrating, but that doesn’t necessarily mean you’re motivated to improve your code-reading skills. After all, it’s just another part of the job.

But getting better at reading code comes with some worthwhile benefits:

  • Improving your technical skills
  • Reducing stress
  • Building confidence
  • Earning trust

If reading code is something you struggle with, here are four good reasons to work on overcoming it.

Improving Your Technical Skills

Reading code is an input activity in software development. The idea behind improving your technical skills through code reading is straightforward: Increase your input (reading code) to improve your output (writing code).

When you want to become a better programmer, it’s natural to focus on learning new knowledge and coding techniques that directly improve your ability to write code. Reading more code, on the other hand, takes a less direct route, so it’s easy to overlook.

And if you’re already uncomfortable reading code, you’re probably not doing much of it. You tend to put it off, and when you finally sit down to tackle some unfamiliar code, you get exhausted pretty quickly.

But once you overcome that initial resistance, you can gradually spend more time reading code. As you read more, the knowledge and techniques you pick up will start finding their way into the code you write. Over time, you’ll begin to notice the improvement in your technical skills.

Reducing Stress

Let’s face it. Code is hard to read. If reading code were easy, we wouldn’t need books like The Art of Readable Code reminding us to make our code easier to understand in the first place.

Getting better at reading code isn’t just about understanding it faster. It’s also about building a tolerance for code that’s difficult to read or intimidating to approach.

As reading code becomes less stressful, you’ll naturally find yourself doing more of it. That extra practice helps sharpen your technical skills, which in turn makes reading code a little less daunting. It’s a positive feedback loop that helps you grow as an engineer.

Getting used to reading code is the first step, but that’s easier said than done if you’re already struggling with it. You avoid reading code because it’s stressful, but the less you read, the harder it is to improve. Before you know it, you’re stuck in a vicious cycle.

Think about those times when you’ve spent ages digging through old email threads, hoping to find one tiny clue. Or when you’ve searched the web over and over, opening articles that look promising, only to close them because they’re completely irrelevant. We’ve all wasted time on detours like these.

Rather than going out of your way to avoid reading code, try going straight to the code and working through the problem yourself. Each time you solve a problem this way, you build up your tolerance for the frustration that comes with reading unfamiliar code.

Building Confidence

When your technical skills improve, and reading code becomes less stressful, gaining confidence is a natural result.

But there’s another kind of confidence that comes from being good at reading code. It’s the confidence to tackle a difficult problem without knowing the solution up front, and to keep digging until you find the cause.

This kind of persistence is an incredibly valuable quality for a software engineer, and developing it is one of the biggest benefits of getting better at reading code.

If you’re relatively new to software development, you might also be dealing with a vague sense of anxiety or self-doubt, even beyond your difficulties with reading code.

You want to get better, so you start looking for things to learn. But the more you search, the longer your list gets. There are so many things you should or could learn that you end up not knowing where to begin. Maybe you even find yourself worrying about not having a computer science degree.

Instead of dwelling on what you lack, start working on the things you can’t do yet, one at a time. As you gradually overcome those difficulties, your attention shifts from what you can’t do to what you’ve learned to do.

And because reading code is such a fundamental part of software development, overcoming difficulties with it can make a real difference. It’s a skill well worth improving.

Earning Trust

As you become better at reading code, you’ll find yourself asking your colleagues and managers fewer questions. You’ll be able to figure out more things on your own, including problems your teammates already expect you to handle independently. As a result, you’ll gradually become a software engineer they can rely on.

That might sound obvious, but there’s a flip side to it: If you keep relying on others to solve problems you could solve yourself by reading the code, you’re giving them reason to question your reliability as a software engineer. Instead of simply avoiding an unpleasant task, you’re effectively passing that work on to someone else.

Of course, things are different when you’re a beginner. Sometimes you can put in your best effort and still have no idea how to proceed. That’s perfectly normal, and asking for help is often necessary.

But once you recognize that reading code is something you struggle with, don’t shy away from improving it. The sooner you start tackling that weakness, the sooner you’ll become someone your teammates can trust to investigate and solve problems independently.

Final Thoughts

We’ve covered four benefits of overcoming difficulties with reading code and gradually getting better at it: improving your technical skills, reducing stress, building confidence, and earning trust.

Admittedly, this has been a fairly abstract discussion. If you’re an experienced software engineer, you may feel like you’ve already been through all of this.

But imagine a junior engineer asking you, “Why do I have to spend so much time on something as tedious and frustrating as reading code?” You’d probably have a story or two to tell from your own experience, touching on some of these four benefits.

When something feels difficult and unpleasant, it’s natural to want to avoid it. That’s exactly why it helps to remind yourself what you stand to gain by overcoming that difficulty. The next time reading code feels like a chore, think back to these benefits and picture how much you’ve grown, or how much you could grow, by getting better at it.

You don’t have to start loving code reading suddenly. Just keep working at it, one step at a time. Let’s keep at it together.