Teaching Computational Thought

Teaching Computational Thought Learning how to program, or the general computational thought process that comes along with programming and computer science, is difficult. When learning, there is a clear partition of those who “can” and those, like yourself, who “cannot”. On occasion, you can even observe your fellow students transition from one side of this binary categorization to the other seemingly easily. They acquire some intuition that you simply are not arriving at, no matter how much you study the material and pay attention in class.
Read more

The Annotated Turing by Charles Petzold

The Annotated Turing is a book by Charles Petzold, which I picked up a few years back when I was going through a theory class and wanted some extracurricular reading. As with many attempted extracurriculars, this did not happen that semester, nor the next, nor at all during my education. As the book had finished its proper incubation period last week, I finally read it. I’ve collected some thoughts on it here.
Read more

Choosing the Right Tool for the Job

Programming languages, and to a lesser extent software technologies in general, have an annoying tendency to polarize and fanaticize fanbases. Inherent in tauting benefits and advantages over other systems is implicit disapproval of systems which do not uphold the same standard or principle. This trend almost definitely exists beyond my field of software, but from my narrow world view, and especially as a Rust programmer, I can only observe it in this context.
Read more