Five peer-led workshops will be held throughout the semester to help you improve your programming skills. Each workshop will be held at several different time slots on Fridays or Sundays.
The dates of the five workshops are:
- Friday, February 9 / Sunday, February 11
- Friday, February 23 / Sunday, February 25
- Friday, March 23 / Sunday, March 25
- Friday, April 6 / Sunday, April 8
- Friday, April 20 / Sunday, April 22
Please complete this form to sign-up for the workshops.
Introduction to Computing I: Spring 2018
Description and Goals
Computers and software are everywhere. Inside your mobile phone, your car, and quite possibly your toaster, hundreds, thousands, or millions of lines of software are running. Programs enable and mediate instant communication, global financial networks, a smoothly running engine, and a perfectly browned slice of sourdough. Writing software to instruct computers to do even simple tasks can be challenging, fun, and creative.
The goal of this course is to introduce students to computer science and problem solving by writing programs. Through lecture, discussion, programming assignments, and other activities we will cover topics such as basic programming constructs (variables and types, control flow, conditionals, iteration), input and output, basic data structures, objects, and recursion. No prior experience in computer science or programming is required for this course.
Lecture Meeting Times
|A||Aaron Gember-Jacobson||McGregory 314||MWF 9:20–10:10|
|B||Sandra Jackson||McGregory 314||TR 8:30—9:45|
|C||Sandra Jackson||McGregory 314||TR 9:55—11:10|
Lab Meeting Times
|L_A||Sandra Jackson||McGregory 328||T 1:20—3:10|
|L_B||Val Cucura||McGregory 329||W 10:20—12:10|
|L_C||Aaron Gember-Jacobson||McGregory 328||M 12:45—2:35|
|L_D||Aaron Gember-Jacobson||McGregory 328||M 2:45—4:35|
|L_E||Val Cucura||McGregory 329||R 12:45—2:35|
|L_F||Val Cucura||McGregory 329||R 2:45—4:35|
Note: there will be no lab during the first week of class.
While students can attend the office hours of any course instructor, we encourage you to attend the office hours of your course instructors whenever possible. Homework questions should be asked to course instructors. Questions relating to lab work should be asked to the instructor of the laboratory section you are attending.
|Aaron Gember-Jacobson||agemberjacobson||McGregory 310||Mon 10:15am-11:00am
|Sandra Jackson||sjackson1||McGregory 319A||Tue 3:30pm-4:30pm
|Val Cucura||vcucura||McGregory 317||Wed 12:30-3:30|
Please note that office hours are subject to change throughout the semester, consult this website for up-to-date office hours.
Talking to your professors in class and office hours are the preferred means of contact for this course. However, there may be times when you need to use email. When you do, be sure to include “COSC 101” in your email subject line. The instructors make every effort to respond to emails within 24 hours and will often respond sooner; however, there may be times when responses take as long as 72 hours. Multiple or repeated emails will delay the response time.
COSC tutors are available during open lab hours in McGregory 329. Lab tutors provide help hands-on with coursework. Times are Sundays-Thursdays 7:00-10:00pm.
This course (lecture + lab) count for a total of 1.25 credits. Therefore, you are expected to spend roughly 12.5 hours/week on this course, on average. A rough indication of how that time should be allocated across the various requirements follows:
Class: You are expected to come to class and to actively participate, including answering questions and completing other in-class activities. Students may be called on in class. (≈2.5 hours/week)
Reading and Exercises: Complete the assigned reading and exercises (see schedule) due before class. Anything from the required reading, even if not directly discussed in class, is fair game for the homework and exams. (≈3 hours/week)
Lab: To complete this course, you must also sign up for a 2-hour weekly laboratory section. Labs are designed to be completed during the lab period. Please note that you will likely have a different instructor than in lecture, and this instructor will determine the lab component of your grade. (≈2 hours/week)
Homework: There are weekly homework assignments, typically due on Thursdays. Homework takes the concepts introduced in class and practiced in lab and pushes you to apply them to more challenging problems. (≈5 hours/week, during homework weeks)
Exams: There will be three cumulative exams held outside of regular class meeting times:
- Exam 1: 7:00–8:30pm on Tuesday, February 27th in 207 Lathrop Hall
- Exam 2: 7:00–8:30pm on Thursday, April 12th in 207 Lathrop Hall
- Final Exam: Self-scheduled during final exam week
If you have a conflict with the scheduled exam time, you must notify your instructor as soon as possible, at least two weeks prior to the exam. (≈5 hours per week, during exam weeks. There is no homework due on Thursday when there is an exam the same week.)
- How to Think Like a Computer Scientist: Interactive Edition Is a free, online, interactive textbook containing examples with embedded code fragments that you can run and modify. You should create an account on the textbook website and enter the appropriate course name for your section when you register:
- Section A: Colgate-S18-COSC-101
- Section B: Colagte-S18-COSC-101B
- Section C: Colaget-S18-COSC-101C
- You will occasionally be asked to read from other books and sources, they will be available freely online and linked from the course schedule.
Course Webpage: The main course website is located at http://cs.colgate.edu/cosc101. This page contains general course information: the syllabus, textbook, homework descriptions, exam preparation, and relevant links. You are responsible for keeping up with changes and updates to the site.
- All programming will be done using the Python 3 language. Lab computers will have python pre-installed. However, you may wish to install Python on your personal computer. If you choose to install Python, be sure to install Python 3, not 2.7!!. See our tools page for more information.
- The official Python language website, has loads of useful documentation. Especially useful references include the tutorial and the module index.
An outline of the composition of your final grade is as follows. Grading is on an absolute scale (no curve).
|Coursework||Portion of grade|
|Readings and Exercises||10%|
|Prelim Exams||20% (10% each)|
Final course grades are determined as follows. As a general rule, fractions are rounded down (e.g., an 89.9 is a B+, not an A-). A grade of A+ is awarded when the student demonstrates truly exceptional performance and is not simply determined by having a high final course grade.
|Letter Grade||Percent Grade|
|A-||90 - 92|
|B+||87 - 89|
|B||83 - 86|
|B-||80 - 82|
|C+||77 - 79|
|C||73 - 76|
|C-||70 - 72|
|D+||67 - 69|
|D||63 - 66|
|D-||60 - 62|
To pass the course, you must pass the final exam.
Academic honesty and collaboration
You are expected to abide by Colgate’s academic honor code. Communication (i.e., discussing the problem and possible solutions) while working on assignments is fine, but the work you submit must be your own. Roughly speaking, it is okay to share ideas but it is not okay to share any artifacts (code, write-up, etc.). Here is a good way to think about it: you and a classmate can get together, discuss ideas, and even write some code. However, you are expected to leave that meeting with nothing – no notes and certainly no code – and write up your own solution. If you do study with anyone, include a note with your submission that states clearly with whom you worked. Failing to acknowledge those you work with can be a violation of the honor code.
The concepts in this course build on one another, so once a student gets behind, it becomes increasingly harder to keep up. Good planning is essential and starting homework early is good practice. Plan to give yourself time to step away from your work and return to it later. Programming in this way works better than sitting down and trying to complete programs in one shot right before the deadline. However, we understand that unexpected circumstances arise, therefore, late homework may turned in after the stated deadline with a penalty of 20% per day.
If unexpected circumstances arise that could impact your involvement in the course (inability to attend class, complete the homework on time, etc.), please let your instructor know as soon as possible so that we may design appropriate accommodations. Usually these accommodations will be made in consultation with your Administrative Dean.
Additionally, any student who faces challenges securing their food or housing and believes this may affect their performance in the course is urged to contact their Administrative Dean for support. Furthermore, please notify your instructor if you are comfortable in doing so, so we may provide any resources available.
A key to your success at Colgate, and in life in general, is figuring out what resources are available and using them to help you achieve your goals. For any homework problems or other class-related questions that you have, there are several options for getting help. Please take advantage of these opportunities!
- See instructor during office hours.
- Form a study group with other students in the class and work together on a regular basis (note the collaboration policy above).
- See CS student tutors during Open Lab hours.
- Post questions in the Q&A forum on Moodle.
It’s worth reading “How to Study CS”, as you will likely find that computer science is unlike other disciplines that you have encountered and you will need to approach studying differently.
In addition, please be aware of the great resources that Colgate provides:
Academic Support and Disabilities Services; Lynn Waldman, Director.
If you feel you may need an accommodation based on the impact of a disability, you should contact your instructor privately to discuss your specific needs. If you have not already done so, please contact Lynn Waldman, Director of Academic Support and Disability Services at 315-228-7375 in the Center for Learning, Teaching, and Research. Reasonable and appropriate accommodations for students with disabilities are determined on a case-by-case basis to ensure that members of the community with disabilities have access to Colgate’s programs and services. She also assists students in identifying and managing the factors that may interfere with learning and in developing strategies to enhance learning.
NASC Liaison Group
NASC liaisons are a group of natural science and mathematics faculty members dedicated to providing science-interested students from underrepresented groups with mentorship, motivation, and individualized support as they navigate their paths in the sciences at Colgate. NASC liaisons do not replace the role of an academic advisor or offer formal academic advising. Rather a NASC liaison may meet one-on-one with a student to give another perspective on their academic plan; give tips on effective studying; or introduce a student to upper-class peers, alumni, or other faculty members that might be able to help them. The roles of NASC liaisons will depend on students’ needs, and we encourage students to reach out for mentorship and moral support. To find out more about the group or to contact a member, visit the NASC division webpage. Computer Science Prof. Fourquet is a member of this group.
The Information Technology Service Desk is located on the third floor of Case-Geyer Library and provides services to all students across campus. The help desk consultants assist with problems concerning email, Portal, Moodle, and problems with your personal laptops. Talk to your instructor if problems with your personal computer are effecting your ability to get your work done.
College life can sometimes get bumpy; if you are experiencing emotional or personal difficulties, the Counseling Center offers completely confidential and highly professional services.
Each student is assigned an Administrative Dean who can advise you regarding personal and/or academic matters. Administrative deans often assist students to understand policies and procedures, navigate personal challenges, work with faculty, and engage with parents.