How To Learn Python

in #python4 years ago

Programming is not my profession - this is a hobby. Nonetheless, I have written a few tutorials - some recently. These tutorials were designed for people, who already have a basic understanding of Python and have some experience in programming in general. I was trying to offer something that can bridge the gap between knowing some Python and actually getting something done that works with STEEM.

In this post I wanted to compile broader advice on how to learn Python, or any new language in general. I get very little engagement on my posts, even though I hear people wanted to 'look into this for a long time'. I am trying to explain how you can set yourself up to get off the ground.

The Techlead

First, you should subscribe to the techlead and then first watch this:

the techlead on how to learn to code

And then this:

the techlead on how to learn python

That should have you covered. While it is mostly aimed at programming as a career, I can confirm most of it from my own experience as an amateur.

Projects

To motivate myself to look at a problem for extended periods of time, it helps tremendously, if I have a tangible project at hand. I never wanted to learn Python in the first place, but only wanted to automate specific account operations and then ended up this route.
I suggest you pick a small project to start with; for example a tool to collect certain STEEM data that you can not access otherwise.

Stack

I recommend you start with Python, especially if you just want to learn some basic STEEM functions. I believe it is the easiest to get into without prior experience and it is quite powerful. (Unless you want to focus on frontends and user experience - then you should start with javascript, I guess.)
You will end up picking up bits and pieces of different languages along the way automatically - especially if you work by yourself, that would be hard to avoid.

Design

Sooner or later you might try to get into more complicated procedures, like combining some features; You might need some understanding of system design. This video by some dude named Gaurav Sen helped me a lot:

Designing Instagram: System Design of News Feed

I had to pause at times and look up some expressions, when I first watched this.
I find these videos extremely helpful, especially because he covers a lot of questions that Steemit Inc encountered and made me understand how their design choices compare to services that are not 'limited' by a blockchain.

What is an API and how do you design it?

I recommend you skim through all of his system design videos and rewatch them when needed. The further you progress, the more you will need to understand these concepts.

Help

When asking the internet for help, you might get rude answers. Just be prepared for that, especially if you ask stupid questions. I am still scared to open issues on github. Even I might give you a snarky reply here. It is not the end of the world.
Keep it mind that anti-social skills are very important for a developer.

Congratulations

You now have all the resources to learn Python - Have fun !

Sort:  

i would also recommend sentdex
https://www.youtube.com/user/sentdex
i think his channel reflects quite well the fact that with python there are no limits...
but anything programming related is learned best when there is an actual problem you try to solve... for example im currently learning sql because i wanted to build an email newsletter program...

im currently learning sql because i wanted to build an email newsletter program...

I also am at a point, where I need to take a detour and just learn sql fundamentals.

i think his channel reflects quite well the fact that with python there are no limits...

That stuff is so far out, I think it would not matter much if you had to learn an entire new language to go along with it ...

ye his newer videos are really intense stuff but if you look at his older ones he actually builds up all the way to the newer ones teaching you machine learning and before that how to use pandas (i recommend learning to use pandas if u do anything with data) i saw also some beautifulsoup tutorials which is a module i actually used recently and thought its pretty cool

Have you watched the two videos by techlead, which I linked ?

You might notice that they contain only very general advice and no details.

More homework, well I better get started.

I am working on a new chapter, but it might take me a while. ( post/comment module )

I will try to slow it down and produce one chapter per week from now on - what do you think ?

That works fine for me.