Instructor:

Lab Instructor:

Course Web Site:   www.cs.kzoo.edu/cs105/
Course Moodle Site:   COMP 105 Intro Computer Science w/Lab [WI22 - Brady]
Course Teams Sites:   CS 105 Intro to Computer Science;   CS Collaboration Center

Textbook: Understanding the Digital World by Brian W. Kernigan, 2nd Edition (2021). Other reading assignments will be made available online.


Catalog Description

This course provides an overview of the field of computer science from the concrete -- what computers are made of and how they work -- to the abstract -- the theoretical limits of what computers can and cannot do. This course also focuses on the general algorithmic (disciplined, step-by-step) approach to problem solving, and the basic concepts of computer programming. Other topics include the history of computers, an introduction to several areas of computer applications including artificial intelligence, and the ethical and societal issues raised by the widespread use of computers.

Learning Outcomes

A detailed schedule of readings, assignments, and in-class activities is available on the Schedule page of the course web site.


Format:

This course has both a "lecture" component (Mon/Wed/Fri) and a "lab" component (Thurs). These components are tightly integrated and, in fact, it is misleading to call the Mon/Wed/Fri sessions "lectures." Much of the typical lecture portion has been replaced with short videos that introduce new concepts. You should watch these before class. This leaves class time for more active learning activities, such as discussion, mini-labs, and group activities. Active and consistent attendance, engagement, and collaboration is the best way you can benefit your learning.

Students will be divided into small lab groups, which will be periodically rearranged throughout the quarter. Instructors and teaching assistants will circulate among lab groups and be available to answer questions. Since clustering around laptop screens is difficult within a social distancing world, group-work and one-on-one help may use software-based screen sharing.

Students in this class must observe College policy regarding masks and social distancing when meeting together in person, whether in class or in small group meetings, in order to protect the health of your group, the class, and the College community as a whole. You should not come to class if you are sick or in quarantine.


Resources:


Activities and Staying On-Track:

This course covers a breadth of topics, with many small activities that build on one another. It is very important to remain actively engaged in the course on a daily basis in order to stay on track. There are direct correlations between keeping up, how much you learn and can apply later, and your grade.

Readings and Videos:

This course consists of tightly integrated lecture and lab components; for every new concept, there is an introductory explanation and an immediate hands-on exercise. Most of the "lecture" component will be provided by reading assignments and videos introducing new concepts, to be done before class. Class time will generally be for active learning activities, including getting started on assignments.

Attendance:

The "flipped" nature of this class has at least two advantages. The active learning approach means that the instructor and teaching assistants will be available to you as you work on exercises and labs in class. As a result, there is a high correlation between attendance and effective, successful learning. On the other hand, if a student does need to miss a class, due to quarantine or illness for example, the use of videos to deliver lecture material will make it easier for the student to stay on track or catch up if they fall behind.
Students (and instructors) should not come to class if they are sick or in quarantine.

Assignments:

This course has many assignments, mostly small. All assignments, as well as links to readings and videos introducing new material, will be made available on the Detailed Schedule page of the course web site:

http://www.cs.kzoo.edu/cs105/

Students are responsible for checking this resource frequently.

Many assignments will give you the option of working individually or in small groups. Assignments that are reflective responses, however, should be your own work. (See the section on Collaboration and the Honor System for more information.)

Assignment due dates have two important functions: to help you plan your time and keep you on track to successfully complete the course, and to make grading more manageable. Late assignments may accrue late penalties or might not be accepted at all, unless you clear it with the instructor in advance.

Grades:

Grades will be based on the following activities:
 
    Required
    To Pass
    Complete all Labs, Mini-Labs, and Other Hands-On Activities    49%
    Complete all Quizzes    9%
    Complete all Essential Reflective Responses    9%
    A - C Three Programming Projects (Design, Implementation, Evaluation)    16%
    Student Presentation    10%
    Extra Reflective Responses on Student Presentations    7%

Collaboration and the Honor System:

This course operates in accordance with the principles of the Kalamazoo College Honor System: responsibility for personal behavior, independent thought, respect for others, and environmental responsibility. In particular, academic integrity is a fundamental principle of scholarship. Representing someone else's work as your own, in any form, constitutes academic dishonesty. Unauthorized collaboration and receiving help from others outside the bounds permitted by the instructor are also violations of the College honor system. You are responsible for working within the permitted bounds, and acknowledging any help from others or contributions from other sources.

Laboratory Assignments and Programming projects: Some assignments may allow you to work in pairs. Whether working individually or in a team, you may discuss lab assignments and programming projects with classmates and give and receive help. You may not, however, digitally share code or code fragments, unless you are working as a team on a project where teamwork has been explicitly allowed. You may also, of course, receive help from your instructor and from the CS teaching assistants during labs, mini-labs, and Collaboration Center hours.

You should document authorship, group-work, and "outside" help (from the TAs, your instructor, or other groups within the class) in the comments at the top of your program using the following clauses:
        Authors(s):
        Working with or alongside lab group members:
        With Assistance From: 

Quizzes in this class provide a way for you to assess your own understanding. As an experiment, quizzes in this class will start out very open — you may look at online materials, talk to other members of your lab group or other students in the class as you take them, and you may re-take them. If this does not work well (students aren't learning what they should be learning), the quizzes will revert to a more traditional model, in which case they would be completely individual, with no discussion about them allowed.

Reflective responses (for example, to videos and student presentations) should be entirely your own work.

Student presentation: Most student presentations will be done in pairs, although with instructor permission it may be possible to do one individually or as part of a group of three. Your presentation should represent a synthesis of ideas drawn from your research. You should use citations in your presentation to credit all ideas drawn from other sources; you should also list all of your sources in a bibliography at the end of your presentation.

A few words on citations: If you directly quote one of your sources, be sure to put the phrase/sentence in quotes and include a citation. If you use an idea or fact from one of your sources, but do not directly quote it, you should still include a citation. Basically, citations should be included for any information in your presentation that is not originally your own.

Detailed presentation expectations and possible topics will be made available on the course schedule. You may ask a reference librarian or the course instructor for help identifying possible sources as you do your research.

Penalties for violating the Honor System in this course may include receiving no credit for an assignment, a lowered course grade, or failure of the course. Depending on the severity of the incident, a report may be sent to the Dean's Office, which may result in additional consequences, including suspension from the College. Any subsequent violation will result in the immediate failure of this course.


Title IX Responsibilities:

Kalamazoo College strives to provide an environment free of bias, discrimination, and harassment. If you have been the victim of sexual or gender-based harassment, discrimination, misconduct, or violence, I encourage you to report this so the College can provide you options for support or resolution though the Title IX process. If you share information of an incident with me, I am required to notify the Title IX Coordinator about the facts of the incident. For more information about your options and confidential resources, please visit the Title IX website.