Three Reasons Why I Learned to Code (And Some Thoughts On Why You Shouldn't)

A grapic of a lady with a computer with a speech bubble that reads, I don't know why my code works

This happens a lot. I've spent hours, if not weeks figuring out the "why."
Image: I created it using Canva.

While over half of the developers write their first line of code when they're around 14 or 15, I wrote my first line of code in my late 20s and coded my first full website in my mid-30s.

Chart showing that one percent of people between the ages of 26 to 27 start coding, while 1.6 percent of people older than 30 start doing so. Most developers write their first line of code when they're 14.

Source: Stack Overflow Developer Survey Results from 2019

My age or lack of computer science or software engineering education didn't deter me from learning to code. The lack of time and money did for a few years.

I became interested in learning how websites work from years of working with different web developers and designers on revamping or updating sites for non-profits.

I enjoyed collaborating with some of these professionals because they were excellent communicators and kind collaborators. They had the patience to explain to non-coders like me, in simple terms, how things work and why they built something in a certain way without any condescension or arrogance.

However, I've mostly worked with developers who unfortunately are a lot like this dude:

Encouraged by working with great developers, challenged by the Nick Burns types, and wanting to build my own projects, I decided to learn to code. It took me nearly five years to make the time and save up the money to take a fast-track web development certification.

If you're thinking about learning to code, think outside the job prospects or the potential earnings. You should go into coding because you're genuinely interested in it, not because you feel pressured to keep up with the times.

Learning to code has been a difficult, exhausting, exasperating, and anxiety-inducing experience for me.

This is how I felt last year, during certification, especially when learning JavaScript:

Yet. I thoroughly enjoy coding. Before you think I've lost my mind, let me explain why I stuck to coding despite the pain.

Reason no. 1: Coding helps you to know what's possible and what isn't

You can be technically literate without becoming a web developer or designer. But I chose to learn to code because I wanted to have a solid working knowledge of technology to ask the right questions to tech teams. I wanted to speak the developer's language to be more engaged and efficient in our collaboration.

More importantly, knowing the ins and outs of web development makes it easier for me as a communications professional to explain to my non-tech colleagues and managers what's happening and why. This is useful when it comes to managing expectations.

Reason no. 2: Coding helps you approach challenges from a new perspective

When I first started coding, I felt overwhelmed because I kept thinking about the final product. But as I kept going, I began to break down issues into smaller, separate parts. Doing this allows me to see how each component affects the others. It makes it easier for me to decide where I should focus first.

In a way, coding has rebooted my problem-solving skills.

It gives greater insights into how things fit together. But most importantly, coding helps me understand why the elements or solutions I think should be there, or should work, sometimes are the problem itself.

Reason no.3: If you're a comms professional, it's good to have a baseline knowledge of front-end coding

Knowing HTML, CSS, and maybe some JavaScript can take your work to the next level, and you don't need to call and wait for a developer to do so. Knowing your way around HTML and CSS, for example, can help you enhance video or GIF embeds in your posts to make them visually more attractive. You could optimize your images and infographics to make your website's pages lighter and faster.

Having said that, you don't have to become a developer to improve your career and salary. For example, if you work with datasets or spreadsheets, learning a program like Python, Ruby, or R would have a bigger impact on your work, than learning JavaScript.

But there are also reasons why you shouldn't learn to code

Generally, many people enormously underestimate how hard it is to learn to code.

It's unfair and enraging that this "advice" is used by trolls to harass laid-off journalists. Or that it's presented by ignorant politicians as an obnoxious solution to unemployment:

Ignore anyone who says that coding is easy and that everyone should learn to code.

Both claims are misleading.

Learning to code is a continuous process that might not be for everyone. At its core, coding is one of the many toolkits you can use to solve a problem. In other words, it's just the means to an end.

Have a frank conversation with yourself about your motivations and ultimate objectives

It might sound obvious, but if you've been considering learning to code, first of all, ask yourself why you want to do so. What's driving you? What are you trying to achieve by learning this skill?

Learning to code is brutal. If you don't have a clear objective to support your drive and motivation, your learning experience will be agonizingly frustrating.

From the beginning, I was honest with myself. I didn't want to be a web developer. But I wanted to learn front-end languages to enhance my digital storytelling.

Do you think you can deal with obstacles and regular failure?

Coding doesn't come easily to me. It takes me weeks or even months to understand frameworks, libraries, and modules on top of the programming languages I'm still trying to figure out. And I do so mostly on my own.

Usually, I write a few lines of code, then I run a test and – surprise. It doesn't work. I try to figure out what's wrong. I break down my code, I keep testing and still, no changes. I google for answers for hours, even days, hoping that someone else has faced my issue and written about its solution. I walk away from the computer, sometimes for a few hours, sometimes for days or even weeks. And when I return, to my surprise, horror, relief and disappointment, I realize I missed a colon, or I added an extra bracket. Because of one tiny but supposedly "obvious" mistake, bam! The whole thing went kaput.

As I mentioned before, learning to code is an ongoing process. Some people think that when they're learning to code, they'll be so good at it after some time, everything will work out smoothly.

That's not how it works because technology is always evolving.

People with more coding experience than me probably don't make my rookie mistakes. But since they're working on bigger and more complex systems, their errors would obviously be more elaborate. Our frustrations feel the same.

So, why would I endure something that sounds like hell?

Because when I finally figure out the problem and make my code work, the pleasure and satisfaction I get is like drinking distilled joy.

In a weird way, coding has boosted my confidence. If I can pull through JavaScript and make it work, I feel I can deal with other types of (non-coding-related) complexities. It sharpens my consistency and persistence. And it allows me to be creative.

I see code as one of the many tools that in the future, will help me produce visually engaging, factually-accurate, and informative stories for the organizations I support.

It's an ongoing, often crushing process, but it's ultimately a rewarding and empowering skill to obtain.

What About You?

What have you learned that initially intimidated you (maybe it still does)? How did you pull through? Share with me your thoughts, challenges, or victories.

👀 Did I miss anything? Make a mistake? Let me know. Share with me your thoughts, suggestions, or critiques. Follow me on Twitter: @e_sarin. Or email me at: