Taught by Jeff Kurre, a professor in Writing, Rhetoric and Cultures, this class also incorporates aspects of Digital Humanities. The concepts that define “computational thinking” have been around for ages but recently gained prominence in 2006 with an essay by Dr. Jeanette Wing. She argued that the skills of decomposition (breaking large problems into smaller ones), identifying patterns and anomalies, abstracting away distractions, and devising reusable systems as solutions should be fundamental skills for all students, not just aspiring computer scientists.
While later assignments do include actual programming, earlier projects focus on real world analogies for computer data types, flowcharts and pseudocode to represent steps of a process. Mimicking the actions of sorting algorithms to arrange actual physical items by size.
The goal isn’t for XA students (who have wildly different levels of experience and expertise with computing) to become expert coders, but to learn how their work might benefit from the tireless speed and accuracy of computers. Instead, the goal is to learn ways on how to effectively collaborate with future colleagues who deal in systems and data, and – most importantly – how to keep their work grounded in their humanistic ideals.