Instructors
Wade Fagen, Ph.D., Illinois '13
waf@
2215 Siebel Center for Computer Science
Martin Hellwig
mhellwig@
2209 Siebel Center for Computer Science
Course Coordinator
Jillian Zwilling, jzwilli2@
2105 Siebel Center for Computer Science
Teaching Assistants
- Avinash Ahuja, aaahuja2@
- Ankit Bhardwaj, abhardw3@
- Haoyan Cai, hcai6@
- Vedhus Hoskere, hoskere2@
- Chinmay Kulkarni, ckulkarn@
- Sihan Li, sihanli2@
- Peyman Mahdian, mahdian2@
- Sandeep Murthy, srmurth2@
- Richa Sehgal, rsehgal2@
- Yidan Sun, ysun69@
- Sally Zhang, zhang349@
- Chi Zhou, chizhou3@
Course Assistants
- Tim Krock (Lead CA)
- Ashley Simon (Lead CA)
- Jake Akstins
- Ali Alagha
- Reid Butler
- Brianna Collender
- Ryan Eifert
- Emma Lazar
- Emilee Noh
- Jordyn Kass
- Cynthia Qi
- Caroline Breckenfelder
- Leah Lach
- Emily Chou
- Coco Wang
- Lexi Grochowski
- Emma Moore
- Piotr Chmielewski
- Eric Chai
All addresses are @illinois.edu
All office hours are listed on the
Getting Help / Contact page
Course Description
Introduction to basic concepts and applications in Computer Science. Emphasis on an understanding how a computer
"thinks" through algorithms, data manipulation, and simple programs. Application of computation-based
tools such as spreadsheets and databases. Intended for non-engineering majors.
Topics Covered
-
Programming
- Overview of an algorithm
- Variables, conditionals, and looping
- Abstraction and function calls
- Arrays, searching, and sorting
- Security and encryption
-
Data Use and Manipulation
- Data Conversion: XML, CSV, TXT, and others
- Data Manipulation
- Excel functions: SUMIF, VLOOKUP, etc
-
Data Visualization
- JSON data representation, d3.js
Languages and Tools
- Scratch
- JavaScript
- HTML / CSS
- Microsoft Excel
- d3.js
Required Materials
-
i>Clicker
- If you do not own an i>Clicker, you should get an i>Clicker "Version 2"
- CS 105's technology has been capable of receiving older i>Clickers answers. However, you should make sure your answers are getting scored if you are using an older clicker. If your clicker does not work, we are unable to help debug problems with older clickers and you will need to upgrade.
-
Microsoft Excel
- Windows: Microsoft Excel 2010, 2013, or 2015 (Older versions are not supported!)
- Mac: Microsoft Excel 2011 or 2015 (Older versions are not supported!)
- Both Windows and Mac versions of Office are available at a student discount from the CITES WebStore
- OpenOffice, Google Docs, Numbers, or other spreadsheet tools are not supported! Sorry.
-
No textbook is required. All text will be through online readings.
Exams
There is one midterm exam and one comprehensive final exam. The final exam is during the Univeristy-scheduled time slot during finals week.
Conflict exams will be available for students that have a conflict as outlined in the student code. Conflict
exam signups will start about two weeks before the exam and end one week before the exam date.
Midterm Exam
Monday, October 12, 2015
7:30pm - 9:00pm
Location: TBA
Final Exam
Thursday, December 17, 2015
1:30pm - 4:30pm
Location TBA
Grading
There is a total of 1,000 points available in this course, plus opportunities to gain small amounts of extra points (called +1 problems).
The distribution of the 1,000 points are as follows:
Exams, 350 points
- Midterm Exam: 150 points
- Final Exam: 200 points
Machine Problems (MPs) and Projects, 350 points
- MP0-MP6: 30 points each (210 total points)
- JavaScript Contest: 50 points
- Final Course Project: 90 points
Weekly Assignments, 300 points
-
Lecture: 10 points /week (max: 110 points)
- There is a total of 13 required lectures, allowing for a total of 130 points.
- Only a maximum of 110 points will count to your total grade.
-
Weekly Activities: 10 points /week (max: 100 points)
- There is a total of 11 weekly activities, allowing for a total of 110 points.
- Only a maximum of 100 points will count to your total grade.
-
Lab Sections: 10 points /week (max: 90 points)
- There is a total of 11 lab sections that are not dedicated entirely to the final project, allowing for a total of 110 points.
- Only a maximum of 90 points will count to your total grade.
- This means you can miss two lab sections before the final project without losing any points on your final grade.
- Some lab points may come from pre-labs that require you to complete an activity before your lab section.
Course Grade
Your final course grade will be determined by the number of points you have based on the following scale:
Points Earned |
Final Grade |
Points Earned |
Final Grade |
Points Earned |
Final Grade |
970+ | A+ |
930-969 | A |
900-929 | A- |
870-899 | B+ |
830-869 | B |
800-829 | B- |
770-799 | C+ |
730-769 | C |
700-729 | C- |
670-699 | D+ |
630-669 | D |
600-629 | D- |
0-599 | F |
| |
| |
Academic Integrity
Cheating is taken very seriously in CS 105 and all cases of cheating will be brought to the University, your department, and your college.
You should understand how academic integrity applies to Computer
Science courses. Note that the recommended sanctions for cheating on a programming assignment includes a loss of all points for the assignment
and that the final course grade is lowered by one whole letter grade (100 points on the CS 105 scale).
With the exception of the final project and labs, your work in this class must be your own. This means that:
-
Your work must be entirely completed by your own hands. This means that all of the code that you submit that
is part of your solution must be typed by you.
-
As a result, this means you must never send your solution to a friend, even just for them to "look at it".
We consider the act of sending a solution to a friend the same as copying a solution. (Sending a text message with a screenshot
of your code is sending your solution.)
The only acceptable way to help a friend with CS 105 is to be in the same place looking at their computer screen and allowing them
to type.
Additionally, you are responsible for protecting your work.
In the past, we had cases of copying solutions from other students without their knowledge.
To avoid having your work copied without your knowledge:
- refrain from leaving source code prints lying around the lab
-
protect your files
- if you are using a friend's computer, do not leave your work on their computer
- save your work in a secure location and remove any copies of your work from their computer (including emptying trash)
- do not give your passwords to anyone
- enter your passwords in a way that cannot be seen by others
- do not leave a login session active on an unattended computer
- never e-mail or share your work to a friend -- even if they only need "help on just one small part"