My objective this year is to become a master of python or at the very least proficient enough to pick up someone else’s code and hit the ground running. The nice part about python compared to other languages is that the forced use of indents makes reading the code of other authors smoother because the indentation makes it easier on the eyes to spot blocking of for loops, if statements, etc..
This weekend I completed all the python exercises provided by Google’s Python Class. Google’s coding lessons are highly efficient when learning the basics quickly. I started my python journey by completing the exercises in Learning Python the Hard Way and I am currently reading Mark Lutz’s Learning Python. I think all of these resources were essential to improving my understanding but I think the best order to study Python is start with Google’s Python Class, then Learning Python the Hard Way, followed by the exercises in Learning Python. I am currently attending the San Diego Python User’s Group which is a Meetup organized around the passionate study of Python.
The people I met have been very enthusiastic and supportive of my goal to become a better programmer. I go to the library at least four times a week for a three hours programming learning session and it can be a solitary journey at times. This San Diego group of Python programmers, a group at all levels of experience, has been a great resource for encouragement and vision of where I can be if I continue to pursue this creative outlet.
By the way the IDE or Integrated Development Environment that I have chosen to start with is PyCharms and the community version is free. I have heard of other good IDE’s namely Spyder, Eclipse, and a few others but I went with PyCharms because of the compatibility with multiple operating systems and ease of use. While I am learning Python I am also learning Linux, specifically Ubuntu 12.04 LTS, at the same time. I used to question why anyone would try to learn Linux when they could stick with the OS they know such as Windows or OS X. It took me about one week with the book The Linux Command Line to get on my feet walking. I will never willingly buy another Mac or Windows OS again. The first advantage I came across were two simple command line instructions in Linux called “sudo apt-get update” and “sudo apt-get upgrade”. In Windows or Mac OS X one must manually update Flash, Safari, Word, etc… one by one on a weekly if not daily basis. In Linux “apt-get update” grabs the newest updates from repositories and “apt-get upgrade” updates all your software. I am pretty pleases with Ubuntu so far and it is my preferred OS for getting work done.