CSCI 150

Course Schedule, Fall 2017:


Date Topic/Lab Assignment
08/28
08/29
08/30
08/31
09/01
Course introduction
Lab 0: Word Problems (Write-up)
Excel as a computational tool
Lab 1: Excel Basics (Pre-lab) (Write-up)
Excel formulas and cell addressing
Herzfeld et al., Chapter 1
 
Herzfeld et al., §§5.1–5.2
 
Herzfeld et al., §5.3
09/04
09/05
09/06
09/07
09/08
Functions in Excel
Lab 2: Excel Functions and Forecasting (Pre-lab) (Write-up)
The process of programming
Lab 3: Basic Robotic and Python Programming (Write-up)
Introduction to Python
Herzfeld et al., §§5.4–5.5
 
Herzfeld et al., Chapter 2; zyBooks: How to Use zyBooks
 
zyBooks, Chapter 1
09/11
09/12
09/13
09/14
09/15
Variables and expressions
Lab 4: Introduction to Python and JES (Pre-lab ) (Write-up)
Branching and the if-statement
Lab 5a: Selection in Python (Pre-lab) (Write-up)
Boolean operations and code structure
zyBooks, Chapter 2
 
zyBooks, §§4.1–4.3
 
zyBooks, §§4.4, 4.6–4.7
09/18
09/19
09/20
09/21
09/22
Simple loops in Python
Lab 5b: Selection in Python (Pre-lab) (Write-up)
Counting and for-loops
Lab 6: Introduction to Loops in Python (Pre-lab) (Write-up)
Exam 1
zyBooks, §§5.1–5.3
 
zyBooks, §§5.4–5.6
 
Herzfeld et al., Chapters 1, 2, 5; zyBooks, Chapters 1, 2, 4, 5
09/25
09/26
09/27
09/28
09/29
Designing with loops and functions
Lab 7: Loops and Images in Python 1 (Pre-lab) (Write-up)
Python function design
Lab Quiz 1: Python Programming
Scope in Python, using docstrings
zyBooks, §§5.7–5.8, §§6.1–6.3
 
zyBooks, §§6.4–6.6
 
zyBooks, §§6.7–6.10
10/02
10/03
10/04
10/05
10/06
Strings and files
Lab 8: Loops and Images in Python 2 (Pre-lab) (Write-up)
More on files
Lab 9: File Input and Strings in Python (Write-up)
Representing sounds and images
zyBooks, §§3.1, 7.1–7.3, 9.1
 
zyBooks, §§9.2–9.3
 
 
10/09
10/10
10/11
10/12
10/13
Computers, encryption, and espionage
Lab 10: Sound Files in Python (Pre-lab) (Write-up)
Python lists
Lab 10 continued—no Lab 11
Sorting lists
 
 
zyBooks, §3.2, §§8.1–8.3
 
zyBooks, §§8.4, 8.6–8.7
10/16–17
10/18
10/19
10/20
Free days
Web pages and HTML
Lab Quiz 2: Python Programming
Building web pages
 
 
 
 
10/23
10/24
10/25
10/26
10/27
Exam 2
Lab 12: Accessing Web Data (Pre-lab) (Write-up)
Programming and applications
Lab 13: Robotics Programming 2
Introduction to VBA
zyBooks, Chapters 1–9
 
 
 
Herzfeld et al., Appendices A & B
10/30
10/31
11/01
11/02
11/03
Excel macros
Lab 14: VBA Macros in Excel 1
More on macros
Lab 15: VBA Macros in Excel 2
Social and legal issues
Herzfeld et al., §§5.6–5.7
 
Herzfeld et al., §§5.6–5.7
 
Herzfeld et al., Chapter 10
11/06
11/07
11/08
11/09
11/10
Computer hardware components
Lab 16: VBA Macros in Excel 3
Software systems and networks
Lab Quiz 3: Excel and VBA Macros
Integer data representation
Herzfeld et al., §§8.1–8.3
 
Herzfeld et al., §§8.4–8.7
 
Herzfeld et al., §§6.1–6.5
11/13
11/14
11/15
11/16
11/17
Exam 3
Lab 17: Representing Integer Data
Floating-point and character data representation
Lab 18: Representing Floating-Point and Text Data
Introduction to circuits
Herzfeld et al., Chapter 5, Appendix B
 
Herzfeld et al., §§6.6–6.10
 
Herzfeld et al., §§9.1–9.2
11/20
11/21
11/22–24
Boolean operations and circuits
Lab 19: Circuit Design
Thanksgiving Recess
Herzfeld et al., §§9.1–9.3
 
 
11/27
11/28
11/29
11/30
12/01
Circuit design
Lab 20: Designing Circuits to Solve Problems
CPU design and machine language
Lab 21: Machine and Assembly Language
Assembly language
Herzfeld et al., §§9.4–9.5
 
Herzfeld et al., §§7.1–7.3
 
Herzfeld et al., §§7.4–7.5
12/04
12/05
12/06
12/07
12/08
Compiling high-level languages
Lab 22: Translating Python/VBA into Assembly Language
Principles of databases
Lab Quiz 4: Data, Circuits, and Assembly Language
Queries and reports
Herzfeld et al., §§7.4–7.5
 
Herzfeld et al., §§4.1–4.3
 
Herzfeld et al., §§4.4–4.7
12/11
12/12
Conclusion and Review
Project demonstrations
 
 
12/19 Final Exam, Tuesday, 13:15-15:15, PEngl 173 Comprehensive