Introductory to Advanced Programming Resources

Introductory Programming


Scratch is a programming language that makes it easy to create your own interactive stories, animations, games, music, and art -- and share your creations on the web.


Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. An introductory teaching tool for computing, it uses 3D graphics and a drag-and-drop interface to facilitate a more engaging, less frustrating first programming experience.


BeeperBot, or BB for short, is a programming environment to control a primitive graphical robot that exists in a two dimensional grid world. We often refer to the robot as BB itself. The robot can only interact with walls and beepers.


PET (or the Program Exploration Tool) is an easy-to-learn programming language which is executed inside a separate user interface panel.


Learn HTML, CSS, Javascript and other languages of the web.

Codecademy teaches web fundamentals (and then some) through a series of interactive lessons.

Code/Racer is a multi-player live coding game that teaches you how to code a basic website using HTML and CSS.

Code Combat teaches Javascript through an interactive role-playing game.

Intro to Coding

Canada Learning Code has an Edmonton Chapter that puts on various beginner-friendly coding workshops.

Intermediate/Advanced Programming

Advanced Scratch

BYOB is an advanced offshoot of Scratch which attempts to extend the brilliant accessibility of Scratch to somewhat older users-in particular, non-CS-major computer science students-without becoming inaccessible to its original audience.

Panther is another advanced version of Scratch. With a host of new features such as file and webpage manipulation and advanced colour sensing, cloning and much more besides, Panther provides advanced usage for avid Scratchers around the globe.


Java is a programming language and computing platform first released by Sun Microsystems in 1995. It is the underlying technology that powers state-of-the-art programs including utilities, games, and business applications.


ScriptEase is a model for AI scripting being developed by the Department of Computing Science at the U of A. The model is pattern template based, sllowing designers to quickly build complex behaviours without doing explicit programming.

Other Resources

Dick Baldwin offers hundreds of tutorials in Scratch, Alice, Java, JavaScript, C++ and more.

The New Boston is a channel on YouTube that offers video tutorials covering Java, C++, iPhone tutorials and more.

Gerry Donaldson is an experienced and active high school CS teacher in Alberta who maintains ComSci High and can be contacted for more information on AP and IB Computer Science materials.

K-8 Computer Science: Building a Solid Foundation is a collection of articles providing discussion, ideas for K-8 classroom activities and curriculum development, and resources for local advocacy efforts.

Competitions and Challenges

On most of these competition sites, you will find past exams, solutions and test data that can be used to prepare for other challenges like the Iverson Exam!