In October 2019, I took the plunge and started learning Python. My history with coding was sparse. I started coding in HTML and CSS in 2001, took up C++ on a computer science degree I dropped out of after 6 months, and tried to dabble with JavaScript between 2014-2017.
But Python was different.
It hasn’t been plain sailing throughout but I learnt to weather proverbial storms quicker than I expected. For anyone wanting to take up the language, these are the 7 things I learnt from learning Python.
1. It’s easy to learn if you focus on the basics
The reason I started learning Python was:
- It was appropriate for my line of work (search engine optimisation or SEO for short)
- I had serious FOMO
But with that FOMO came a sense of inadequacy. Other people who were better than me and doing advanced stuff while I was learning about for loops and if statements. At one point, I “skipped ahead” and got lost in a sea of code I didn’t understand, which was frustrating.
Then I realised this was sub-optimal—I had to stick to my course, the basics I was learning, and nothing else. That helped me get through the course much faster (I’m still doing it but I’m not lagging behind like I was before).
2. It’s versatile
The more you learn Python, the more you’ll find use cases in everyday life. From choosing what to eat for breakfast to picking a random movie to watch within a given running time limit, there are so many things you can do with Python.
Having those kinds of projects in mind motivated me to keep going and put my theory into practice. As an SEO, I’ve been able to use Python extensively but I’ve also used it for my hobbies and for coming up with ideas to write about on this blog.
3. It’s scalable
“Vanilla” Python has its faults—namely with multithreading—but with the right add ons, libraries, and compilers, these issues reduce and scalability becomes a possibility. But if you’re really serious about large scale projects, you’d likely consider a language like C/C++ anyway.
In terms of the development time it would take to learn and execute, Python excels and its scalability wins out.
4. It’s free* to learn
Now, I’ve put an asterisk next to free because not everyone has access to technology in order to learn programming languages. But for those who do, it doesn’t require hundreds of pounds worth of books and academic courses. Free courses are available online, or you could pay for premium options like Codecademy and Udemy.
5. It’s the perfect language to add to your CV
Everyone and their dogs say you should learn to code.
Use this lockdown time to code!
Societal pressure aside, if you do choose to learn a programming language for professional purposes, Python is a great choice.
Adding your coding proficiency to your CV can become a conversation starter in interviews and may give you the edge, especially in areas where coding is a rare skill.
6. There are multiple ways to learn
Python’s learnability is an extension of its versatility. While nothing beats getting down and dirty with the code, that’s not the only way to learn. You can follow a course, read your way through, or watch code live on Twitch (like Tae’lur Alexis).
7. It teaches you about AI
Artificial intelligence appears scary thanks to the media, and there are some heinous uses, but AI is as “evil” as the people and inputted data involved with it.
There are advantages to that. To know the problem, you have to face it and Python gives the best entry into AI and machine learning. Then you can learn about the biases within AI and how to tackle it (if you’re so inclined). Or you can use machine learning to make life tasks more manageable without oppressing millions of people in the process.
Resources
- Automate the Boring Stuff with Python – an awesome book that walks through examples of tasks that Python can automate.
- Python Weekly is a free weekly roundup of the latest Python news. I’m subscribed to it and I love it.
- Tackling Python: How It Can Help With Technical SEO – for any SEO’s out there, Ruth Everett is a major inspiration to me and the main reason I took up Python in the first place.
- 100 Python Code Snippets for Everyday Problems – a great collection of Python code examples showing the quirks and efficiencies of different features.
- Pandas Cheat Sheet — Python for Data Science – Pandas is a great data library, similar to how Excel and Google Sheets works in that you can create dataframes to store, analyse, and manipulate your data.
- Jupyter Notebook – An open-source virtual environment to use Python. Great for sharing code without cluttering up your computer with multiple files.
- Google Colab – Google’s version of the above, offering Colab notebooks where you can combine code and rich text in a single document.