I 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:
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?
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.