Intro
Self-study phase
During the summer break before school started, I dabbled in some self-study—following Ken-Yi Lee's tutorials and setting up the Code::Blocks IDE—but never went through any proper textbooks systematically.
Course Information
- Course Title: Programming I & Programming I Lab
- Lecturer: Haiyan Tao
- Department: School of Computer Science
Recommended online class resources
Ken-Yi Lee: My C programming mentor—who also introduced me to coding—had the no-nonsense teaching style typical of Taiwanese instructors. The course followed a standard textbook approach: basic syntax → pointers. The explanations were generally clear enough to grasp in one pass (the language wasn’t so obscure as to require constant DeepSeek-level lookups). The syntax portion was particularly well-explained (even watchable at 2x speed without issues), but the pointers section felt a bit rushed, and data structures were entirely omitted (likely due to time constraints in recording the online course—a slight disappointment).
Recommended Textbook
C Primer Plus: The designated textbook for school. This book is very good as an entry-level textbook. It also has a relatively high score on Zhihu. The exercise solutions are optional to buy. However, it is recommended not to buy them (as they are easy to gather dust).