This semester I am teaching two courses:
- CSCI 365, Functional Programming (using Haskell and Idris).
- CSCI 150, Foundations of CS
As part of the ongoing disco project (a language for teaching functional programming & discrete math) I’ve been thinking about how to create good interactive error explanations for programming languages. My talk abstract with Richard Eisenberg and Harley Eades was accepted to OBT 2018. After successfully delivering the talk at OBT, I’m working on writing it up as a blog post (or extending the abstract, or something like that).
I’m in the middle of a series of blog posts on The Math Less Traveled exploring primality testing algorithms. I’ve finished up a sub-series exploring proofs of Fermat’s Little Theorem; next up is to start writing about primality tests themselves, and why it seems (but we can’t prove) that we live in a rather interesting universe where primality testing can be done quickly but not factoring.
Lately I’ve been solving a lot of problems on Open Kattis, for fun and as preparation for coaching the Hendrix programming team.
Things I’m reading right now:
- An Illustrated Theory of Numbers by Martin Weissman
- Reverse Mathematics by John Stillwell
- Living in God’s Two Kingdoms by David VanDrunen
- I am reading the book of Genesis in the original Hebrew, a little bit every day; currently in chapter 7.
- I’m reading through the entire Greek New Testament; currently in 1st John and on track to finish by March 2018.