Coder’s Log Terradate 26.06.2013

pythonI got some great feedback about my post this morning that for my CCOW project what I wanted to do is leave the SCRATCH sandbox and learn to code in Python.

Eric Schilling responded on Google Plus:

Have you checked out Blockly from Google? It’s a web-based, graphical programming editor, similar to Scratch except it will provide the code in a number of different programing languages (phyton, xml, etc.).
http://blockly-demo.appspot.com/static/apps/code/en.htmlAlso, I found Code Academy was a wonderful resource to learn new programming languages.
http://www.codecademy.com/tracks/python

I checked out both resources and they are quite useful.  Blocky seems to be a little more clunky than scratch, and it is also a sandbox type learning environment.  But it may be very useful transition for figuring out how things work in python by snapping somewhat familiar blocks together and viewing the python code that it outputs.
The codeacademy resource looks good, but I went looking for some other free kid friendly “How to code in python books” so that I could recommend some resources for children ready to make the move from Scratch.
Here on the blog, Claude commented:
Your blog is always very interesting Sean! Ok, now I have maybe too straightforward question for you : why don’t you set your objective to simply learn python and make a game with it? I know the course is supposed to be based on scratch, but it sounds like you’re twisting your multiple objectives to fit the course. And I think that when you teach with scratch, at some point you want introduce student too “fuller” languages, and I hear python is the natural second step. So it would be very coherent to prepare like the next step learning Python, wouldn’t it?
Thank you Claude.  You helped clarify to me about my project.  Rather than try to convert python code to scratch or vice versa, I will just document my own transition from the closed sandbox of scratch to the larger playground afforded by python.
So tonight I explored a number of beginner Python resources including:
Al Sweigart has 3 comprehensive free books geared at teaching nonprogrammers and children how to program python through games.

I settled on using the Python Book for Beginners by Jody S. Ginther  because it offers  a very simple short (58 page) primer to downloading and beginning to program with Python.    The first thing I did after I downloaded the book, is followed its instructions to Download Python for Windows and install it.  Don’t worry if you use Mac or Linux, there are flavours of Python for most operating systems.

Then I just started working through the book and following the code examples to make my first programs.  My first impressions of python are that through my use of Scratch and programming in BASIC 30 years ago, I know the basic principals of programming.  I will just have to start to learn the commands, syntax and peculiarities of python.  I like how the IDLE python editor uses color commands to differentiate between different types of commands.  It also automatically indents certain commands to make it easy to see which commands belong with which blocks of code.

My other first impression is that I realize now that the training wheels are definitely off.  Scratch offers a kind of mixed sandbox with it’s integrated graphics and audio editors, background support and focus on making multimedia programs easily.  There is a ton of programming and arranging you can do in scratch without ever snapping together a code block  (Ie setting up a picture or scene with a variety of text, paintings, and sprites).     Not so in python (or other object oriented languages).  If you don’t explicitly tell the computer to do something in the code– it will not happen.

Last thought before bedtime.  Today’s refined project objective for my CCOW project:  Document my transition from using Scratch to learning python on this blog.   Try to keep in my mind tips and resources that would help students make this transition.

Leave a Reply