SI100/SI100B: Introduction to Information Science and Technology. Spring 2017

LecturesWednesday and Friday, 10:15--11:55.
Location教学中心 (Teaching Center) 103 except: Rust: 教学中心 101; Python: 教学中心 201
DiscussionsThursdays, 19:35 - 20:40, same as your lecture room
Office hoursPlease check on piazza
HomeworkSubmit your programming homework to the gradebot.
DiscussionsPost all your questions on the forum.
ResultsSI100 SI100 B
Week Date Topic Reading Notes
102-15 Electronics: Introduction to Electronics (pdf) (Admin)
02-17 Electronics: Digital Logic (pdf) (Quiz) HW 1
HW 1 Solution
202-22 Electronics: Combinational Logic Circuits (pdf) (Quiz) Seven-Segment Display
02-24 Lab 1 SI100 & SI100B HW 2
303-01 Electronics: Digital Building Blocks (pdf) (Quiz)
03-03 Electronics: Sequential Digital Circuits (pdf) HW 3
03-05 (Sunday!) Lab 2: SI100 students only! (pdf) Location: SIST 1A 101
403-08 Electronics: Beyond Logic Switches (pdf)
03-10 Electronics: Spintronics (pdf) & Lab 3 SI100 & SI100B: Analog Circuits
03-12 (Sunday!) Lab 4 SI100 only: Rotating Distance Detector Location: SIST 1A 101
503-15 SI100 Traits Traits
SI100B Introduction to programming and Python (pdf) PT 1--3
03-17 SI100 Trait objects Trait objects
SI100B Control flow (pdf) PT 4
603-22 SI100 Closures Closures
SI100B Compound data type and IO (pdf) PT 5,7
03-24 SI100 Closures Closures
SI100B Exception and Naming and binding (pdf) PLR 3.1, 4.1 PT 8
703-29 SI100 Iterators Iterators
SI100B Classes and OOP (pdf) PT 9.1--9.7
03-31 SI100 Iterators Iterators
SI100B Classes and OOP, Modules and Packages (pdf) PT 6, 9.1--9.7
804-05 SI100 Concurrency Concurrency
SI100B Algorithm (pdf)
04-07 SI100 Concurrency Concurrency
SI100B PyQt4
904-12 Signals and Systems - Fourier Transform (pdf) HW
04-14 Signals and Systems - Systems (pdf)
1004-19 Networking & Internet I (pdf) HW Network
due Friday, April 28, 23:59:59
04-21 Networking & Internet II (pdf)
1104-26 Control (pdf)
04-28 Control
04-29 (Saturday!) Holiday!
1205-03 Intelligent Machines and Robotics: Introduction (pdf) MR 1
05-05 Intelligent Machines and Robotics: Navigation (pdf) MR 2 ALL: Robotics Homework - due Tuesday, May 23!
05-06 (Saturday!) Robotics Lab & Control Lab in parallel (SI100 students only!) Control Lab

SI 100 Groups
SI100: Lab preparation Homework - due Firday, May 12!
SI100: Practice 1 task sheet.
SI100: ROS bagfile with sensor data.
SI100: Video of the robot collecting the bagfile.
SI100: Robotics lab intro presentation.

1305-10 Intelligent Machines and Robotics: Planning (pdf) PA 1.1 - 1.4 SI100: Lab 2: Homework - due Firday, May 12!
05-12 Intelligent Machines and Robotics: Perception (pdf) MR 3.1
05-13 (Saturday!) Robotics Lab (SI100 students only!)
1405-17 Intelligent Machines and Robotics: Mapping (pdf) SI100: Lab 3: Race Rules & Points
05-19 Intelligent Machines and Robotics: Manipulation (pdf)
05-20 (Saturday!) Robotics Lab (SI100 students only!) SI100: Race Results
Video: Fastest Team
1505-24 Computer Vision & Machine Learning: Introduction (pdf) CVAA 1, 3.2
05-26 Computer Vision & Machine Learning: Segmentation and Clustering (pdf) CVAA 5.3 Homework - due Friday, June 2!
1605-31 Computer Vision & Machine Learning: Multiviews: from 2d to 3d (pdf)
06-02 Computer Vision & Machine Learning: Object recognition (pdf)
06-03 (Saturday!) Computer Vision Lab IS 100 only (Cancelled)

Note: schedule is subject to change.


This course introduces fundamentals of information science and technology in four parts: programming, electronics, intelligent machines and robotics, and signal and systems.



Introduction to Programming using Rust
The Rust Programming Language
Rust by Example
The Rust Reference


The Python Tutorial
The Python Language Reference
The Python Standard Library
The Python HOWTOs


LaValle, Mobile Robotics
LaValle, Planning Algorithms

Computer Vision and Machine Learning

Szeliski, Computer Vision: Algorithms and Applications
Murphy, Machine Leanring: A Probabilistic Perspective


Read the chapters before every class. We will not read the textbook to you but I will help you better understand certain materials in the textbook.
Class participation
Participate actively in the discussions both in class and on the forum.
Read your email and the forum at least once in any 12 hour period (including weekends and holidays), as we may post important announcements.


Your grade is determined by a weighted sum of your scores on homework, exams, quizzes, projects, and class participation.


Academic integrity

We enforce academic integrity strictly. If you participate in any form of cheating, you will fail this course immediately. Examples of cheating on homework include (but are not limited to):


Please also consult the Syllabus on correct academic behaviour: SI100 SI100B

Late homework

For programming section: you must submit all your homework solutions to the gradebot: we cannot accept homework solutions in any other way. The gradebot enforces deadlines strictly. We never accept late homework submission in any circumstances. Since we hand out homework several weeks before its deadline, you should allocate sufficient time and allow for contigencies.


You may not post anonymously. If you do, we will delete your post without notice and will deduct from your class participation score.


We always welcome any feedback on what we could do better. You are also welcome to send us feedback anonymously if you like.