Sam Scott @ mohawk Materials for Educators

Machine Learning: Implementing the Algorithms

Presented a three-hour workshop on machine learning with Python, Numpy, and SKLearn. University of Waterloo, August 14, 2019.

Workshop Materials »

SKLearn Documentation »

UCI Data Repository »

A Gentle Introduction to Machine Learning

Presented a three-hour "unplugged" workshop on machine learning. University of Waterloo, August 15, 2018.

Workshop Materials »

Perceptrons Made Easier »

Easy Pygame

Presented a one-hour workshop on, an "easy" version of pygame for novice programmers. Seneca College, February 24, 2018.

Workshop Materials »

Teach Python / Teach Pygame

Presented five hours of workshops that together comprised a quick rundown of basic features of both Python and Pygame. The focus was on what teachers need to know to get going. Sheridan College PD Day for Dufferin-Peel Computer Science Teachers, May 6, 2016.

Workshop Materials »

Multi-Agent Programming Competitions for ICS4U

Presented two Multi-Agent Game Arenas developed for and used successfully in my ICS4U classroom. In both systems, students create a Java class for their Bot and then the bots face off against one another in an "arena" application. Software and documentation provided. University of Waterloo, 2011 and Seneca College, 2015.

Workshop Materials »

Java Game Programming Made "Easy"

Presented my updated version of Holt Software Associates' graphical console for introductory Java programming, along with instructions on how to use it to create 2D casual games. I also provided complete course materials for an ICS3U course that relies heavily on the graphics console. University of Waterloo, 2012.

Workshop Materials »

A JavaScript Primer

Presented a basic introduction to the JavaScript programming language for high school teachers. University of Waterloo, 2013.

Workshop Materials »

Introduction to App Inventor

Presented a basic introduction to MIT's App Inventor, a drag-and-drop programming system for creating Android Apps. University of Toronto, 2012.

Workshop Materials »

Intro to Server Side Scripting with PHP

Presented a basic introduction client-server programming on the web and simple Input-Processing-Output programs in PHP. University of Waterloo, 2014.

Workshop Materials »

JavaScript for Web Apps

Presented a framework designed to get high school students creating HTML5 canvas apps quickly. Leaside High School, Toronto, 2013.

Workshop Materials »


Code and documentation for a multi-agent Java game system where students create bots (i.e. Java objects) to face off against one another.

More Info » Get It »

Rock Paper Scissors Lizard Spock

Another multi-agent Java game. Student-created bots (i.e. Java objects) try to predict what their opponent will do next in an augmented game of Rock Paper Scissors.

More Info » Get It »

HTML5 Canvas App Template

A template for creating HTML5 canvas apps. Instructions are in the comments inside the "code" folder.

Get It » Example App »

The hsa_ufa Console

A package for beginner Java programmers. Simplifies I/O and allows beginning students to create simple 2D graphics and games.

Get It »

Michael Harwood has created a new version of this package including anti-aliasing. It's available on github.

Get the Latest »

Complete ICS3U Course

Full set of handouts and other materials for an ICS3U course using Java and the hsa_ufa console.

Get It »