CSC 299 Sophomore Lab in Applied Computing

Office: CDM 716
Fall 2018-2019
Class number: 15881
Section number: 403
Tu 1:30PM - 4:45PM
14EAS 00503 Loop Campus

Download syllabus


CSC 299 stresses student initiative in investigating a particular application of computing. In the process, students learn new tools (including languages and APIs), methodologies, study algorithms/code examples/formalisms used in that particular computing area, work on projects, and apply them to develop working systems.
The particular topic of study in this section of CSC 299 is "Hardware Project for the Raspberry Pi". You will apply problem solving and programming skills toward building cyber physical systems using the Raspberry Pi hardware platform. The course will cover basic electronics and the Python API for managing hardware devices (including communication interfaces), interfacing with digital and analog inputs (sensors), controlling motors (actuators), and using output devices (displays, buzzers etc.). Throughout the course and final project, you will work in groups to build basic cyber physical systems (e.g., controlling LEDs) to moderately sophisticated ones (e.g., remotely piloting a robot over the Internet).


Required Textbook:
* Introduction to Computing Using Python: An Application Development Focus (2nd Edition) by Ljubomir Perkovic, Wiley & Sons, 2015.

Recommended Textbooks:
* Programming the Raspberry Pi, 2nd Edition: Getting Started with Python by Simon Monk, McGraw-Hill Education, 2015.

* Hacking Electronics: Learning Electronics with Arduino and Raspberry Pi, 2nd Edition by Simon Monk, McGraw-Hill Education, 2017.


The course grade will be apportioned as follows:

* Homework (including quizzes),25%
* Lab Assignments,25%
* Final Project,40%
* Participation,10%


You must also have taken CSC 242 or CSC 243 or an equivalent introduction to programming course. To be in this class you must have passed these courses or have been waived out of them. More to the point, you must already know how to program in Python or have sufficient programming experience so that you can learn Python quickly on your own.

You will need to bring your Raspberry Pi kit to class. If you have a laptop and can bring it to class, I encourage you to do so.

School policies:

Changes to Syllabus

This syllabus is subject to change as necessary during the quarter. If a change occurs, it will be thoroughly addressed during class, posted under Announcements in D2L and sent via email.

Online Course Evaluations

Evaluations are a way for students to provide valuable feedback regarding their instructor and the course. Detailed feedback will enable the instructor to continuously tailor teaching methods and course content to meet the learning goals of the course and the academic needs of the students. They are a requirement of the course and are key to continue to provide you with the highest quality of teaching. The evaluations are anonymous; the instructor and administration do not track who entered what responses. A program is used to check if the student completed the evaluations, but the evaluation is completely separate from the student’s identity. Since 100% participation is our goal, students are sent periodic reminders over three weeks. Students do not receive reminders once they complete the evaluation. Students complete the evaluation online in CampusConnect.

Academic Integrity and Plagiarism

This course will be subject to the university's academic integrity policy. More information can be found at If you have any questions be sure to consult with your professor.

Academic Policies

All students are required to manage their class schedules each term in accordance with the deadlines for enrolling and withdrawing as indicated in the University Academic Calendar. Information on enrollment, withdrawal, grading and incompletes can be found at

Students with Disabilities

Students who feel they may need an accommodation based on the impact of a disability should contact the instructor privately to discuss their specific needs. All discussions will remain confidential.
To ensure that you receive the most appropriate accommodation based on your needs, contact the instructor as early as possible in the quarter (preferably within the first week of class), and make sure that you have contacted the Center for Students with Disabilities (CSD) at:
Lewis Center 1420, 25 East Jackson Blvd.
Phone number: (312)362-8002
Fax: (312)362-6544
TTY: (773)325.7296