
Learning to write in a new coding language can be a daunting, frustrating task; however, I would argue that that’s especially true for people who already know how to code in another language.
I’m speaking from experience. This week, a Python project forced me to step outside of my comfort zone, R. Two things made the project especially frustrating: experience and expectations.
It’s difficult not to compare languages when you have had a lot of experience with one and maybe developed expertise or a preference. When I started the project in Python, I couldn’t help but compare it to R. If you find yourself in a similar situation, I will encourage you to consider that there are many reasons why it is valuable to learn multiple programming languages:
- Not every language has the same strengths. The more you are comfortable using (or experimenting with), the easier it will be for you to pick the optimal one for the job at hand.
- It becomes easier to find similarities between languages and understand the core concepts of programming. Tech writer David Lumb explained, “Good programmers don’t just learn how to code–learning core concepts teaches them how to wrap their brain around a problem and produce efficient code to solve it.”
- You can earn a higher salary. Competent coders are already in high demand, increasing your flexibility and ability can help you to stand out from the crowd.
- Your opportunities increase. Knowing only one language shrinks the pool of jobs you have to choose from while knowing more than one immediately widens your potential.
The second obstacle, expectations, is maybe a bit tougher to overcome. It definitely was for me. Because of my previous coding experience, I felt as though there was an expectation that other languages would also come quickly to me. When I couldn’t crank out the project in a day and started to get errors, I’ll admit that my confidence faltered.
In this case, talking to my classmates helped me. I realized I wasn’t the only one struggling, and realized no one else expected me not to struggle. I was creating all of that pressure myself.
Consider this: You wouldn’t expect someone who speaks French to master Spanish easily, and you wouldn’t expect a football player to be naturally great at baseball. Yes, while knowing one language might give you a slight advantage over someone who has never coded before, you’re still a student learning something new.
Ultimately, this task put me on the path toward learning a new language, and I think this experience will make it less intimidating to learn more in the future. It wasn’t easy; I had to take a step-by-step approach and get back to the basics, but that was fine. It might not have been fun, but it was a valuable learning experience.