CS 1060: Explorations in Computer Science

An Introduction to Computational Thinking at Utah

Spring 2016

Important Links to Course Information

Syllabus Highlights


Dr. Bei Wang
Email: beiwang AT sci.utah.edu
Office: WEB 4819
Homepage: http://www.sci.utah.edu/~beiwang/

Catalog #, Section #, Course #
CS 1060, 001, 8237

Course Description

Google, Facebook and Twitter are merely less than a decade old; and yet we can not imagine our life without them nowadays. Instagram rises from a company that is worth $0 to $1 Billion in two years. Netflix puts Blockbuster out of business despite the fact that Wall Street Journal initially called its stock as "a worthless piece of crap". World of Warcraft just celebrated its 10 year anniversary last November. Japan is releasing the first movie starring actress by a humanoid robot. These are all exemplars of emerging technologies computer scientists come up with via forward-thinking research and development that transform how we live, work and think.

Computational thinking, as coined by Jeanette Wing (now the corporate vice president at Microsoft research), "represents a universally applicable attitude and skill set everyone, not just computer scientists, would be eager to learn and use". It is much more than being able to write a piece of computer code. It is about problem solving empowered by computers. Computational thinking is about "the way that humans, not computers, think".

We will study the foundations of computational thinking, by conceptualizing, designing and building solutions to exciting real-world applications. The goal is to make you a computational thinker and a problem solver.

Who Should Take This Course? (Prerequisite)

There are no prerequisites for this course.

This course is an introduction to computational thinking at the University of Utah. It is an introductory course designed for any student interested in enhancing their problem solving skills using computation. It is also appropriate for students seeking an understanding of computational principles that will complement their major field of study. The course assumes no background in computing beyond the ability to use a computer to send email, browse the web, and write papers. No prior experience in programming is required. There is some math, but if you can multiply and understand place value in numbers, you should be fine. However, this is not a computer literacy course.

This course satisfies the Applied Science (AS) Intellectual Explorations requirement.

Course Topics (subject to change)

  1. Computational thinking: a friendly introduction
  2. Exploring mummies at the British museum
  3. Who is Eugene Goostman?
  4. Roomba and Japan's first upcoming humanoid actress
  5. What makes online purchases (not) safe? Emissary panda and identity theft
  6. Computing basics: a high level view
  7. Generating art though computing
  8. TSA is watching you!
  9. How does the world wide web work?
  10. The rise of Google
  11. What powers Instagram?
  12. Twitter, Twitter, Twitter
  13. The Social Network
  14. How did NetFlix Beat Blockbuster?
  15. What computers can not do?

Project Details

There will be 4-6 projects. We will have fun and learn about problem solving, computation and Python!
Some things you might do in this course are:

  1. Interact with an intelligent program called Eliza, and print out conversation that convince you he is NOT human.
  2. Create art with computing.
  3. Build your own DJ.
  4. Analyze some Twitter feeds.
  5. Visualize Utah Facebook network.
  6. Create your own Instagram filter.


Tuesdays, Thursdays, 12:25 pm - 1:45 pm , WEB L105

Office Hours

Bei Wang:  Tuesday and Thursdays half an hour after class or by appointment (beiwang AT sci.utah.edu), WEB 4819

Teaching Assistants:

Ross Dimassimo (cs1060 AT spam.im)
William Garnes III (wagarnes AT gmail.com)
Vikram Raj (vikram.raj AT utah.edu)

Current TA office hours (subject to change):

Monday 11:30 am - 1:30 pm William (2 hours), CADE Lab5, WEB L210
Tuesday 3:30 pm - 5:30 p.m Ross (2 hours), CADE Lab5, WEB L210
Wednesday 1:00 p.m - 3:00 p.m Vikram (2 hours), MEB 3115
Thursday 3:30 p.m - 5:30 pm Ross (2 hours), CADE Lab5, WEB L210
Friday 1:00pm - 3:00 p.m. William (2 hours), CADE Lab5, WEB L210

Required Textbook:


Disability Notice

The University of Utah seeks to provide equal access to its programs, services and activities for people with disabilities.  If you will need accommodations in the class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Olpin Union Building, 801-581-5020 (V/TDD).  CDS will work with you and the instructor to make arrangements for accommodations.

All written information in this course can be made available in alternative format with prior notification to the Center for Disability Services.