This site is from a past semester! The current version will be here when the new semester starts.

Course OverviewCourse Expectations


Using this Website

The Schedule page is your main source of information for CS2103/T. You will need to refer to it weekly. For an overview of the full schedule, refer to the Full Timeline page.

More details for the upcoming weeks will be added as the weeks progress. In general, information given for more than 1 week into the future should be treated as tentative.

Browser compatibility

Most of this will work on most mainstream Browsers, but embedded slides are best viewed using Chrome.

Information layers

This book tries to layer information so that readers can decide to omit less important layers if they wish to.

More important information are in bold or highlighted while less important information are dimmed or in collapsed panels such as the below.

Some less important info in a boarder-less panel


Some less important info in a panel


You can use the button in a panel to open it as a new tab (it can be expanded in-place too). This feature is available only for panels containing another full page of the website (i.e., not available if the panel contains an extract of a page). e.g.,

A panel that can be opened as another tab


Tabs indicate alternative content (e.g. video vs text). You can choose the one you like and ignore the other tabs.

Some textual description of X


Video describing X


Dotted underlines indicate (activated by hovering over it) and dashed underlines indicate modal windows (activated by clicking) containing additional information.

This website uses a topic levels system to indicate the progression of contents from basic/relevant topics to advanced/less-relevant topics. Open the panel below to see more details of that system.

Conventions used

Shorthand headings

Meaning of some shortened headings:

  • What : the meaning of the concept in concern (example)
  • Why : the motivation behind the concept in concern (example)
  • How : the usage of the concept in concern (example)
  • When : the pros and cons of the concept in concern, when to use the concept (example)

Meaning of icons

: additional info
: warning
: positive message
or : important message
: error or danger to avoid
or : tip
: definition or topic
extra : tangential info, can be ignored if not interested
: learning outcomes
: examples
: resources
: exercises
: printable version
: preview/more info
: video
>_ : a command to be run in a terminal
: textual description
: slides
: output produced by running code
question without answer
question with answer

: tasks to do
: lecture/briefing
: tutorial
: deadline

Searching for keywords

Use the search box in the top navigation bar to search for keywords in the website pages. If you cannot find the content related to a keyword, let us know by posting in the forum so that we can add the missing keyword to our search index.

Saving as PDF files

Follow this guide @SE-EDU/guides.

Printing Textbook Content

A PDF version of the full textbook () will be provided at the start of the semester.

In addition, printer-friendly version (indicated by icon) have been provided for each chapter and the whole book. You can use them for saving as pdf files or printing.

Making this Website Better

This website was generated using the MarkBind software developed at NUS. We welcome bug reports, suggestions, and contributions, to be submitted at the website issue tracker.


Course OverviewCourse Expectations