Skip to main content

Computer Education

Software, resources, and course materials for computer science education and teaching.

See also: Courses Taught , Physical Computing

Programming Visualizations

Interactive visualizations to aid in learning programming concepts.

Map Explorer

Web App Educational
Language: JavaScript
Updated: Nov 2020
Screenshot of Map Explorer

Interactive visualization of the map function in Arduino, Processing, and p5.js.

PWM Explorer

Web App Educational
Language: JavaScript
Updated: Dec 2020
Screenshot of PWM Explorer

Interactive visualization of Pulse Width Modulation (PWM).

Callgraph

Educational
Language: Python
Updated: Oct 2021

Jupyter notebook extension that adds call graphs to functions.

Educator Tools

Software designed for educators in technical subjects.

Section Wheel

Educational
Updated: Mar 2021

Interactive wheel for selecting student presentation order.

Multiclone

CLI Tool Educational
Language: Python
Updated: May 2025

Fast tool for cloning all forks of a repository or GitHub Classroom assignments.

multiclone owner/repo
# more...

nbcollate

Archived CLI Tool Educational
Language: Python
Updated: Oct 2021

Combines multiple student Jupyter notebooks into a single organized notebook.

Assignment Dashboard

Archived Educational
Language: Python
Updated: Jun 2018

Dashboard for tracking student Jupyter notebook submissions on GitHub.

Other Projects

Projects that do not fit in other categories.

Harmony Engine

Educational
Language: TypeScript
Updated: Jul 2026

Interactive harmony generator with phrase planning, voice leading, motif development, and accompaniment playback.

Course Materials

JavaScript and p5.js

JavaScript resources, arrays, p5.js tutorials and examples, and VS Code setup for p5.js

Creative Coding

Arduino and ESP32

Arduino programming, sensors, actuators, and ESP32 programming

Physical Computing

Python Programming

Python programming resources and examples

Other Courses

Machine Learning

Machine learning concepts and examples

Other Courses

Educational Software

Programming Visualizations

Interactive visualizations to help understand programming concepts

Programming Tools

Physical Computing Tools

Tools and resources for physical computing and electronics

Teaching Tools

Educational Software Collection

View my collection of educational software, tools, and visualizations for computer science

Teaching Tools