Learning Python

Over the past few weeks I have taught a second class, concentrating solely this time on learning the Python programming language. The advantage of this is being able to practice each concept in depth before moving onto the next construct. The disadvantage, naturally, was the lack of visual interest – thinking a logic problem through while looking at code is not as enticing for some as writing markup. Web design and graphics have an appeal which “for” loops can’t compete against, and it is pointless to try.


The secret to selling it lies in the power of coding. Markup such as HTML and CSS can make a site look amazing, and gives instant feedback on your learning – “Look what I created today”. But looking beyond that, what does the page actually do? What extra functionality is there on the page that someone who knew their way around Photoshop (or GIMP, my app of choice) couldn’t have reproduced?


The first time you try to code in javascript and encounter the myriad of curly braces {}, semi colons;¬†and !=, many novices are put off progressing. Add to that the need to understand control of flow statements such as “if”, “for” and “while”, and decoding a javascript function becomes impossible.


Thats where real coding skills come in, and through the course I have tried to explain why we use them, how we use them, and more importantly, how NOT to use them. I hope some of the students now take these skills to the next level and begin writing their own programs, in javascript, python, or any language they choose.