CS302: Computer Fluency
Syllabus for Spring 2018
Computer Science is transforming virtually all aspects of our lives, and the digital revolution is still in its infancy. In this class, you will learn the core concepts of Computer Science. We will start with algorithms – the methodical instructions that tell computers what to do – and computer programming, in Python, to implement them. To better understand how computers work, you will learn to design electrical circuits that carry out the programming constructs in Python. Then, we will explore some of the Computer Science topics having the most impact today, including networks, the "internet of things", computer security, artificial intelligence and machine learning. Lastly, we will examine the social impacts of the digital revolution, from the birth of billion-dollar industries to concerns about privacy, autonomous systems and the loss of jobs.
Professor: Bruce Porter, firstname.lastname@example.org, GDC 3.704, (512)471-9565
- Katherine Bruton, email@example.com
- Tim Gianitsos, firstname.lastname@example.org
- Kevin Yu, email@example.com
- Ann Yue, firstname.lastname@example.org
|Bruce Porter||Tuesday 10:00-11:00 and Thursday 3:00-4:00||GDC 3.704|
|Tim Gianitsos||Monday 1:00-2:00||Location: GDC 1.302, Desk 5|
|Katherine Bruton||Wednesday 2:00-3:00||Location: GDC 1.302, Desk 1|
|Ann Yue||Thursday 1:00-2:00||Location: GDC 1.302, Desk 1|
|Kevin Yu||Thursday 5:00-6:00||Location: GDC 1.302, Desk 5|
Other times by appointment.
Textbooks and Supplies
No textbook is required for the class. On-line materials will be used throughout the semester. Some students might prefer having a textbook to help with the computer programming assignments. There are many good books on introductory programming with Python, such as: Starting Out with Python by Tony Gaddis.
The class meets three times each week and you're expected to attend. On Mondays and Wednesdays, we meet together in GDC 2.216. On Fridays, we meet in small discussion sections, which are scheduled as follows:
|9:00||GDC 6.202||Kevin Yu|
|10:00||GDC 6.202||Kevin Yu|
|11:00||GDC 4.302||Tim Gianitsos|
|12:00||SAC 5.102||Tim Gianitsos|
|1:00||ETC 2.132||Ann Yue|
|2:00||CLA 0.104||Katherine Bruton|
Although we might adjust the schedule of topics during the semester, here's the current plan:
|2/26||programming||circuit design||circuit design|
|3/5||circuit design||EXAM 2||no class|
|3/12||spring break||spring break||spring break|
|4/2||artificial intelligence||artificial intelligence||machine learning|
|4/9||machine learning||Watson||machine learning|
|4/16||autonomous vehicles||EXAM 3||no class|
|4/23||social impacts||social impacts||team project|
|4/30||social impacts||social impacts||DUE: team project|
Final grades (using the plus-minus grading system) will be assigned based on the following:
- 3 exams, each contributing 20% of the final grade
- 1 team project, contributing 15% of the final grade
- 8 assignments, together contributing 25% of the final grade (each contributing about 3%)
Quantitative Reasoning Flag
This course carries the Quantitative Reasoning flag. Quantitative Reasoning courses are designed to equip you with skills that are necessary for understanding the types of quantitative arguments you will regularly encounter in your adult and professional life. You should therefore expect a substantial portion of your grade to come from your use of quantitative skills to analyze real-world problems.
Staying in Touch
The class will be using Canvas. Announcements, assignments and course materials will be posted there frequently. You're responsible for visiting the site frequently to keep up.
The assignments must be done individually, except when group work has been approved. Here are the policies of the UT Computer Science Department and this class. If you cheat, you fail.