Recording Programming Activities in the Classroom

Background Before I detail how I video record in-class programming activities I want to provide some context. I’ve been teaching introductory programming courses for close to 10 years and  most recently I instructed a first-year first-semester course called CSCI 1060U: Programming Workshop I. My general philosophy on teaching programming is based on two simple rules: LearningContinue reading “Recording Programming Activities in the Classroom”

Top Reasons to Study Computer Science at UOIT

[Undergraduate Edition] 5 years ago I wrote a blog post titled Top 4 Reasons to Study Computer Science at UOIT. Since then a lot has changed and I thought it was time to write an updated post! I have participated in UOIT recruitment events for the past 10 years and I have answered a lot ofContinue reading “Top Reasons to Study Computer Science at UOIT”

Adaptive Serious Games for Computer Science Education

PhD student and SQR Lab member Michael Miljanovic was selected as a finalist in the  2017 Three Minute Thesis (3MT) competition at UOIT. Michael’s 3MT talk discussed his PhD research into the use of adaptive serious games to improve Computer Science education. The goal of his research is to adapt games to an individual player in an effort to improve learning andContinue reading “Adaptive Serious Games for Computer Science Education”

Using Slack in the Classroom

This semester I decided to try using Slack as an alternative communication channel in an upper-year university course that I teach. I’d already been using Slack in my research lab and I was familiar with the features and I thought it might translate well to the university class setting. The one disclaimer I would offer to anybody considering using Slack isContinue reading “Using Slack in the Classroom”

Good Resources for Learning to Program with Concurrency

With the increase in multicore processors there has been an increase in demand for concurrent programming and an increase in books and resources that focus on programming with concurrency. Below I will outline some of the books on my own bookshelf that have been useful.