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
Instructors寇煦丰 <kouxf>, 陈浩 <chenhao>, 宋富 <songfu>, 何旭明 <hexm>, Sören Schwertfeger <soerensch>
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


Xufeng Kou
寇煦丰 Xufeng Kou : EE
Fu Song
宋富 Fu Song : SI100B Python
陈浩 SI100 Rust
Xuming He
何旭明 Xuming He: Signal
Sören Schwertfeger
Sören Schwertfeger 师泽仁: Robotics

TAs for the whole course
Please check the TA office hours on piazza.
Jianxiong Cai
蔡健雄 Jianxiong Cai
Jiadi Cui
崔佳迪 Jiadi Cui
Jingxian Huang
黄静娴 Jingxian Huang
<huangjx (EE and Python)>
Dinghong Li
李鼎弘 Dinghong Li
Yuyang Rong
荣宇阳 Yuyang Rong
Yelei Wu
邬烨磊 Yelei Wu
Zhiqiang Xie
谢志强 Zhiqiang Xie
Yumeng Yuan
袁雨蒙 Yumeng Yuan
Yunchen Yang
赵希亭 Xiting Zhao

Additional TAs for EE
Xinyi Jiao
焦馨仪 Xinyi Jiao
Junyan Su
苏隽岩 Junyan Su
Yike Li
李逸柯 Yike Li
Yunting Li
李芸婷 Yunting Li
Dong Jiao
焦东 Dong Jiao
Jiming Li
李家明 Jiming Li
Jucheng Huang
黄家诚 Jucheng Huang
Junren Zheng
郑钧仁 Junren Zheng

Additional TAs for Python
Qi Qin
Qi Qin
Xiaoyu Song
Xiaoyu Song
Yuzhou Jing
荆玉琢 Yuzhou Jing

Additional TAs for Rust
Jianzhong Liu
刘健中 Jianzhong Liu
Yonghao Liu
刘永豪 Yonghao Liu

Additional TAs for Signals
Lina Hu
胡莉娜 Lina Hu
Dongze Lian
廉东泽 Dongze Lian
Wen Liu
刘闻 Wen Liu

Extra TAs for Robotics


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.