Sutra to become a Pythonista

Once you’ve got your python basics down the throat, what to do next? what should you learn? Despite the vast community support python forums still lack succinct progression path to help the aspiring pythoneers. How do you go from being a novice python programmer to an expert Pythonista ? or a Pythoneer ?

First things first !

When it comes to programming, no matter how much you hate it in the beginning, if you spend some quality time, you will eventually fall in love.

Before I tell you the Sutra of becoming a pythonista, you should adhere to some of the general programming practices.

  1. ABC (Always Be Coding) : In order to gain mastery in any field, you need to practice consistently. This is a must. Despite the fact that python is easy for beginners, once you’ve got the basics down your throat, the learning curve is steep.
  2. 1:4 ratio — For every 1 hour you spend learning a concept, spend 4 hours getting your hands dirty doing something that involves the concepts you’ve learned in your 1 hour study.

So here goes the python progression path from an apprentice to guru.

  1. Discover list comprehensions
  2. Discover generators
  3. Incorporate map, reduce, filter, iter, range, xrange often into your code
  4. Discover Decorators
  5. Write recursive functions, a lot
  6. Discover itertools and functools
  7. Read Real World Haskell (read free online)
  8. Rewrite all your old Python code with tons of higher order functions, recursion, and whatnot.
  9. Annoy your cubicle mates every time they present you with a Python class. Claim it could be “better” implemented as a dictionary plus some functions. Embrace functional programming.
  10. Rediscover the Strategy pattern and then all those things from imperative code you tried so hard to forget after Haskell.
  11. Find a balance.