Human-Centered Programming

Fall 2026 @NCU

Information

Serial Number
52054
Course Number
CE6169
Class Schedule
Monday 56, E6-A211
Instructor
Prof. YungYu Zhuang
TA
Yun-Zhi Hung (email: hy48257 at gmail.com)
Office Hours
by appointment
Course Objective
To foster students’ programming skills in the AI era, teaching students to consider practical, real-world problems through human-centered thinking, and how to generate needed programs with AI.
Course Description
This course guides students to think about AI-assisted programming through a human-centered lens, learning to write programs effectively in collaboration with AI. We start with the principles of programming languages and computer software, and help recognize that the goal of programming is to solve our problems at hand. Therefore, when using AI to generate programs, we need to clarify the program requirements ourselves and assess whether the generated programs meet our needs to achieve the problem-solving goal.
Score
Attendance 20%, Exercise 40%, Team Project 40%

Tentative Schedule

9/7
Syllabus
9/14
Programming with AI: Requirements and Architecture
9/21
Decomposition: Class, Interface, and Protocol
9/28
no lecture (Teachers' Day)
10/5
Exercise 1
10/12
Loose Coupling: Event, Delegation, and Observer
10/19
Focus on Operations: Visitor and Iterator
10/26
no lecture (Leave Adjustment for Taiwan Restoration Day)
11/2
no lecture (midterm exam week)
11/9
Exercise 2
11/16
Operations as Data: Function and Side Effect
11/23
Error Handling: Command, Exception, and Container
11/30
Exercise 3
12/7
Reuse, Reuse, and Reuse: Template and Generic
12/14
Exercise 4
12/21
no lecture (final exam week)
NCU eeclass course