Last year I started teaching my son Joshua, who was 10 years old at the time, to learn the programming language of Python. I had searched for and researched a Kids Programming Language, and settled on Python and the Livewires course. Python promotes good programming practices, the language and its tools are available for free on many platforms and operating systems, and the language can be used to develop some serious software. The Livewires course includes a series of worksheets and reference sheets that culminate in the skills necessary to write a game.
I decided that I wanted to learn to program Python too, so a friend of mine suggested reading Dive Into Python, a Python book for experienced programmers. You can buy a printed copy, read it online, or download it in a variety of formats.
Setting up Python is easy on most operating systems, and it came already installed on Ubuntu Linux. There are lots of libraries and frameworks for Python, including pyGame and wxPython. There are free and open source development environments that make editing and running your programs easy – I like DrPython.
I also want to write a BACnet workstation client using Python, and my friend Joel donated some core BACnet code that is written in Python just for doing that. Hopefully I will be up to speed soon on programming Python and will be able to create some demos for the project.