Why I’m Learning Python

How do you choose which programming language to learn? The article title tells you I’m learning Python. I’ll tell you how I got there. I think in terms of solving a particular type of problem. You wanna create an iOS app? use Swift. You need to create server-side web applications? use PHP. You wanna create an enterprise software architecture? Use Java. Need to manage databases? use SQL. You wanna create a client-side web app, use JavaScript. Of course, there are substitutions that can be made. However, these are the primary tools that come to mind. One substitution that can be made is using Ruby or Python to create server-side web apps.

Solving Problems

When you know how to solve a particular type of problem with programming one language, you get more value by learning how to solve a new type of problem, rather than trying to solve the same problems in a new language. It’s challenging to learn a programming language. When you learn a language, it’s not only the language you learn. There is a whole ecosystem of libraries, packages, frameworks, and tools. It’s powered by a whole community of people with a shared philosophy used to create their code. Python, like PHP, is a web programming language. Both are part of the LAMP stack, and they serve the same purpose within it. So you might wonder – since I’m already a skilled PHP Developer, what’s the value of learning Python?

Why I’m Learning Python

There are a couple reasons that I’m learning Python. One reason is that when you learn a new language, you come to understand your own language better. You have a beginners’ mind. Seeing how ideas are expressed, and problems are solved. Another reason I’m learning Python is I’m been seeing a lot of job postings on LinkedIn that are looking for Python. The kinds of jobs I want to get are using Python. The LinkedIn Jobs board isn’t the only one – not by a long shot. Larajobs comes to mind for Laravel, and PHP-related jobs. Since most professionals have a LinkedIn profile, the job board on LinkedIn is going to have the most reach.

In your job search, you might notice a different language is prominent in the job postings. That’s OK, because your circumstances are going to be different. Being able to code in another language gives you freedom – the freedom to determine your career path. It also provides you the freedom to choose what’s best for the project. There’s always a strong bias towards choosing the language you know, instead of what’s best. So gaining experience in new languages, gives you objectivity.

Fun and Challenging

Learning a new programming language can be fun. It’s challenging. It makes you think about things. It gets you thinking about not only how you do something, but why you do something. There are some distinct differences between PHP and Python in syntax, but the differences aren’t so vast that it feels unintelligible. It’s like the difference between English and Spanish. You’ll recognize some shared vocabulary. The sentence structure looks somewhat familiar. Naturally, the syntax and standard library (the functions and modules the language provides) are the most challenging aspect in the short term, but the simplest in the long term. In the beginning, it’s challenging to figure out how to express your ideas in the new language. Once you’ve become comfortable in the language, your challenge then becomes how to better express your ideas, and to find the best software modules to solve your specific problems. You’ll struggle to navigate the ecosystem, stumbling along as you find your way.

I’m currently in that stage of figuring out the Python standard library, and how to express my ideas. I’m enjoying the challenge. I’ll keep you posted on my progress. What programming language do you want to learn?

Share Your Thoughts

I'd love to hear your thoughts on the article.