CUHK
The author's undergraduate major is Computer Science. These notes and reflections are for reference only, with no guarantee of accuracy or high value.
Year 1, Term 1
ESTR1002 is the most difficult course in Year 1. It is challenging for students without a programming background, so if you do not want to fall behind, focus on this course and complete every lab carefully.
For Gaokao-track students, MATH1510 & PHYS1110 mainly cover transitional high-school-level math and physics; reviewing slides and past papers two days before exams is usually enough, so do not overinvest time in lectures.
Year 1, Winter
During the Year 1 winter break, I joined the MCM with God Zhuo and Ms.Hu. Although our math background was weak and we only received a Successful Participant award, the first team-collaboration experience was very valuable.
The biggest gain was getting started with LaTeX, which made later structured writing much easier. Recommended tools/skills/knowledge to learn before the end of Year 1:
① Command-line tools + remote connection;
② Linux + Ubuntu;
③ Coding agents (Codex, Claude Code, Cursor, ...);
④ Git collaboration;
⑤ Markdown + LaTeX + Overleaf;
⑥ Linear algebra / probability theory / statistics.
Year 1, Term 2
Recommended popular math/science education channel: 3Blue1Brown (3b1b)
Bilibili Link |
YouTube Link
Year 1, Summer
Peking University was a lot of fun.
Year 2, Term 1
Students interested in research should proactively reach out to labs from Year 2; do not be idle like I was and just attend classes passively on campus...
Year 2, Term 2
Year 2, Summer
Korea and California were both a lot of fun.
Year 3, Term 1
Year 3, Term 2
CSCI3250 and CSCI3251 can usually be taken together. Both are easy courses; the difference is that 3251 has less work, while 3250 has more.
Principles of Programming Languages is a bit hard to evaluate. It was the first time I wondered whether I had chosen the wrong major...
Foreign Languages
Others