Core Courses

Python code

The following core courses are required for the MA and joint BA/MA in Digital Studies of Language, Culture, and  History. A subset of these courses is required for the undergraduate Minor and for the Graduate Certificate in Digital Studies.

DIGS 20001/30001. Introduction to Computer Programming. 100 units. Spring.
This course provides an introduction to computer programming and computational concepts using the Python programming language. It is a prerequisite for many of the other Digital Studies core courses (students who are already experts in Python may request an exemption from taking this course, subject to the approval of the Director of Digital Studies). The textbook for this course is Think Python (second edition) by Allen B. Downey, which is available online, free of charge. The Spring Quarter version of this course is open to all undergraduate and graduate students; however, students  doing the undergraduate Minor or the joint BA/MA in Digital Studies are given priority in enrollment. An equivalent but accelerated course (DIGS 30000) is offered in September for incoming students in the one-year Digital Studies MA program.

DIGS 20002/30002. Data Analysis for the Humanities I. 100 units. Autumn.
This course provides an introduction to statistics and computational data analysis. Topics covered include probability, distributions, and statistical inference, as well as linear regression and logistic regression. Students will learn how to use Python libraries for statistics and plotting within Jupyter Notebooks. The textbook for this course is OpenIntro Statistics, which is available online, free of charge. Students who have taken the University of Chicago course STAT 22000 or an equivalent statistics course may request an exemption from taking this course, subject to the approval of the Director of Digital Studies. Prerequisite: DIGS 20001/30000/30001, Introduction to Computer Programming (or equivalent expertise in Python).

DIGS 20003/30003. Data Management for the Humanities. 100 units. Autumn.
This course introduces concepts and techniques related to the representation and management of digital data, with emphasis on the forms of data encountered in the humanities. Topics covered include: (1) digital text encoding using the Unicode and XML standards, with attention to the TEI-XML tagging scheme of the Text Encoding Initiative; (2) digital typefaces (“fonts”) for displaying encoded characters; (3) digital encoding of 2D images, 3D models, sound, and video; (4) database models and querying languages (especially SQL for relational databases and SPARQL for non-relational RDF-graph databases), with attention to methods for integrating and querying the kinds of semi-structured and heterogeneous data characteristic of the humanities; (5) ontologies, the Semantic Web, and related technical standards; and (6) cartographic concepts (e.g., coordinate systems and map projections) and the basics of geospatial data management using Geographic Information Systems. This course has no prerequisite; i.e., prior knowledge of computer programming is not required.

DIGS 20004/30004. Data Analysis for the Humanities II. 100 units. Winter.
This course builds on DIGS 20002/30002, “Data Analysis for the Humanities I,” by introducing students to the R language and R packages for data analysis. Topics covered include data visualization, textual analysis, social network analysis, geospatial data analysis, and high-performance computing (HPC) techniques for analyzing large datasets. This course also provides a conceptual introduction to machine learning. The goal is to make students familiar with these methods and aware of their role in linguistic, cultural, and historical studies, as a basis for further study of these methods. Prerequisites: DIGS 20001/30000/30001, Introduction to Computer Programming (or an equivalent course in computer programming) and DIGS 20002/30002, Data Analysis for the Humanities I” (or an equivalent statistics course).

DIGS 20005/30005. Data Publication for the Humanities. 100 units. Winter.
This course introduces software techniques and tools for building Web browser apps written in HTML5, CSS, and JavaScript with emphasis on presenting information to researchers and students in the humanities. Topics covered include: (1) the use of application programming interfaces (APIs) to integrate into Web apps the various analysis, visualization, and database services provided by external systems; (2) the transformation of data into formats appropriate for publication on the Web; and (3) the use of persistent identifiers for reliable citation of published data and the problems of archiving and preserving scholarly data. Prerequisite: DIGS 20001/30000/30001, Introduction to Computer Programming (or an equivalent course in computer programming).

DIGS 20006/30006. Natural Language Processing. 100 units. Spring.
This course introduces software techniques and tools for natural language processing (NLP) using Python. Topics covered include a review of character-string processing and NLP methods for part-of-speech tagging, lemmatization, morphological segmentation, sentence splitting, named entity recognition, co-reference resolution, sentiment analysis, and topic modeling. This course also provides a high-level conceptual overview of recent work in machine translation via neural networks and deep learning. Prerequisites: DIGS 20001/30000/30001, Introduction to Computer Programming (or equivalent expertise in Python) and DIGS 20002/30002, Data Analysis for the Humanities I” (or an equivalent statistics course).

DIGS 20007/30007. Introduction to Digital Humanities. 100 Units. Autumn.
This course is a discussion-oriented seminar that introduces students to theoretical debates in digital humanities, broadly defined, with attention to underlying philosophical issues. It touches upon the history and theory of digital computing within its social and institutional settings, as well as the history of the application of digital computing to texts, images, sound, geospatial data, and other information relevant to cultural and historical studies. Among other topics, this course introduces students to debates about the cultural impact of digital media and about ethical issues related to the ownership, accessibility, and legitimate uses of digital data. This course has no prerequisite; i.e., prior knowledge of computer programming is not required.

DIGS 30000. Introduction to Computer Programming for Digital Studies MA Students. 0 units. September.
This is an intensive September course that requires full-time effort on the part of the student. Classes will meet 2 hours per day for 15 days in the period immediately preceding the Autumn Quarter, with no classes on weekends or on Labor Day, and no class on the Tuesday before the beginning of Autumn Quarter, when the fall Welcome Convocation takes place. It is expected that students will spend several hours each day doing homework outside of class. This course provides an introduction to computer programming and computational concepts using the Python programming language. It is a prerequisite for several other Digital Studies core courses (students who are already experts in Python may request an exemption from taking this course, subject to the approval of the Director of Digital Studies). The textbook for this course is Think Python (second edition) by Allen B. Downey, which is available online, free of charge. The September version of Introduction to Computer Programming is primarily intended for incoming students in the one-year Digital Studies MA program, who are given priority in enrollment and who register for it using the DIGS 30000 non-credit course code. Space permitting, the September course is also open to undergraduate and graduate students in other programs, who may request permission to take it from the Director of Digital Studies. (Note that such students will take it as a credit-bearing course; undergraduates will enroll via the Summer Session using the DIGS 20001 course code while graduate students will enroll using the DIGS 30001 course code.) As a rule, however, students who are not in the one-year Digital Studies MA program should plan to take the non-intensive version of this course in the Spring Quarter (DIGS 20001/30001). Students in the joint BA/MA program in Digital Studies are encouraged to take the Spring Quarter version of this course but they have the option of taking it in September, if necessary (in which case they will use the DIGS 30000 non-credit course code).

NLP word cloud