2.2. Lecture 1: Introduction

Before this class you should:

  • Have a good winter holiday

Before next class you should:

  • Read Think Complexity:

    • Preface; and

    • Chapter 1: Complexity Science

  • Sign up (via Google Sheets - see link on CourseLink) to be the primary contributor to one lecture in the course notes or an in-class debater. If you are interested in a programming enrichment project in lieu of course notes, talk to me.

Note taker: Graham Taylor

Today’s class was an introduction to the course with three basic aims:

  • Get you interested in the topic, and introduce the key components of the course: Systems Thinking and Computational Modelling

  • Discuss the logistics: how lectures will work, assessments, collaboration policies, use of Generative AI, etc.

2.2.1. Overview

Note that the slide deck for this section has been posted to CourseLink as 01a - TopicOverview.pdf.

We discussed:

  • Systems Thinking
    • The idea of looking at the world through systems: phenomena that are composed of multiple different elements that work to fulfill some individual oblectives. How can we quantitatively describe objectives?

  • Computational Modelling
    • The idea of making a semi-realistic model of natural phenomena that can be simulated with a computer.

  • Computational Tools (most notably the Scientific Python Stack)

  • The three textbooks: Think Complexity, Think Python, and The Alignment Problem

The course is built on two intertwining threads, which may seem unrelated at first, but whose complimentary nature should become more clear as the course develops.

2.2.2. About the course

Note that the slide deck for this section has been posted to CourseLink as 01b - AboutTheCourse.pdf.

All the information discussed in this part can be found in the Course Outline which is available on CourseLink.

2.2.3. Frequently Asked Questions

Note: This section is to be updated following the lecture

  • When are course notes due from the primary notetaker?

    I would like to receive a pull request from you one week following the lecture that you are recording. The TA and/or I will provide some feedback and we want you to submit corrections within one week from receiving that feedback. This means that the target time to have stable notes posted is no longer than two weeks following the lecture.

  • Are algorithms and equations part of the definition of a System?

    Sometimes systems can be expressed by an equation, but in this course we will focus on complex systems, the type that can’t be expressed by an equation or collection of equations. In many cases we will rely on computational simulation to deal with this complexity. Interestingly, it’s this point (and the nonlinearity of the systems we’ll discuss) that distinguish this course from ENGG*2400: Engineering Systems Analysis.

  • What is a markup language?

    • From Quora:

      Markup languages are designed for the processing, definition and presentation of text. The language specifies code for formatting, both the layout and style, within a text file. The code used to specify the formatting are called tags. HTML is a an example of a widely known and used markup language.

    • Markdown is an example of a lightweight markup language. The advantage of such languages are that they are quick to create/edit and human-readable in plain text.

    • I am a huge fan of Pandoc which is a universal document converter that can convert markup languages like HTML and markdown to other formats (like PDF via LaTeX or even Microsoft Word)