Serious Programming Games

In 2018, we published a review of 49 serious games for learning how to program: Michael A. Miljanovic, Jeremy S. Bradbury. “A Review of Serious Games for Programming,” Proc. of the 4th Joint Conference on Serious Games (JCSG 2018), pages 204-216, Darmstadt, Germany, Nov. 7-8, 2018. For each game we assessed the programming content of the gameContinue reading “Serious Programming Games”

How to Succeed (and Fail) at Interdisciplinary Research

On May 3, 2018 I gave an invited talk at the 9th Annual Graduate Student Research Conference at UOIT. The topic of my talk was “How to Succeed (and Fail) at Interdisciplinary Research.” Interdisciplinary research is defined as research that involves multiple areas of knowledge and expertise. As graduate students, researchers are often trained toContinue reading “How to Succeed (and Fail) at Interdisciplinary Research”

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”

A Computer Science Professor’s Backpack

Every morning I read through my favourite technology blogs and one series of blog posts that I confess to enjoying are the Featured Bag posts on Lifehacker. These are basically a series of posts where different people from different jobs/walks of life describe the kind of bag they use and what they keep inside it.Continue reading “A Computer Science Professor’s Backpack”

Advice on Finding Relevant Research Papers

One of the questions I often get asked by new research students in my lab is how can they find research papers that are relevant to their thesis. For a student new to research this can be a very daunting task and doing a straight Google, Bing or Yahoo search generates a lot of noiseContinue reading “Advice on Finding Relevant Research Papers”

Hiring attributes used at Google

Today I read an op-ed article in the New York Times titled “How To Get a Job at Google”. The article cites an interview with Laszlo Bock, Google’s Senior VP of People Operations, and identifies the five hiring attributes that Google considers when evaluating potential job applicants:

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.