CS 1JC3: Introduction to Computational Thinking - Fall 2014



Tutorials start September 10th!!!!!!!!!!! We will start with some exercises in codeworld which you can try at home. If you have a laptop you plan to use for homework, we will have drop-in sessions in the drop-in centre where you can get help installing the (free) software you will need. If you want to get started, try installing the Haskell Platform, following the instructions for your operating system.

Calendar Description

Inquiry into ideas and methods of computer science (CS), the science underlying our computational universe. Topics include what computers can and cannot do, the Internet and search engines, artificial i\ ntelligence, computer-controlled devices, and sustainability in computing.

Computers + Thinking = ?

  • ...revolutionary impact on scientific research and discovery...
  • Learning to ride a bicycle for your mind.
  • Anti-Objective

    This is not a course about learning to use specific software or programming languages. You will have to learn some aspects of the language Haskell, but the topics have been chosen for their relevance to understanding universal principles in CS.

    Course Objective

    This is a course for people who want to know where Computer Science came from, how people do it, and how it is changing the world, No previous experience is required, but challenge problems are available if you do have experience.


    Haskell: the Craft of Functional Programming, Simon Thompson. (Third edition recommended, but any edition will be ok.)


    Christopher Anand. anandc (circled a) (name of university) (country), ETB 112. I will be available for at least half an hour after class in the Atrium (on the north/Tim Horton side of the building), and by appointment.

    Lectures: Mon 9:30, Tues 10:30, Thurs 9:30 in MDCL/1309

    Tutorials: BSB/244 or BSB/249, check your schedule, but it will be Wednesday morning.

    Drop-In Centre: ETB first-floor, open as much as possible, hours to be announced on Avenue.

    grad TA, Margaree Peacocke, peacocmh (circled a) (name of university) (country))
    Erica Cheyne (see Avenue for contact info, including ETB drop-in centre schedule)
    Wesley Kerfoot (see Avenue for contact info, including ETB drop-in centre schedule)
    Yuriy Toporovskyy (see Avenue for contact info, including ETB drop-in centre schedule)
    (see Avenue for contact info, including ETB drop-in centre schedule)
    (see Avenue for contact info, including ETB drop-in centre schedule)
    (see Avenue for contact info, including ETB drop-in centre schedule)

    Schedule and Evaluation

  • 24 - 4 midterms during class time (TBD)
  • 21 - 7 surprise lab short assignments (*)
  • 16 - 2 drop-in centre assignments (*)
  • 6 - group presentations in tutorial (based on one of the books, sign up for your book in the first tutorial)
  • 5 - pair picture competition
  • 30 - final exam
  • ? - bonus problems, as requried to keep trouble makers quiet
  • Contact Margaree or Dr Anand if you get sick or have another conflict with any exam or assignment.

    (*) It is easy for first-year students to get behind without realizing it. For this reason, all assignments will be marked on the spot and you will be asked to explain aspects of your answers to make sure you understand them. Full marks for on-time, correct answers, part-marks for late answers. We will also try to get the midterms back to you quickly.


    We are trying to teach you the basic process of problem solving with computers, and the ways we analyse both problems and solutions. The basic idea is simple: how much information is there, and how many steps are there to go through. The Divide and Conquer approach is a recipe to follow which almost gives you the solution. We will work hard on really understanding this in the first half of the course. In the second half, we will get a close-up view of how computers solve problems translating your big problem-solving strategy down into a small set of simple operations which are repeated as often as we required (potentially trillions of times to make a picture) and which, fortunately, happen real fast.

    Whatever your program of study, I hope you will see connections with problems you will face. But you are welcome to talk to me or Kevin during office hours about your reason for wanting to know about computer science, and we may be able to turn it into a new example we use in class. Last year, several students told me that they really appreciated this aspect of the course. To be fair, I also had some upper-year students from other departments say 1MA3, which 1JC3 is replacing, was a lot of work for them, because it was so different. But evidently it was worth the effort, because, in the end, they did very well on the final exam.

  • Problem Solving Strategies
  • Divide and Conquer
  • Tower of Hanoi - defining a language to capture
  • Searching in a list
  • Sorting a list
  • Calculating Derivatives
  • Greedy
  • Finding Shortest Paths
  • Artificial Intelligence
  • the good (support vector machines, optimization)
  • the bad (expert systems)
  • the ugly (neural networks)
  • Modelling the Natural World
  • weather
  • predators and prey
  • epidemics
  • Creating a Better World
  • digital image and sound
  • ray tracing
  • Gloss
  • Gamification
  • Big Data
  • Us and Them
  • How a computer works (architecture of a Central Processing Unit)
  • How a brain works
  • Translating an idea into a computer program
  • what is the problem?
  • design a solution
  • program it
  • compile it
  • Books!
  • CS is so deeply connected to the past and is shaping so much of the future, we will divide and hopefully conquer this material with group book reviews and class discussion.
  • Books

  • 0) The textbook indigo
    Haskell: The Craft Of Functional Programming
    by Simon Thompson
    Pearson Education | June 15, 2011 | Trade Paperback
    Format:Trade Paperback
    Dimensions:608 Pages, 6.69 × 9.06 × 1.18 in
    Published:June 15, 2011
    Publisher:Pearson Education
    The following ISBNs are associated with this title:
    ISBN - 10: 0201882957
    ISBN - 13: 9780201882957
  • 1) indigo
    The Zero Marginal Cost Society: The Internet of Things, the Collaborative Commons, and the Eclipse of Capitalism
    by Jeremy Rifkin
    Palgrave Macmillan | April 1, 2014 | Hardcover
    Dimensions:368 Pages, 6.3 × 9.06 × 1.18 in
    Published:April 1, 2014
    Publisher:Palgrave Macmillan
    The following ISBNs are associated with this title:
    ISBN - 10: 1137278463
    ISBN - 13: 9781137278463
    2) indigo
    by Andrew Blum
    HarperCollins Publishers Ltd | May 7, 2012 | Hardcover
    Dimensions:304 Pages, 6.3 × 9.45 × 0.79 in
    Published:May 7, 2012
    Publisher:HarperCollins Publishers Ltd
    The following ISBNs are associated with this title:
    ISBN - 10: 1554689791
    ISBN - 13: 9781554689798
    3) indigo
    The Naked Future: What Happens In A World That Anticipates Your Every Move?
    by Patrick Tucker
    Viking USA | March 11, 2014 | Hardcover
    Dimensions:288 Pages, 6.3 × 9.06 × 0.79 in
    Published:March 11, 2014
    Publisher:Viking USA
    The following ISBNs are associated with this title:
    ISBN - 10: 1591845866
    ISBN - 13: 9781591845867
    4) indigo
    Smart Cities
    by Anthony M Townsend
    WW Norton | October 7, 2014 | Trade Paperback
    Format:Trade Paperback
    Dimensions:400 Pages, 5.12 × 7.87 × 0.39 in
    Published:October 7, 2014
    Publisher:WW Norton
    The following ISBNs are associated with this title:
    ISBN - 10: 0393349780
    ISBN - 13: 9780393349788
    5) indigo
    Hacking The Future
    by Cole Stryker
    OVERLOOK PRESS | September 25, 2012 | Hardcover
    Dimensions:304 Pages, 5.12 × 7.87 × 0.79 in
    Published:September 25, 2012
    Publisher:OVERLOOK PRESS
    The following ISBNs are associated with this title:
    ISBN - 10: 1590209745
    ISBN - 13: 9781590209745
    6) indigo
    Enlightening Symbols: A Short History of Mathematical Notation and Its Hidden Powers
    by Joseph Mazur
    Princeton University Press | March 23, 2014 | Hardcover
    Dimensions:312 Pages, 5.91 × 8.66 × 0.79 in
    Published:March 23, 2014
    Publisher:Princeton University Press
    The following ISBNs are associated with this title:
    ISBN - 10: 0691154635
    ISBN - 13: 9780691154633
    7) indigo
    Game Frame: Using Games as a Strategy for Success
    by Aaron Dignan
    Free Press | March 8, 2011 | Kobo Edition (eBook)
    Format:Kobo Edition (eBook)
    Published:March 8, 2011
    Publisher:Free Press
    The following ISBNs are associated with this title:
    ISBN - 10: 1451611072
    ISBN - 13: 9781451611076
    8) indigo
    Big Data: A Revolution That Will Transform How We Live, Work, and Think
    by Kenneth Cukier, Viktor Mayer-Schoenberger
    Houghton Mifflin Harcourt | March 5, 2013 | Hardcover
    Dimensions:256 Pages, 5.91 × 8.66 × 0.79 in
    Published:March 5, 2013
    Publisher:Houghton Mifflin Harcourt
    The following ISBNs are associated with this title:
    ISBN - 10: 0544002695
    ISBN - 13: 9780544002692
    9) indigo
    Automate This: How Algorithms Took Over Our Markets, Our Jobs, And The World
    by Christopher Steiner
    Portfolio Trade | August 27, 2013 | Trade Paperback
    Format:Trade Paperback
    Dimensions:256 Pages, 5.51 × 8.27 × 0.39 in
    Published:August 27, 2013
    Publisher:Portfolio Trade
    The following ISBNs are associated with this title:
    ISBN - 10: 1591846528
    ISBN - 13: 9781591846529
    10) indigo
    The Overflowing Brain: Information Overload and the Limits of Working Memory
    by Torkel Klingberg
    Oxford University Press | June 20, 2014 | Kobo Edition (eBook)
    Format:Kobo Edition (eBook)
    Published:June 20, 2014
    Publisher:Oxford University Press
    The following ISBNs are associated with this title:
    ISBN - 10: 0199888256
    ISBN - 13: 9780199888252
    11) indigo
    Hare Brain, Tortoise Mind: How Intelligence Increases When You Think Less
    by Guy Claxton
    Ecco | January 1, 2000 | Trade Paperback
    Format:Trade Paperback
    Dimensions:272 Pages, 5.12 × 7.87 × 0.39 in
    Published:January 1, 2000
    The following ISBNs are associated with this title:
    ISBN - 10: 0060955414
    ISBN - 13: 9780060955410
    12) indigo
    How To Create A Mind: The Secret Of Human Thought Revealed
    by Ray Kurzweil
    Penguin Books | August 27, 2013 | Trade Paperback
    Dimensions: 352 Pages, 5.51 × 8.27 × 0.79 in
    Published: August 27, 2013
    Publisher: Penguin Books
    Language: English
    The following ISBNs are associated with this title:
    ISBN - 10: 0143124048
    ISBN - 13: 9780143124047

    Haskell Resources

    The focus of this course is on problem solving, not programming, but our experience is that it is very hard to know if you are doing things right unless you either have a personal tutor sitting beside you at all times, or actually write functions which you can test. If you have a personal tutor, or, even better, a genie in a bottle, then you are all set. Otherwise, we recommend trying Haskell on-line or setting it up on your computer so that you can test what you know:
  • Web-based interactive tutorial.
  • Haskell Platform, the best way to download a compiler.
  • Tutorials, News, etc.
  • Library Reference
  • Gloss picturing tools.

    You are expected to exhibit honesty and use ethical behaviour in all aspects of the learning process. Academic credentials you earn are rooted in principles of honesty and academic integrity. Academic dishonesty is to knowingly act or fail to act in a way that results or could result in unearned academic credit or advantage. This behaviour can result in serious consequences, e.g. the grade of zero on an assignment, loss of credit with a notation on the transcript (notation reads: "Grade of F assigned for academic dishonesty"), and/or suspension or expulsion from the university.
    It is your responsibility to understand what constitutes academic dishonesty. For information on the various types of academic dishonesty please refer to the Academic Integrity Policy, located at http://www.mcmaster.ca/academicintegrity.
    The following illustrates only three forms of academic dishonesty: 1. Plagiarism, e.g. the submission of work that is not one's own or for which other credit has been obtained. 2. Improper collaboration in group work. 3. Copying or using unauthorized aids in tests and examinations.

    If in doubt, ask the instructor how this applies to your work.


    In this course we reserve the right to use a web-based service (Turnitin.com) to reveal plagiarism. Students will be expected to submit their work electronically to Turnitin.com and in hard copy so that it can be checked for academic dishonesty. Students who do not wish to submit their work to Turnitin.com must still submit a copy to the instructor. No penalty will be assigned to a student who does not submit work to Turnitin.com. All submitted work is subject to normal verification that standards of academic integrity have been upheld (e.g., on-line search, etc.). To see the Turnitin.com Policy, please go to www.mcmaster.ca/academicintegrity

    Personal Information

    In this course we will be using subversion, email and other on-line discussion fora. Students should be aware that, when they access the electronic components of this course, private information such as first and last names, user names for the McMaster e-mail accounts, and program affiliation may become apparent to all other students in the same course. The available information is dependent on the technology used. Continuation in this course will be deemed consent to this disclosure. If you have any questions or concerns about such disclosure please discuss this with the course instructor.

    Possible Changes

    The instructor and university reserve the right to modify elements of the course during the term. The university may change the dates and deadlines for any or all courses in extreme circumstances. If either type of modification becomes necessary, reasonable notice and communication with the students will be given with explanation and the opportunity to comment on changes. It is the responsibility of the student to check their McMaster email and course websites weekly during the term and to note any changes.xsxs