Instructor
Wade Fagen, Ph.D., Illinois '13
waf@
2215 Siebel Center for Computer Science
Teaching Assistants
- Haoyan Cai, hcai6@
- Farah Khan, fzkhan2@
- Qijun Liu, qliu38@
- Omkar Lokhande, lokhand2@
- Sandeep Murthy, srmurth2@
- Banu Muthukumar, muthkmr2@
- Anjali Narayan-Chen, nrynchn2@
- Khuram Shahzad, shahzad2@
- Yidan Sun, ysun69@
Course Assistants
- Richard Kacirek
- Catherine Kang
- Tim Krock
- Sonia Mohanlal
- Ashley Simon
- Tom Yan
- Eric Zhang
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
- Variables, arrays, conditionals, and looping
- Overview of an algorithm
- Security and encryption
- Sorting
- Abstraction
-
Data Use and Manipulation
- Data Conversion: XML, CSV, TXT, and others
- Data Manipulation: JavaScript and Excel
- Excel functions: SUMIF, VLOOKUP, etc
- Web Development
Languages and Tools
- Scratch
- JavaScript
- HTML
- CSS
- AJAX
- Microsoft Excel
Required Materials
-
i>Clicker
- If do not own an i>Clicker, you should get an i>Clicker "Version 2"
- CS 105's technology is capable of receiving older i>Clickers answers and older clickers often. 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
-
It is not necessary to purchase a copy of Microsoft Office, as all CITES labs have Office installed and can be
used for all CS 105 assignments. However, most students in the past have preferred having their own copy.
- Windows: Microsoft Excel 2010 or 2013 (Older versions are not supported!)
- Mac: Microsoft Excel 2011 (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, and other tools are not supported! Sorry.
-
No textbook is required. All text will be through online readings.
Exams
There are two midterm exams and one comprehensive final exam. The midterm exams are 90-minute evening exams that are held from 7:00pm - 8:30pm. 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 #1
Tuesday, Oct. 7, 2014
8:00pm - 9:30pm
Midterm #2
Tuesday, Nov 18, 2014
8:00pm - 9:30pm
Final Exam
Section AL1: Monday, Dec. 15, 2014, 8:00am - 11:00am
Section AL2: Friday, Dec. 19, 2014, 8:00am - 11:00am
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, 500 points
- Midterm #1: 150 points
- Midterm #2: 150 points
- Final Exam: 200 points
Machine Problems (MPs) and Projects, 340 points
- MP0 and MP1: 20 points
- MP2, MP3, MP4, MP5, and MP6: 30 points
- MP7: 50 points
- Final Project: 100 points
Weekly Assignments, 160 points
-
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: 5 points /week (max: 60 points)
- There is a total of 14 lab sections, allowing for a total of 70 points.
- Only a maximum of 60 points will count to your total grade.
- This means you can miss two lab sections without losing any points on your final grade.
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.
You are a respected individual in a community of collegiality and trust. We honor and believe your word. We trust what you say and will
generally not ask for proof. However, with trust comes responsibility. Violation of trust will not be tolerated. In particular, acts not
befitting this community such as cheating (e.g., collaboration on homeworks or exams that are not meant to be collaborative) fall in the
category of violation of trust. Individuals who commit such acts will lose the privileges of trust and receive grade reductions as described above.
With the exception of the final project, your work in this class must be your own. Your work must be a result of individual work and
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"
It is reasonable to to speak to others about the lecture, readings, or lab work.
It is also reasonable to speak in broad terms about assignments and reasonable to share one or two lines of code from your program to have help finding a bug in your code.
However, do not share flow-charts, algorithms, "pseduo-code", or speak in technical terms about an assignment. Do not share code that is working. Do not send or post
an entire function or a full program to a friend or publicly in any way. Do not copy a solution from the internet or a previous semester.