Hello there! Have questions about Python? Stick around for a while, and let’s decide together what’s right for you!
As Python gains popularity, it has become a fundamental question for most programmers, whether they should learn Python or not. And for those who are just beginning their programming careers, it is the matter of choosing the right programming language to start with. Well, regardless of who you are, you have come to the right place with all your questions about Python. In my more than five years of programming in python experience, I understand that starting out with a new language can not only be challenging but also confusing in regards to which direction to follow. SO let’s try to answer all these questions one by one, and in the end, I’ll help you decide what’s the right thing to do based on what your current situation is!
Table of Contents
- What is Python?
- Why should I learn Python?
- Should I learn Python? Is Python for me?
- How to learn Python?
- The Takeaway
- Useful Resources
What is Python?
Alright, Let’s start. So I might really really oversimplify things here ( so if you know programming already, please don’t get triggered). Basically, Python is a high-level language whose primary goal is to let the programmer focus on the logic of the program without worrying too much about the nitty-gritty details of the syntax. It allows you to write a more readable code and anyone with a very minimum experience in programming can easily read a python code and make a reasonably well guess as to what the code is doing (unlike C where if you are a novice programmer and you look at a professional C code, you face instant death.)
It is also essential to know that Python is an interpreted language, not a compiled one (Compiled languages are where the computer check if your code is alright first and then runs the code while on the other hand in interpreted languages, the computer will look at each like as it runs the program line by line.) And this feature of Python makes debugging a fairly straightforward process.
Why should I learn Python?
There are virtually no limits to what you can do in Python except you cant cook an egg. Oh wait, you actually can 😏 Just create a robot controlled by python to cook eggs for you.
On a serious note, though, there are many use cases of Python in real life. Although the majority of python users are data scientists or engineers, Python still has many applications around the industry. Here are some examples of things that Python is used for
Prototyping code logic: when you just need to test out some programming logic in code and see how it performs, and you don’t have much time to write out efficient C++ code; you can just use Python.
Building quick web apps: Python is known for its fast development speed. many students use it at hackathons to give shape to their ideas by building quick web apps in Python
Data Science: This one is probably one of the most widely known use cases. Data scientists use Python along with R (Another python-like interpreted languages for mathematical modelling) and MATLAB (This one is paid and expensive AF) or Julia (also similar to Python) for processing large amounts of data, building machine learning models and much more. There is basically no limit to what you can do with large amounts of data and the number of insights you can extract.
Scripting and automation: I personally have done this at so many of my previous jobs. Some of the manual work can be easily be automated with a few lines of python code.
Knowing Python won’t mean that you understand machine learning
Machine learning: Here, I just wanted to press upon the fact that knowing Python doesn’t mean that you understand machine learning. If you like machine learning or neural network and want to “create” ML model, you need to study a lot of mathematics and theory. Python is just a tool that lets you implement those models. But if you wish to “use” prebuilt ML models on your own data, there are thousands of python libraries that let you do that in a few lines of code. So you must know what exactly you want out of Python.
Web scraping, building bots And much more!
The main reason that you can do so many things in Python lies in the fact that it is open source. This means people from all around the world contribute all the time, and this means there are python libraries available for LITERALLY ANYTHING YOU CAN EVER IMAGINE.
Pros and Cons of Python
- Fast code writing and prototyping
- Human readable code
- Infinite possibilities regarding what you can do with it
- Libraries available for virtually any task you want to accomplish
- Multiplatform support
- Easy to install and learn
- Probably not the most efficient. C++ programs that do the same thing are many times faster but require much more lines of code
- Just knowing Python and no other programming language won’t land you many jobs.
Should I learn Python? Is Python for me?
Whether Python is the right choice for you depends on your situation.
Situation 1: You have had previous programming experience before, or you are doing a (non-python) programming job like Java developer or DevOps engineer or anything similar
Definitely 100% learn Python. This will give you an extra edge over other people and also something extra to put on your resume.
Situation 2: You have no programming experience but want to start a career in programming or coding jobs in future
Situation 3: You work at a non-technical job like an analyst or consultant, and you also work with spreadsheets
Learning Python is probably an excellent idea for you. There are so many things you can do in Python and perhaps also perform some automation. Now, I’m not saying that if you learn Python, you’ll be able to automate your whole job. I’m just saying that it might come handy at some point.
Situation 4: you are new to programming but are not sure if you want a career out of it. Or you are a university/high school student (non-CS major)
Yes. Definitely learn Python. It will help you a lot in future. I also encourage you to attend hackathons. Even if you don’t know programming, just go there and attend workshops. This will allow you to build a project portfolio that will come in very handy for securing future jobs.
How to learn Python?
Now, this is the exciting part. There are so many people online trying to teach you Python that there is virtually no end to it, and so many people end up getting confused. So let me clear that up for you.
If you have had at least half a year of programming experience before, learning python should be a piece of cake for you. If not, it will only take you a month of an hour of writing code in Python every day until you start building something fun and exciting that you can post on your portfolio. Let’s take a look and some of the possible situations you could be in and see how you could learn Python.
Okay, this means that you probably know programming, so all you need to know is python syntax. For a person who knows programming basics already, Python is just google searches and copying other people’s code and examining it.
You can quickly skim through them and see how the syntax works. The next step is to start actually building stuff in Python. Get some project ideas and try to work on them, for example, websites or web scrapers. There are hundreds of tutorials and blogs online you can skim through. Here is my advice. Your best friends in your python journey are google search and stack overflow.
I am new to programming field. I may want to build a career out of it.
I am new to programming, but I want to learn it for fun. Not to get a job.
In this case, try looking at the resources below and choose any one of them. Go to a lot of hackathons or attend a lot of online hackathons. Even if you don’t know anything, don’t be afraid to apply for hackathons. Attend a lot of programming workshops in hackathons and anywhere you could find. Otherwise too, Python is a good skill to have on your resume.
Important note about buying courses on Udemy if you are a beginner and have never used it before: Please look for coupons online, usually the process are listed in the range of $100-200 but most of the times you can find a coupon that reduces the price to around $15 (again, this is not sponsored, I just don't want you to get ripped off 😅)
|Resource||Who is it for?||Usefulness||Pricing|
|GeeksForGeeks||Intermediate to Advanced Programmers||Very useful to quickly check syntax||Free|
|TutorialsPoint||Intermediate to Advanced Programmers||Very useful to quickly check syntax||Free|
|StackOverflow||Intermediate to Advanced Programmers, Debuggers||Very useful in debugging||Free|
|Dr Angela Yu||All Levels (Beginner Friendly)||Not very useful for people who already know programming. Very useful for newbies||Around $10-20|
|London App Brewery||All Levels (Beginner Friendly)||Very useful for newbies||Around $10-20|
|LinkedIn Learning||Intermediate Programmers||Somewhat useful. Courses can get confusing sometimes||Free for university students. Or aroung $20-30 monthly subscription|