DIGC 4000: Advanced Work with Code

Course in Digital Culture
Course in Digital Culture
Course Description:

This course teaches you to understand code using Python at the 10,000-foot level. You'll develop competencies to communicate with programmers and software engineers, to bridge the gap between the programmer and the client. It reinforces and builds upon the skills learned in previous coding courses in the DIGC cluster. Students will gain a deeper understanding of Python programming and develop the skills necessary to comprehend more complex Python programs.

Throughout the course, students will develop a rudimentary understanding of specifications for code, which can be utilized to bridge the gap between knowledge domain experts and programmers. They will learn to discuss types and assignment, evaluate expressions, and practice logical reasoning through branches and loops.

In addition, students will explore the development of small but structured programs, emphasizing ease of design, testing, and debugging through the formal description, and use, of functions. The course will also cover writing simple classes, which will help students to develop more complex programs and solve real-world problems. Upon completion of the course, students will have sufficient skills to understand, at a higher level, what a more professional Python program is doing. They will be able to read basic code and discuss it in detail. The course will provide students with a solid foundation for interfacing with programmers in a professional environment.

Course Credits:
1 course unit (c.u.)*
Term Format:
Accelerated 8-Week Term
2024 Term Offered:
Summer 1 (accelerated): May 28 – Jul 23, 2024
Course Block:

*Academic credit is defined by the University of Pennsylvania as a course unit (c.u.). A course unit (c.u.) is a general measure of academic work over a period of time, typically a term (semester or summer). A c.u. (or a fraction of a c.u.) represents different types of academic work across different types of academic programs and is the basic unit of progress toward a degree. One c.u. is usually converted to a four-semester-hour course.


  • Lecturer, computer programming

Kurt Schmidt started in mathematics, earning a BA with honors. He continued to grad school, pursued an MS, and was offered an opportunity to get another MS in computer science. Turns out he’s a better programmer than mathematician (though he retains his love of math).

In school, he concentrated on… Read more


Take the next steps to enroll in a course.

Get Started

Learn more about Penn LPS Online