Syllabus

Syllabus

Welcome to DIGHT 210: Programming in the Humanities 1!

This course is designed to teach students with little or no programming experience the skills they need to write basic programs on their own, with a special emphasis on text processing and digital methods for the humanities. We will be using Python, focusing on how programming can help analyze, interpret, and visualize texts and other humanities data. By the end of the class, I hope you walk away with the ability to program well and the confidence to apply these skills in humanities research and projects.

IMPORTANT: For information on how to get help from your instructor, or other questions about how to get help, see Getting Help.

Programming and Agency

As children of God, we have the unique ability to observe the world and ourselves, think about what we see, and make choices. Our ability to reason is essential to our agency—we cannot act for ourselves if we cannot think for ourselves.

Programming is about learning to think—to be more accurate, thorough, precise, and creative in both how we perceive the world and express our ideas. In the humanities, programming allows us to explore texts, language, and culture in new ways, opening up possibilities for discovery and interpretation.

It takes work to develop our ability to think. This course is designed to give you opportunities to practice thinking, especially in the context of analyzing and working with textual data. The skills you gain here will help you reason more clearly and confidently, and will benefit you in many areas of life.

The DIGHT 210 Community

To help build a spirit of belonging, I require you to participate in the in-person labs twice a week. The lab is a place to learn to program together, especially as we work with texts and humanities data. In lab, you can look at each other’s code, write code together, and talk about different ways of solving problems. If you are really solid on the concepts we learned in class that week, you should still go to lab, so you can help others learn what you know. Being part of a community means sharing what you know and being willing to receive knowledge from others.

If you ever feel out of place — whether in this class, your chosen major, or at BYU — or for any reason, please come talk to me. I care about your experience and want to help. If you have difficulty with your mental health, please seek counseling (CAPS and UAC). If you need help with accommodations, please contact your instructor. You can also talk to our colleagues in the BYU Office of Belonging, found in the Wilkinson Center across from the information desk.

Learning Outcomes

  • Programming: Demonstrate the ability to independently write small programs (about 150 lines of code), given an English description of what the program should accomplish, with a focus on text processing and humanities data.
  • Basic Programming Constructs: Effectively use basic programming constructs, including variables, statements, expressions, and control, especially in the context of manipulating and analyzing text.
  • Abstraction: Develop the ability to use and create functions when writing programs, including functions for text analysis and transformation.
  • Algorithms: Effectively use basic algorithms to design and develop a program, with emphasis on algorithms relevant to text and language data.
  • Data Structures: Effectively utilize basic data structures such as lists and dictionaries to represent and store data in a program, including textual data and metadata.
  • Testing and Debugging: Use simple tests to ensure correct functioning of a program. Explain error messages and use a debugger to identify bugs.

Should I be in this class?

You should take this class if:

  • You would like to learn how to program and have never programmed before, especially if you are interested in linguistics, humanities, literature, history, or related fields.
  • You have done a little bit of programming before but are not ready for DIGHT/LING 360, which will go quickly into advanced concepts.
  • You want to learn how programming can help you analyze, interpret, and visualize texts and other humanities data.

Lectures

All lectures will be posted as videos that allow you to learn at your own pace. Links to lectures will be given in each lab assignment.

Course Requirements and Materials

There are no prerequisites to this course; students with little or no prior programming experience can succeed in it.

There is no required textbook; all course materials will be provided on this website.

Platforms

  • Course Website: The day-to-day happenings of the course (and links to all the platforms below) can be found on this website.
  • Learning Suite: This is where you can view your grades. Learning Suite also has links to the course website.

Assignments

There are four types of assignments for this course — labs, quizzes, final project, and final exam. The following table summarizes important information about them. See below for more details and be sure to review the academic honesty policy below.

Assignment Purpose Type of Work
Labs Learn to code together, prepare for quizzes & exam Work with a partner, discuss and write code together, produce your own work
Quizzes Check understanding of key concepts Complete individually, no collaboration
Final Project Apply skills to a humanities text/data problem Work independently, may seek help from instructor, no collaboration with students
Final Exam Demonstrate mastery of programming skills Complete individually, no collaboration

Labs

Lab assignments are designed to be done with a partner; however, it is not appropriate to “divide and conquer” on an assignment. Work together on each activity, but each of you should write your own code. Each lab assignment must be completed before the corresponding quiz or final exam. Attendance at in-person labs is required.

