Welcome to the public page of NUS’s CS1010 Programming Methodology (Academic Year 2026-2027 Semester 1)!
We will use this site for much of the course (e.g., lab/tutorial/programming exercise (volume) writeups/companion notes for lectures/general course information). For anything more private or assessment related, we will use the CS1010 course page in Canvas (e.g., quizzes, grades, announcements).
You can check the section below to find what you’re looking for within this site.
What are you looking for?
Schedule and Your TODOs
What do I need to do now?
Check your current tasks and deadlines, or look ahead through the semester schedule.
View schedule and TODOs
Help
I have a question to ask
Find the right channel: Canvas Discussions, your TA, or the course coordinators.
Get help
Setup
I need to set up my programming environment and/or submit work
Use the CS1010 programming environment, the `cs1010` command, GitHub setup, tests, and submission workflow.
Open setup guide
Policies
What are the rules?
Read expectations, AI usage, collaboration, late work, and absence policies.
Read policies
Assessment
How am I assessed?
Check CA components, practical exams, midterm, final, and grading policy.
Review grading
Study
I want to study concepts
Read the course notes and review the topics covered in CS1010.
Open notes
UNIX
I want to learn UNIX / terminal skills (Tutorials)
Work through UNIX, Vim, debugging, shell, Git, and process tutorials.
Browse tutorials
Write Code
I want programming exercises (Labs/Volumes)
Browse exercise pages and published volumes.
Go to exercises