Course Description

This course will examine the basic ideas of computational thinking. In particular it will focus on principled thought processes, approaches and principles that guide computational analyses, from problem formulation all the way to effective and efficient problem solving. It will contain an introduction to algorithm building and their complexity, basic data structures used in computational solutions as well as the use of necessary tools to tackle large-scale problems in a variety of domains. The course will also discuss the application of computational thinking in different areas such as the humanities, social sciences and the arts, potentially looking into the impact it may have on them. Finally, it will serve as a necessary preamble for students who will follow a more technical career, especially in the area of Information Systems and Applied Data Science.

Program Learning Outcomes

Program-level outcomes for the Master of Information (MI) program at the University of Toronto include the following:

  1. Students understand and are conversant with fundamental concepts, theories, practices, and the diverse horizons of information disciplines, and can respond to changing information practices and needs of society. (INFO)
  2. Students develop knowledge and values appropriate to their future exercise of economic, cultural, and/or social leadership, and thereby provide leadership in defining the social responsibility of information professionals to provide information services for all, regardless of age, educational level, or social, cultural, or ethnic background. (VALUES)
  3. Students develop the ability to contribute through research and publication, to the continuous expansion and critical assessment of the body of knowledge underlying the information and archives sciences. (CONTRIBUTE)
  4. Students develop an understanding of the development of theory concerning information, where it is found, and how it is used. (THEORY)
  5. Students develop an understanding of the application of new technological developments to the preservation and communication of information, and in the identification of the impact of such developments on society. (SOCIETY)
  6. Students continue in life-long intellectual growth beyond graduation. (LIFE)
Course Objectives

The purpose of this course is to convey, in a manner that is accessible to students coming from a wide variety of intellectual backgrounds and useful to students destined for a wide variety of further avenues of study, a set of intellectual reflexes and styles of thought and a repertoire of practical skills drawn from, and deployed in, computational science. The course is NOT intended as "computer science 101" or "a first course in programming" or "introduction to data processing."

Course Learning Outcomes

This course introduces students to a style of thinking that yields problem solutions that can be programmed, are predictably reliable, involve careful and exhaustive consideration of problem and solution spaces, and can be implemented at high speed and high volume. Although this usually means solutions that are carried out by machines, the application of this style of thinking is more generally applicable.

The goal, then, will be to inculcate an "algorithmic" style of thinking: the deliberate decomposition of large and complex problems into a set of nested subproblems, the construction of solutions in terms of sequence, repetition, and contingency, the recognition and exploitation of pattern, and the inclination to defer detail, automate, and modularize.

Upon successful completion of this course you will have enhanced your capacity to

  1. have enhanced general purpose critical thinking skills (THINK)
  2. think slowly about things that move fast and/or have many parts (SLOW)
  3. break large and complex problems into cognitively/computationally/organizationally manageable subproblems (DECOMPOSITION)
  4. recognize, describe, and exploit patterns (PATTERN)
  5. defer detail and move between levels of abstraction (ABSTRACTION)
  6. build complex, robust, and legible systems from cognitively manageable and reusable parts (MODULARITY)
  7. think about data and information structurally (DATA)
  8. understand the complexity of computational solutions (COMPLEXITY)
  9. formulate problems and solutions using computational thinking in different fields of endeavor (APPLY)
  10. deploy a set of mental categories, intellectual reflexes, conceptual tools, and practical skills necessary for a participatory role contemporary information technologies (TECH)

The relationship of these course outcomes to the program outcomes is summarized in the table below.




Instructional Agenda

Each week, students will engage with text and other media introducing a topic and work one or more preparatory problems based on this material PRIOR to each class session. Approximately one third of each class session will be devoted to lecture/review of this material in a "flipped class" format (that is, students are assumed to have already heard "lecture" and attempted problems). The middle third will be an interactive workshop or simulation, and the final hour will be review and motivation of the next week's topic.

About one half of each week's 6-8 hours of "homework" will be an opportunity to demonstrate competence on the topic of the previous week and about half will be preparation for the topic of the coming week. The former will be submitted as graded assignments.

Assignments, Activities and Course Learning Outcomes

Each course assignment and activity will be an opportunity to practice or demonstrate mastery of one or more of the learning outcomes described above. The tables below summarize the relationship between assignments, activities, and learning outcomes.

Outcome 01 02 03 04 05 06 07 08 09 10
THINK A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
SLOW A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
DECOMPOSITION A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
PATTERN A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
ABSTRACTION A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
MODULARITY A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
DATA A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
COMPLEXITY A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
APPLY A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
TECH A01 A02 A03 A04 A05 A06 A07 A08 A09 A10

Outcome Where does it show up in assignments?

Critical thinking, understood as a careful, systematic, robust, analytical mental reflex is practiced throughout the course. Examples include …


Please consult the iSchool’s Grade Interpretation Guidelines, the University Assessment and Grading Practices Policy and Guidelines on the Use of INC, SDF, & WDR. . Note that several graded assignments will be handed back before the final date to drop without penalty.

These documents will form the basis for grading in the course.

The grading breakdown for assignments and exams for this course will be:


Writing Support

As stated in the iSchool’s Grade Interpretation Guidelines, “work that is not well written and grammatically correct will not generally be considered eligible for a grade in the A range, regardless of its quality in other respects.” With this in mind, please make use of the writing support provided to graduate students by the SGS Graduate Centre for Academic Communication. The services are designed to target the needs of both native and non-native speakers and all programs are free. Please consult for more information. the current workshop schedule.

Academic integrity

Please consult the University’s site on Academic Integrity. The iSchool has a zero-tolerance policy on plagiarism as defined in section B.I.1.(d) of the University’s Code of Behaviour on Academic Matters. You should acquaint yourself with the Code.

Also review the material in Cite it Right and if you require further clarification, consult the site How Not to Plagiarize.

Cite it Right covers relevant parts of the U of T Code of Behaviour on Academic Matters (1995). It is expected that all iSchool students take the Cite it Right workshop and the online quiz. Completion of the online Cite it Right quiz should be made prior to the second week of classes. To review and complete the workshop, visit the orientation portion of the iSkills site.


Students with diverse learning styles and needs are welcome in this course. If you have a disability or a health consideration that may require accommodations, please feel free to approach Student Services and/or the Accessibility Services Office as soon as possible. The Accessibility Services staff are available by appointment to assess needs, provide referrals and arrange appropriate accommodations. The sooner you let us know your needs, the quicker we can assist you in achieving your learning goals in this course.

Academic Dates

Consult the iSchool's online calendar for various course-relevant dates (e.g., October 29 Final date to drop fall session full-year (Y) or fall session (F) courses without academic penalty).

Statement of Acknowledgement of Traditional Land

I (we) would like to acknowledge this land on which the University of Toronto operates. For thousands of years it has been the traditional land of the Huron-Wendat, the Seneca, and most recently, the Mississaugas of the Credit River. Today this meeting place is still the home to many Indigenous people from across Turtle Island and we are grateful to have the opportunity to work on this land.1

iSchool Workshops:

The iSchool workshops are a series short skill sessions that are available exclusively to the iSchool community. iSchool professors, Inforum librarians, current students, alumni, and a collective of professionals and academics from each program and concentration, work together to create these unique rosters. Together with the MMSt and MI curricula, these academic, professional, and technical iSkills workshops provide a robust information and heritage graduate educational experience.

Workshop topics of particular relevance to this course will be noted by the instructor.

In an effort to ensure your success at the iSchool, key information and skills that all iSchool students must possess, regardless of program or concentration, are covered in these online orientation workshops. You should avail yourself of these sooner rather than later.