Category Archives: teaching

Towards a new programming languages course: ideas welcome!

tl;dr: This fall, I will be teaching an undergraduate PL course, with a focus on practical language design principles and tools. Feedback, questions, assignments you can share with me, etc. are all most welcome! This fall, I will be teaching … Continue reading

Posted in teaching | Tagged , , , , | 12 Comments

Experience report: oral final exam

This past spring I taught a standard data structures course (stacks, queues, binary trees, heaps, asymptotic analysis, that kind of thing). Inspired by a group I participated in exploring pedagogy and course design—led by the wonderful Betsy Burris—I decided to … Continue reading

Posted in teaching | Tagged , , , , | 5 Comments

Catsters guide is complete!

About a year and a half ago I announced that I had started creating a guide to the excellent series of category theory YouTube videos by the Catsters (aka Eugenia Cheng and Simon Willerton). I am happy to report that … Continue reading

Posted in haskell, math, teaching | Tagged | 2 Comments

Thoughts on grade inflation, part I: is grade inflation bad?

Grade inflation.  It’s terrible, horrible, no good, very bad, and ruining everything.  …right? Well… I’m not so sure.  What I do know is that the typical conversation around grade inflation frustrates me. At best, it often leaves many important assumptions unstated and unquestioned.  Is … Continue reading

Posted in teaching | Tagged , , , | 4 Comments

Catsters guide

tl;dr: https://byorgey.wordpress.com/catsters-guide-2/ In an attempt to solidify and extend my knowledge of category theory, I have been working my way through the excellent series of category theory lectures posted on Youtube by Eugenia Cheng and Simon Willerton, aka the Catsters. … Continue reading

Posted in haskell, math, teaching | Tagged | 2 Comments

Teaching abstraction

I’m just beginning to prepare for the third incarnation of CIS 194, Introduction to Haskell in the spring. It’s occasioned some general thoughts on teaching abstraction which seemed worth writing down. Abstractions, of course, are everywhere in CS. By abstraction … Continue reading

Posted in teaching | Tagged , , , | 8 Comments

Monads: Easy or Hard?

Executive summary: they are actually both (or neither). It is easy to learn their definition but hard to grasp the consequences. Or we might say they are easy to know and hard to understand (grok). It is vitally important for … Continue reading

Posted in haskell, learning, teaching | Tagged , , , | 4 Comments