Quizzes

Each unit ends with an in-class quiz. This is an opportunity for you to demonstrate the skills you have developed so far in the class. Quizzes are closed everything. Please do not consult any sources, including your own code, while working on these activities.

Final Project

The final project is an opportunity for you to demonstrate mastery of the skills learned in the course. The final project is to be done individually. The code you turn in for your final project should be entirely your own.

Five or six weeks before the end of the semester, work with your instructor to plan a final project that will do some basic text processing on a corpus of your own choosing. Your project should require three weeks of work to complete (in place of labs/quizzes). Your instructor will help you judge whether your proposed project is an appropriate amount of work.

At the end of the semester, you will share the results of your final project with your classmates in a short 5-8 minute presentation.

Final Exam

Your final exam will be an in-person live-coding assessment. If you did your own work on the labs, quizzes, and final project, you should be well-prepared for the final exam.

Grade Scale

Grade Percentage
A 100-93%
A- < 93-90%
B+ < 90-87%
B < 87-83%
B- < 83-80%
C+ < 80-77%
C < 77-73%
C- < 73-70%
D+ < 70-67%
D < 67-63%
D- < 63-60%
E < 60%

University Policies

Statement on Belonging

We are united by our common primary identity as children of God (Acts 17:29; Psalm 82:6) and our commitment to the truths of the restored gospel of Jesus Christ (BYU Mission Statement). We strive to create a community of belonging composed of students, faculty, and staff whose hearts are knit together in love (Mosiah 18:21) where:

All relationships reflect devout love of God and a loving, genuine concern for the welfare of our neighbor (BYU Mission Statement); We value and embrace the variety of individual characteristics, life experiences and circumstances, perspectives, talents, and gifts of each member of the community and the richness and strength they bring to our community (1 Corinthians 12:12–27); Our interactions create and support an environment of belonging (Ephesians 2:19); and The full realization of each student’s divine potential is our central focus (BYU Mission Statement).

Honor Code

As faculty, administration, staff, and students voluntarily commit to conduct their lives in accordance with the principles of the gospel of Jesus Christ, they strive to maintain the highest standards in their personal conduct regarding honor, integrity, morality, and consideration of others.

Preventing Sexual Misconduct

As required by Title IX of the Education Amendments of 1972, the university prohibits sex discrimination against any participant in its education programs or activities. Title IX also prohibits sexual harassment-including sexual violence-committed by or against students, university employees, and visitors to campus. As outlined in university policy, sexual harassment, dating violence, domestic violence, sexual assault, and stalking are considered forms of “Sexual Misconduct” prohibited by the university.

University policy requires any university employee in a teaching, managerial, or supervisory role to report incidents of sexual misconduct that come to their attention through various forms including face-to-face conversation, a written class assignment or paper, class discussion, email, text, or social media post. If you encounter Sexual Misconduct, please contact the Title IX Coordinator at t9coordinator@byu.edu or 801-422-2130 or Ethics Point at https://titleix.byu.edu/report or 1-888-238-1062 (24-hours). Additional information about Title IX and resources available to you can be found at http://titleix.byu.edu.

Student Disability

Brigham Young University is committed to providing a working and learning atmosphere that reasonably accommodates qualified persons with disabilities. If you have any disability which may impair your ability to complete this course successfully, please contact the University Accessibility Center (UAC), 2170 WSC or 422-2767. Reasonable academic accommodations are reviewed for all students who have qualified, documented disabilities. The UAC can also assess students for learning, attention, and emotional concerns. Services are coordinated with the student and instructor by the UAC. If you need assistance or if you feel you have been unlawfully discriminated against on the basis of disability, you may seek resolution through established grievance policy and procedures by contacting the Equal Employment Office at 422-5895, D-285 ASB.

Academic Honesty

aThe first injunction of the Honor Code is the call to “be honest.” Students come to the university not only to improve their minds, gain knowledge, and develop skills that will assist them in their life’s work, but also to build character. “President David O. McKay taught that character is the highest aim of education” (The Aims of a BYU Education, p.6). It is the purpose of the BYU Academic Honesty Policy to assist in fulfilling that aim. BYU students should seek to be totally honest in their dealings with others. They should complete their own work and be evaluated based upon that work. They should avoid academic dishonesty and misconduct in all its forms, including but not limited to plagiarism, fabrication or falsification, cheating, and other academic misconduct.