Schedule
In general, labs assigned on Tuesday are due on Friday BEFORE CLASS.
Lecture slides will be posted after class.
All dates are tentative. The schedule will be updated as the semester progresses.
WEEK | DAY | Lectures & Examples | Topic & Reading | Assignments |
Week 1 | Jan 08 | Introduction to Computer Science, CSCI111 Introduction to Algorithms Computing with numbers HtTLaCS, Chapters 1--2 | Review course web page and syllabus. Register for the interactive textbook by going to the textbook site and then register, creating a username/password for the course. An Introduction to Computational Thinking Lab 0 - Intro to Linux and HTML - due Friday Write up of Broader Issue, posting in Sakai forum: | |
Jan 09 | Lab 0 - introduction to Linux and HTML | |||
Jan 10 | ||||
Jan 12 | Drop/Add ends | |||
Week 2 | Jan 15 | Martin Luther King Jr. Day | ||
Jan 16 | Numeric, String Operations Input HtTLaCS, Chapter 1 | Introduction Assignment in interactive textbook due Tuesday, before class. Broader Issue - Algorithm accountability: What happens when an algorithm is sexist? New guidelines seek accountability Read the article. Check out the linked articles about the questionable algorithms to get the idea of what the questions are about, and choose one article to read. Write one summary on the two articles. Optional: Algorithmic accountability: Algorithms are designed to make our lives easier. The problem is, they're designed by us. This article is a little long and perhaps a bit alarmist, but thought-provoking. | ||
Jan 17 | ||||
Jan 19 | ||||
Week 3 | Jan 22 | Object-oriented programming HtTLaCS, Chapters 2-4 Using an API - Graphics library API For Loops (HtTLaCS, Chapter 4) | "Lab2 Preparation" assignment in HtLaCS, due before lab on Tuesday. Lab 2 - Advanced Arithmetic and Object-Oriented Programming Broader Issue: This isn't a news article, but it's really important to know how Google search works. (Optional: find out how other search engines work.) Make sure you access all the info, like clicking on the various headings/interactive pieces. | |
Jan 23 | ||||
Jan 24 | ||||
Jan 26 | ||||
Week 4 | Jan 29 | Using Modules, Calling functions Defining our own Functions HtTLaCS, Chapters 5, 6 | Lab 3 Preparation Assignment, due before lab on Tuesday. Lab 3 - For Loops, Functions, and Animation Broader Issue: Net Neutrality - "Here's How the End of Net Neutrality Will Change the Internet" plus, for funzies: A story about Burger King's Video on Net Neutrality | |
Jan 30 | Lab 3 - For Loops, Functions, and Animation | |||
Jan 31 | ||||
Feb 02 | ||||
Week 5 | Feb 05 | Functions HtTlaCS, Chapter 6 Selection, HtTlaCS, Chapter 7 | No broader issue this week | |
Feb 06 | ||||
Feb 07 | ||||
Feb 09 | Exam 1 | |||
Week 6 | Feb 12 | Control Statements, HtTlaCS - Chapter 7 Indefinite Loops (while), HtTlaCS - Chapter 8 Strings, HtTlaCS - Chapter 9 | Lab 5 Preparation assignment in HtTlaCS Broader Issues: Read both articles and write one summary:
Lab 5--Conditions | |
Feb 13 | ||||
Feb 14 | ||||
Feb 16 | ||||
Week | Feb 19 | Washington Break | ||
Feb 20 | ||||
Feb 21 | ||||
Feb 23 | ||||
Week 7 | Feb 26 | Strings, HtTlaCS - Chapter 9 Data Representation | Lab 6 Preparation assignment in HtTlaCS Lab 6: Advanced Conditions, Indefinite Loops, and Strings. | |
Feb 27 | ||||
Feb 28 | ||||
Mar 02 | ||||
Week 8 | Mar 05 | Lists, HtTlaCS - Chapter 10 Files, HtTlaCS - Chapter 11 | Lab 7 Preparation assignment in HtTlaCS Read about recent winners of the Turing Award (Computer Science's Nobel Prize) and their work in cryptography: Stanford cryptography pioneers Whitfield Diffie and Martin Hellman win ACM 2015 A.M. Turing Award Optional: Read about Turing, a hero of computer science Lab 7--Strings, ASCII, and lists | |
Mar 06 | ||||
Mar 07 | ||||
Mar 09 | ||||
Week 9 | Mar 12 | Files, HtTlaCS - Chapter 11 Exception handling, HtTlaCS - Chapter 13 Modules Dictionaries, HtTlaCS - Chapter 12 | Lab 8 Preparation in HtTlaCS Cryptocurrencies:
Optional:
| |
Mar 13 | ||||
Mar 14 | ||||
Mar 16 | ||||
Week 10 | Mar 19 | Defining and designing our own Classes, HtTlaCS - Chapter 16 | Lab 9 Preparation in HtTlaCS No broader issue | |
Mar 20 | ||||
Mar 21 | ||||
Mar 23 | Exam 2 | |||
Week 11 | Mar 26 | Developing larger programs Designing Classes Linear vs. Binary search Recursion | Lab 10 Preparation in HtTlaCS | |
Mar 27 | ||||
Mar 28 | ||||
Mar 30 | ||||
Week 12 | Apr 02 | 2D Lists Python compared with other programming languages Computer Science Wrapup | Lab 11 Preparation in HtTlaCS -- very short; also review classes if you're struggling with them and with the binary search code, especially with respect to how to modify it to search a list of Person objects by name. Broader Issue: Read both articles and summarize in one post: | |
Apr 03 | ||||
Apr 04 | ||||
Apr 06 | ||||
Week | Apr 09 | Final Exam | ||
Apr 10 | ||||
Apr 11 | ||||
Apr 13 |