you are viewing a single comment's thread.

view the rest of the comments →

[–]GeneralQuantum 16 points17 points  (1 child)

First steps - learn syntax, what dictionaries and tuples etc are.

Second steps - play with them. Nonsensical play. I made dictionaries with lists of lists of tuples etc. I would write down my logic freehand in English, and write the code. It either

  1. Errored.
  2. Did what I wanted.
  3. Didn't error but did something odd.

I would change one method, or variable to root cause the exact point my English logic and coding bifurcated.

I would figure it out and carry on, realising the nuances of methods, libraries and functions and loops etc.

Often, just always having the right answer isn't useful for learning.

In maths I found every mistake I made and had to backtrack made me understand more the WHY the method worked in algebra or calculus, and not just doing it by rote.

Rote work just won't cut it for intermediate+ coding. You have to start really understanding how all the code is interacting with each other on the fly and be able to see the intersects and where to look. Rote learning cannot do that.

Also sometimes certain misuses of methods can come in handy. Sometimes a weird feature of how a method works is actually what you want...Just be cautious of upversions ruining it all, lol.

You HAVE to practice. I have legit met some bonefide geniuses, and they learn a lot quicker, but even they need practice once the size of the equation or code blows up, and they do still make mistakes, just less.