Where’d that null
come from?
One of the most annoying things that can happen to a computer programmer is the dreaded NullPointerException, or in C++, the segfault that occurs due to dereferencing a null pointer. The null pointer error has this ‘feature’ which makes it…
Teaching Consultation
A couple weeks back I substituted as the TA for a discussion section. I was recorded on video, which was reviewed by the Teaching, Learning, & Technology Center. Here are some notes about educational techniques that I took during the…
Deliberate Practice in Programming
The easiest way to improve your working habits and skillset is by deliberately practicing. For example, according to The role of deliberate practice in the acquisition of expert performance (1993, Psychological Review) what separates elite players from average players is…
Learning the Abstractions
Since much of programming is about creating and manipulating abstractions, it figures that a large amount of education is going to be about leaning those abstractions. Things like classic data structures, the useful sloppiness of O-notation for algorithm analysis, and…
Object Oriented Compiler Architecture
Out of some curiosity, I quickly read this paper today: The Object-Oriented Architecture of High-Performance Compilers, Lutz Hamel, Diane Meirowitz and Spiro Michaylov, Technical Report, Thinking Machines Corporation, 1996. Even though they assume that the compilers internal representation is some…
Strong Typing for Security
I got into a mild argument about static vs. dynamic typing. I recognize that static typing can be verbose to the point of being repetitious. Take Java generics for example: List<String> astr = new ArrayList<String>();List<String> astr = new ArrayList<String>(); There…
Teaching-Oriented Faculty at Research Universities
The Communications of the ACM has put out an interesting piece about the treatment and role of faculty who wish to focus on teaching more than research. This viewpoint article, Teaching-Oriented Faculty at Research Universities, includes comments from people I’ve…
College Isn’t For Everyone
I’ve been spending a lot of cog cycles processing ways to make money doing education. It’s apparently quite difficult. With statements like There is No Profit in Education, No Competitive Advantage to Better Learning. and posts about Why Education Startups…
KernCUE
This past weekend, I made the trip up to Bakersfield. It took far longer than necessary to drive there because, even at midnight, the 5 is clogged with traffic. I went to attend the KernCue conference. Although, it focused exclusively…

eXtreme Education: Cognitive programming
I read a few articles that I’d like to pull together and place under the growing umbrella of what might probably become my personal teaching philosophy. First, when you look at eXtreme Programming, it consists of a collection of reinforcing…