Programming for the Humanities
Brian Kokensparger, Wade Peyou · 2018
CS instructors are sometimes tasked with modifying CS1 courses to teach introductory programming for the Digital Humanities. Training computer science students in DH programming methods may also have some additional benefits, such as bringing more women into computing, and helping in the recruitment and retention of CS students overall. DH projects may also provide Service-Learning opportunities that will give students experiential learning opportunities not provided in industry. The presenters have developed six assignments in Python that are oriented towards DH topics while still providing CS students solid experiences in core programming concepts. This workshop introduces the participants to five of the assignments and gives them immersive abbreviated experiences in each. The topics include Computing Change over Time (calculating burials in a historic cemetery), Visualization of Change over Time (visualizing the burials in the historic cemetery), Textual Analysis (finding word frequencies and "stop words" in public domain texts), Stylometrics (comparing measured features of graphic images), and Social Network Analysis (analyzing extended relationships in historic social circles). A balance of direct coding experience and discussion of gotchas and best practices in classroom management will give workshop participants confidence in offering and managing these assignments in their own classrooms. Participants should bring a laptop/keying-friendly mobile device that has a Python 3.x IDE already installed, and some familiarity with the Python language.