Overview

Hello!!!

This page contains a list of course websites for UPenn that are taught by CIS faculty (and a few others).

The point of this is to help with figuring out which courses may be interesting to you. There is always the course description, but sometimes you want to see more than that. Hopefully this site helps you figure out what courses there are and what is involved in each of them.

Note that some of these course sites may be out of date and so may be somewhat inaccurate. We still list the sites that are most up to date in case it helps someone decide on a course.

Also note that the 6xxx and 7xxx courses can vary a lot from professor to professor and semester to semester. So take those courses with a grain of salt.

If you notice anything wrong (like a course missing or a site missing) then feel free to reach out to tqmcgaha AT seas.upenn.edu and let us know!

Hopefully you are doing well and this helps!

Intro Courses

CIS 1050

Computational Data Exploration

https://www.seas.upenn.edu/~bhusnur4/cis105/16fa/

CIS 1100

Introduction to Computer Programming

https://www.seas.upenn.edu/~cis110/current/

CIS 1070

Visual Culture

No link found :(

CIS 1200

Programming Languages and Techniques I

https://www.seas.upenn.edu/~cis120/current/

CIS 1600

Mathematical Foundations of Computer Science

https://www.cis.upenn.edu/~cis1600/current/

CIS 1210

Programming Languages and Techniques II

https://www.seas.upenn.edu/~cis1210/current/

Mini Courses

CIS 19XX

Overall Mini Course Site

https://www.cis.upenn.edu/~cis19x/

CIS 1901

C++ Programming

https://www.seas.upenn.edu/~cis1900/

CIS 1902

Python Programming

https://www.cis.upenn.edu/~cis1902/

CIS 1903

Go Programming

https://www.seas.upenn.edu/~cis1930/

CIS 1904

Introduction to Haskell Programming

https://www.cis.upenn.edu/~cis1904/

CIS 1905

Rust Programming

https://www.cis.upenn.edu/~cis1905/

CIS 1911

Using and Understanding Unix and Linux

No link found :(

CIS 1912

DevOps

https://cis1912.org/

CIS 1921

Solving Hard Problems in Practice

https://www.cis.upenn.edu/~cis1921/

CIS 1951

iOS Programming

https://www.seas.upenn.edu/~cis1951/

CIS 1952

Android Programming

https://github.com/cis1950android

CIS 1961

Ruby on Rails

https://www.seas.upenn.edu/~cis1960/

CIS 1962

JavaScript Programming

https://www.seas.upenn.edu/~cis1962/

Programming Languages, Compilers, Software Engineering

CIS 3500

Software Design/Engineering

https://github.com/CIS-3500

CIS 5470

Software Analysis

https://cis547.github.io/

CIS 5570

Programming for the Web

https://www.seas.upenn.edu/~cis5570/

CIS 5590

Programming and problem solving

https://www.cis.upenn.edu/~cis5590/

CIS 6700

Advanced Topics in Programming Languages (Benjamin Pierce)

https://www.cis.upenn.edu/~bcpierce/courses/6700-SL-2024/current/index.html

CIS 6700/7000

Advanced Topics in Programming Languages (Stephanie Weirich)

https://github.com/plclub/cis6700-23sp

CIS 6700

Advanced Topics in Programming Languages (Steve Zdancewic)

https://www.cis.upenn.edu/~stevez/cis670/index.html

CIS 6730

Computer-Aided Verification

https://www.cis.upenn.edu/~alur/cis673.html

Systems, Networking, Security, Crypto

NETS 2120

Scalable and Cloud Computing

https://nets2120.seas.upenn.edu/

CIS 4480/5480

Operating Systems Design and Implementation

https://www.seas.upenn.edu/~cis5480/current/

CIS 4510/5510

Computer and Network Security

https://www.cis.upenn.edu/~sga001/classes/cis551f24/

CIS 4550/5550

Internet and Web Systems

https://cis5550.seas.upenn.edu/

CIS 5050

Software Sysetms

https://www.cis.upenn.edu/~cis5050/

CIS 5530

Networked Systems

https://www.seas.upenn.edu/~cis5530/

CIS 5490

Wireless Communication for Mobile Networks and Internet of Things

https://www.cis.upenn.edu/~kimbong/cis549-23fa/

CIS 7000

Security Special Topic (Pratyush Mishra)

https://pratyushmishra.com/classes/cis-7000-f23/

Embedded, Internet of Things, Health

CIS 4410/5410

Embedded Software for Life-Critical Applications

https://www.seas.upenn.edu/~lee/10cis441/

CIS 7000

Health, Healthcare and Technology

https://www.med.upenn.edu/kbjohnsonlab/hhct/

AI, ML, NLP, CV

NETS 2130

Crowdsourcing and Human Computation

https://crowdsourcing.wiki/

CIS 3333

Mathematics of Machine Learning

https://www.cis.upenn.edu/~exwong/moml/

CIS 4190/5190

Applied Machine Learning

https://www.seas.upenn.edu/~cis5190/spring2025/

CIS 4300/5300

Natural Language Processing

https://www.cis.upenn.edu/~myatskar/teaching/cis5300_fa24/

CIS 4810/5810

Computer Vision & Computational Photography

No link found :(

CIS 5200

Machine Learning

https://machine-learning-upenn.github.io/

CIS 6300

Advanced Topics in Natural Language Processing

https://www.cis.upenn.edu/~myatskar/teaching/cis6300_sp25/index.html

CIS 7000

Special Topics: Machine Learning (Eric Wong)

https://www.cis.upenn.edu/~exwong/teaching/

CIS 7000

Special Topics: Vision (Dinesh Jayaraman)

https://www.seas.upenn.edu/~dineshj/teaching/

CIS 7000

Special Topics: Large Language Models (Mayur Naik)

https://llm-class.github.io/syllabus.html

Databases, ML Systems, Data Science

CIS 4500/5500

Database and Information Systems

https://www.seas.upenn.edu/~cis5500/

CIS 6500

Advanced Topics in Database Systems

https://rmarcus.info/syllabi/Penn_CIS6500_F23.pdf

Architecture

CIS 2400

Introduction to Computer Systems

https://www.seas.upenn.edu/~cis2400/current/

CIS 4710/5710

Computer Organization and Design

https://www.cis.upenn.edu/~cis5710/current/

CIS 5650

GPU Programming and Architecture

https://theboilingpoint.github.io/

CIS 6010

Special Topics in Computer Architecture

https://www.cis.upenn.edu/~devietti/classes/cis6010-fall2024/index.html

CIS 7000

Special Topics on Quantum Computer Systems (Gushu Li)

https://drive.google.com/file/d/1X7GXTAZfmzrAINGVZJKOyLokBp16a3qx/view

Theory

CIS 2620

Automata, Computability, and Complexity

https://www.cis.upenn.edu/~cis2620/

CIS 3200

Introduction to Algorithms

https://www.seas.upenn.edu/~cis3200/

CIS 5020

Analysis of Algorithms

No link found :(

CIS 5110

Theory of Computation

https://www.cis.upenn.edu/~cis5110/

CIS 5150

Fundamentals of Linear Algebra and Optimization

https://www.cis.upenn.edu/~cis5150/

CIS 6100

Advanced Geometric Methods in Computer Science

https://www.cis.upenn.edu/~cis6100/

CIS 6250

Theory of Machine Learning

https://www.cis.upenn.edu/~mkearns/teaching/CIS625/

NETS 4120

Algorithmic Game Theory

https://www.cis.upenn.edu/~aaroth/courses/agtS25.html

Human Computer Interaction, Human Factors

CIS 4120/5120

Introduction to Human-Computer Interaction

https://cis4120.seas.upenn.edu/

CIS 7000

Algorithmic Justice (Danae Metaxa)

https://metaxa.net

CIS 7000

Special Topics in HCI (Andrew Head)

https://andrewhead.info/#teaching

Network Science

NETS 1500

Market and Social Systems on the Internet

No link found :(

Graphics, Games

CIS 4600/5600

Interactive Computer Graphics

https://www.cis.upenn.edu/~cis4600/current/

CIS 4610/5610

Advanced Rendering

No link found :(

CIS 5640

Introduction to Game Design

https://cis-5640-spring-2025.github.io/

CIS 5660

Procedural Graphics

https://cis566-procedural-graphics.github.io/

CIS 6600

Advanced Topics in Computer Graphics and Animation

https://www.seas.upenn.edu/~shlane/CIS660_Syllabus.html

CIS 7000

Special Topics: Neural Rednering (Lingjie Liu)

No link found :(

Electrical and Systems Engineering

Yeah these ones aren’t taught by CIS faculty, but these are taken sometimes by CIS and CMPE students that I felt ok including them.

ESE 1100

Atoms, Bits, Circuits and Systems

https://ese1110.seas.upenn.edu/

ESE 3500

Embedded Systems

https://ese3500.seas.upenn.edu/

ESE 3700

Circuit-Level Modeling, Design, and Optimization for Digital Systems

https://www.seas.upenn.edu/~ese3700/

ESE 5180

IoT Wirless, Security, and Scaling

https://ese5180.seas.upenn.edu/

ESE 5190

Smart Devices

https://ese5190.seas.upenn.edu/

ESE 5320

System-on-a-Chip Architecture

https://www.seas.upenn.edu/~ese5320/

ESE 6150

RoboRacer Autonomous Racing Cars

https://ahmadamine998.github.io/6150-Spring2024-Website/lectures/

MCIT

CIT 5900

Programming Languages and Techniques

No link found :(

CIS 5910

Introduction to Software Development

https://upenn.github.io/cit5910-24fa-site/

CIT 5930

Introduction to Computer Systems

No link found :(

CIT 5940

Data Structures and Software Design

https://www.seas.upenn.edu/~cit5940/current/

CIT 5950

Computer Systems Programming

https://www.seas.upenn.edu/~cit5950/current/

CIT 5960

Algorithms and Computation

No link found :(