How Learning to Code Can Make You a Better Product Manager

Abstract image of a computer

Debugging your demons

As someone who grew up in a household of artists, I found myself drawn to subjects like history, arts and literature. I always feared math due to intimidating teachers and parents that were not able to help me with my struggles. This mindset left me feeling incapable of excelling in technical subjects and closed the door to the world of science and technology. This path led me to a job in the cultural field, where I spent more than 10 years. Despite my art career going strong, I always had a nagging regret about not exploring the world of IT.

image

Nevertheless, over time, I began to realize that my beliefs were based on a flawed notion of intelligence. I viewed my abilities in math or science as being either innate or nonexistent rather than dynamic and multifaceted. This realization ultimately helped me make a career change at the age of 31, transitioning from a cultural background to a role in UX/UI design. However, my first job in the tech field was working as a product manager, which meant that I had to collaborate closely with developers for the first time.

While some argue that deep technical knowledge is essential for product managers, others say that it may even hinder creativity and innovation. In my experience, the importance of technical literacy depends largely on the industry, product, and team. When I joined my current team I struggled to keep up with technical discussions and felt out of place. Often, for many newbies, the biggest problem was figuring out what it was that I didn't know and what resources would help me learn technical jargon and discourse. At the time, I had not found any specific course that would teach “tech skills” for product managers.

My SheCodes experience

When I signed up for the SheCodes course I was excited to learn about coding in a supportive environment designed for women. However, as I progressed through the course I couldn't help but wonder how the course was specifically tailored for women, apart from the use of a pink branding palette. The course offered four different programs, each with varying levels of depth. I chose the second option - a three-month course covering HTML, CSS, JavaScript, Bootstrap, git, and using external APIs. Initially, the course looked organized with weekly deadlines intended to motivate me to learn more effectively.

To my surprise, I soon realized that it was essentially just an introduction to front-end development, with its own advantages and drawbacks. When you're new to the world of programming and computer science it can be challenging to navigate the complex terminology and logic that accompanies it. Before starting to build your first "Hello world" page, it's also crucial to familiarize yourself with the broad field of computer programming and computer science. You don't need a technical degree, but it's helpful to understand the differences between programming languages, what's used for the back and front end, and have a general grasp of how the web works. It’s something like understanding artistic movements (ie avant-garde, classism, etc) before going into the details of ​​why Malevich's “Black Square” had a profound influence on the development of abstract art.

After three months of studying for 10-14 hours a week, I went from fear and chaos to acceptance and curiosity. I still know very little about it but understanding how some developer tools work can help one appreciate the value of programmers. It teaches you different ways of thinking and it is definitely a unique form of creativity.

Why programming looks intimidating

The syntax and structure of programming languages can be perplexing. The lack of familiarity with its visual presentation and overload from the monospace font can look scary. Strings, arrays, objects, functions, classes, conditionals, event listeners, queries, prs, merging, pushing, pulling, and deploying all of it can be really puzzling to get at first. Yet, these things actually can be exciting and pretty useful. In the next paragraph, I will try to summarize why. With time you might start seeing its beauty.

image

Why it can be valuable

Streamlines change communication

As a product manager, being familiar with code can save you from the dreaded "lost in translation" scenario with your developers. With some knowledge in your toolbelt of how code works, you can have somewhat meaningful conversations with your devs, and understand their technical constraints. It won’t always help, but some improvement is guaranteed.

Builds empathy

I never believed that programmers are hard to talk to. At the end of the day, it all boils down to communication, which is hard for everyone. Learning about someone’s job in more depth always helps create empathy. It’s like going to a new country and learning a few words and maybe an alphabet. Yes, you won’t be able to communicate fully at first, but most likely you will be able to find a pharmacy or a metro station and also thank a person who helped you in the local language. It’s a simple gesture, but in trying you show appreciation. Sometimes, we have no clue how difficult things can be for developers and if you still have doubts I recommend you watch this video where Tom Scott explains how difficult it is for a programmer to deal with time and timezones.

Translates design terms into actionables

Having a basic knowledge of CSS, design tools and principles can be extremely valuable as well. By understanding some basic principles, such as how to manipulate layout, colours, typography, and animations a product manager can better describe their desired visual iterations and articulate why certain design decisions are important.

Helps you navigate GitHub

What is GitHub? It’s an essential tool for software developers that provides a central location for code management and collaboration. Knowing how to navigate it can be very helpful to check on new products often only present there. As a product manager, you can also assign issues, prioritize tasks, leave comments and see the progress of tasks instantly. By learning how this tool works, you can better understand the development process, and collaborate and communicate with your team more effectively.

Provides a better understanding of technical roadmaps

While a product manager may come up with ideas for new features or functionalities, it is crucial to comprehend their technical feasibility. Acquiring a fundamental understanding of coding concepts can help product managers in assessing the technical feasibility of various ideas, enabling them to make well-informed decisions regarding what can be accomplished within the allocated resources and timeframe.

Improves management tools using functions

At Finiam, where I work, we use Notion as our management tool. This software, like many others, allows users to create formulas using its built-in formula language. The formula language is similar to spreadsheet formula languages, but it has some unique syntax and functions. If you have no prior programming experience, you most likely won’t even try to explore this but even basic knowledge of programming can help you improve your daily tools.

Broadens your horizon

Besides these improvements, I also found personal enjoyment in the areas I thought I would never touch after school. Programming requires a certain type of problem-solving mindset. The ability to break down complex problems into smaller, more manageable pieces is essential in programming and it requires practice. This exercise can be very beneficial for your daily life.

In addition to the programming course, I've developed an interest in engineering sciences and I've been using an online platform called Brilliant to help me learn more about these areas. I like it because it delivers dense technical knowledge in a visually appealing way. It shows the beauty of scientific subjects from a new perspective and encourages you to think creatively and critically.

Finally, it’s fun!

Well, maybe it is not the most convincing reason but some dev memes are really hilarious. You won’t get them all, but let’s agree, they are pretty cool.

image

Learning basic programming can benefit product managers in several ways. It can help to improve your communication with developers, understand technical constraints, and build empathy. Though programming can seem intimidating at first, with effort and patience, there are many areas where you can apply this knowledge and benefit from it.