DEV Community

Cover image for Python 101 : The Ultimate Python Tutorial For Beginners
Kelly Kiiru
Kelly Kiiru

Posted on

Python 101 : The Ultimate Python Tutorial For Beginners

How to start:

If there is one thing every master (who by definition has put in at least 10,000 hours into their craft) will tell any beginner is: "Interested in something but are unsure that you're capable? Try to shush that and just start. It will all fall in place eventually"

I began my coding journey from the shallow end. The basics included a little practice and few projects here and there. The 'languages' being HTML and CSS. This, I'd say were very instrumental in giving me a boost of confidence in the following weeks. I won't lie, the hardest week was the first one - on HTML basics. However, as the days went by, things got easier and more interesting. Javascript used to scare me way before I got my linux OS but with more confidence, I was able to dive into it's deep end. Comfortably float and sink all with ease.

PYTHON

Those were good for the front end. (Not saying that js cannot be used in the back-end too. It is a well known fact that you can build a whole program front to back-end with only js.)
But I wanted to deep dive into the back-end too. It was time I got to know how to cook code and make it palatable for the relevant parties. Python, being among the most popular languages, definitely got first dibs. The plan being to learn and code in both flask and django. (I have always loved that word - django) In my head it sounds like you are on an exotic vacation in the Congo or Amazon. Either way, you are enjoying nature and not wearing tight leather clad on a sunny day lol.

The Ultimate Guide to Learning Python

Whether you have prior exposure to other languages or a total beginner, it will be calming to know that Python is a very enjoyable language. On top of that it is quite easily readable(human-read) compared to other coding languages.

To start off, I suggest going through the basics of the language. This include familiarizing yourself with the syntax, the data types, mathematical operators, logical operators, and how to write valuables. Also checkout tuples ,lists, dictionaries and the methods associated with each. Don't freak out tho, you don't have to memorize all the methods. That's what Google is for.
Putting on yourself pressure to 'cram' the syntax, methods and inbuilt functions could demotivate you in the beginning. What I'd suggest is to instead focus your energy on understanding the control flow. If you have this, you will easily be able to figure out what happens where, how, why and what it's output will/could/should be. Then if you don't have the exact syntax at the tip of your fingertips, reach out to Google. You will definitely find a response to another programmer who had the same issue as you; and they were able to get help and solve it.

In coding, theoretical knowledge has little value if there are no projects to show how that can be converted into solving real life problems. Hence, I'd strongly suggest creating an account on Github or other similar platform. Check out projects for beginners, clone or fork them. Once you have the code locally, figure it out. Get the reasoning and the understand the problem it is trying to solve. Try going line by line coding on your own side by side with the cloned/forked repository.
Consistency is key. Try to do projects every single day, no matter how 'small' they look.

Of even similar importance is finding a community of other beginners with whom you can pair up and help each other with debugging and generally lifting each other's spirits. Lord knows there are times when a bug can ruin your whole day. Leaving you frustrated and demotivated. On the flip-side however, one of your peers might easily figure out the error and you can work together to fix it. I once had a missing semi-colon in another programming language and Lord did I have a bad day. Only for it to be noticed in a night Google Meet session with one of my colleagues. Haha. I was relieved.

All in all, in the beginning, I feel that you should not put on yourself pressure to understand a plethora of concepts. Take it easy on yourself and know that your coding journey is a marathon and not a sprint. Do as many small coding challenges on a daily. These will strengthen the foundation on which you can build on.
If you keep stacking your hours, I am pretty sure you will be a sought-after programmer.

I wish you all the best in your journey(Which is exactly what I myself need a senior-dev to tell me).
Anyway, see you at the top.
Happy coding.

Top comments (0)