Software Engineering for Self-Directed Learners »

Using this book

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.

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


The book currently does not have a search feature. The workaround is to load the printable version of the book (which loads the entire book into one page, minus the exercises) and use the Browser's search function.

Saving as PDF files

Follow this guide @SE-EDU/guides.


The icon indicates printer-friendly versions of each chapter. A printer-friendly version of the entire book can be found here.