Syllabus

CSC 241-401

   

Introduction to Computer Science I

Fall 2012

Lectures: Mondays/Wednesdays, 10:10 - 11:40 am, CDM 801

Labs: Mondays, 11:50 am - 1:20 pm, CDM 658

 

Professor: Amber Settle

Lab instructor: Robert Watts

Contact information

243 S. Wabash Avenue, Room 748
Chicago, IL 60604
Phone: (312) 362-5324
FAX: (312) 362-6116
Skype ID: amber.settle
asettle@cdm.depaul.edu
http://facweb.cdm.depaul.edu/asettle/

Office hours

Monday  1:30 - 3 pm  Loop
Wednesday  1:30 - 3 pm  Loop

I am available during office hours in person, by phone, using Skype, or by e-mail.  Since students may be present in person during those hours, it is possible that there will be some delay before I respond to e-mail, phone calls, or Skype requests.  When you call, please leave a message that indicates the number you can be reached at and gives the best time to return your call.

Please make use of my office hours!  Asking questions about the assessments, lecture notes, labs, or the readings can improve your understanding enormously.   It will also let me know if I need to review a topic with the class.  If you want to talk to me during my office hours but are unable to do so for any reasons, please contact me to make an appointment outside those hours.

Course web sites

There are three web sites used for this course: Desire2Learn (D2L), COL, and Turings Craft.

To log onto the D2L page visit https://d2l.depaul.edu/.  Lecture notes, programming assignments, lab assignments, study guides for the midterm and final exam, and other course materials will be available through the D2L site.  There will also be links to course recordings, which are housed on the COL site.

The COL site is where you will find all course recordings.  While you are expected to attend all classes, the recordings can be useful for review.  There will be links from the D2L site to the COL site.  If you wish to log into the COL site directly, you can visit https://col.cdm.depaul.edu.

The Turings Craft site will be used for exercises that will be completed during class.  Part of your class participation will include completing these exercises.  Using the Turings Craft site will cost $25, and instructions on how to sign up for the site will be posted to the D2L site.  You can see the Turings Craft site by visiting: http://www.turingscraft.com.

Prerequisites

In order to take this class you are required to have taken MAT 130: Precalculus or an equivalent high-school or college course covering algebra and precalculus.

Course topics and learning goals

This course is the first of a two-course sequence introducing computer science.  The focus of the course is on problem solving, algorithm development, and structured and object-oriented programming using Python and the Python API (application programming interface), all in the context of building computer applications.

In the first course we will focus on structured programming and learn how and when to use conditionals, loops, and functional and modular abstractions.

After you have taken this class:

  1. You will understand that a main focus of computer science is developing applications for computer systems.
  2. You will have stronger problem solving skills.
  3. You will know how to develop algorithmic solutions for basic computational problems.
  4. You will understand fundamental programming structures such as expressions, assignments, decision and iteration structures, functions and modules.
  5. You will have basic Python programming skills.
  6. You will be prepared for the second course in the sequence, CSC 242: Introduction to Computer Science II

Course calendar

The following gives all the important dates for this course.  The topics covered are subject to change.

Week Date Topic/Deadline
1 September 5, 2012 Introduction to the course and Python
September 10, 2012 Input structures, type operators, and numeric types
September 11, 2012 Last day to add classes
2 September 12, 2012 Decision structures, strings, and lists
September 17, 2012 Iteration structures
September 18, 2012 The last day to drop classes with no penalty
3
September 19, 2012 Functions and strings
September 24, 2012 Modules and objects, formatted output
4 September 26, 2012 File processing
October 1, 2012 Exceptions and error handling
5 October 3, 2012 More about decision structures and loop patterns (iterated loops)
October 8, 2012 Loop patterns (counter and accumulator loops) and review for the midterm
6 October 10, 2012 Midterm exam: 10:10 - 11:40 am
October 15, 2012 Discussion of the midterm and more loop patterns (nested loops)
7 October 17, 2012 More loop patterns (multidimensional lists and while loops)
October 22, 2012 More loop patterns (infinite and interactive loops) and specialized statements (break, continue, pass)
October 23, 2012 Last day to withdraw from classes
8 October 24, 2012 Dictionaries
October 29, 2012 Dictionaries
9 October 31, 2012 Other collection types (tuples and sets) and character encodings
November 5, 2012 More functions, modules, and module namespaces
10 November 7, 2012 More about module namespaces and the random module
November 12, 2012 The random module and review for the final exam
11 November 19, 2012 Final exam: 8:45 - 11:00 am

Textbook

The required textbook for the course is Introduction to Computing using Python: An Application Development Focus, Ljubomir Perković,  John Wiley & Sons, 2012, ISBN 978-0-470-61846-2.

If you would like additional references, check the links in the Content area of the D2L site.

Grading policy

Course assessments include lab attendance, programming assignments, and a midterm and final exam.  The course grade will be computed as follows:

Assessment Percentage
Lab attendance and exercises 5 %
Programming assignments 25 %
Midterm exam 35 %
Final exam 35 %

All students will be required to sign and return an Academic Integrity pledge at the start of the quarter.  The Academic Integrity pledge will be posted on the D2L site.  The pledge must be signed and returned as a part of the first homework assignment.  Students that violate this agreement are violating the Academic Integrity policy of DePaul University.  See the section on Academic Integrity below for more information about that policy and penalties for violating it.

In order to do well in this class, you must attend the lectures and labs regularly, participate in class discussions, read the chapters in the book as indicated in the homework assignment, start work on the assignments early, and ask questions early and often.  The answers to the programming assignment and the lab and exam questions should be written in a way that is rigorous, clear, and concise.

Lab attendance and exercises

Each week you will have a lab session conducted by our teaching assistant Robert Watts.  Your attendance at the lab session and completion of lab exercises is required and will count for the portion of the grade indicated above.  No late lab submissions are accepted for any reason.  Your lowest lab score will be dropped in the calculation of your course grade.

Programming assignments

Each week you will have a programming assignment.  The programming assignment must be completed as an individual assessment, although you can consult with the lab assistant and instructor for the course as well as the CDM tutors.  Each programming assignment will have a posted deadline, specified on the assignment.  No late assignments are accepted for any reason.  Your lowest assignment score will be dropped in the calculation of your course grade.

Midterm and final exams

The midterm and final exams will be cumulative.  The midterm exam will take place on October 10, 2012, 10:10 - 11:40 am.  The final exam will take place on November 19, 2012, 8:45 - 11 am.  Both exams will be conducted in a lab and will require you to write Python code.

Make-up exams will not be given.  If you wish to petition for a make-up exam, you must notify me in advance and provide documented evidence of the emergency that will cause you to miss the exam.  Failure to contact me in advance of the exam date and time will disqualify you from being allowed to take a make-up exam.  If a make-up exam is granted, it will be of a form of my choosing.

Academic integrity

The course adheres to the DePaul University's Academic Integrity Policy.  For complete information about Academic Integrity at DePaul University, please see: http://academicintegrity.depaul.edu/.

Cheating is any action that violates university norms or instructor's guidelines for the preparation and submission of assignments. This includes, but is not limited to, unauthorized access to examination materials prior to the examination itself; use or possession of unauthorized materials during the examination or quiz; having someone take an examination in one's place; copying from another student; unauthorized assistance to another student; or acceptance of such assistance.  Plagiarism involves the presentation of the work of another as one's own. Plagiarism includes, but is not limited to the following: the direct copying of any source, such as written and verbal material, computer files, audio disks, video programs or musical scores, whether published or unpublished, in whole or part, without proper acknowledgment that it is someone else's; copying of any source in whole or part with only minor changes in wording or syntax, even with acknowledgment; submitting as one's own work a report, examination paper, computer file, lab report or other assignment that has been prepared by someone else (including research papers purchased from any other person or agency); the paraphrasing of another's work or ideas without proper acknowledgment; working so closely with another person so as to produce identical code.

The use of others' web/publication content (text, graphics, code) is regarded as plagiarism if credit is not given (see the above description of plagiarism).  When you directly quote someone's work, you must put it in quotation marks. Without such quotations and reference, it is regarded as an act of plagiarism (see the above description of plagiarism).  Using materials that the student prepared for other purposes (e.g., for another course or for his/her work) needs the course instructor's prior permission.

A charge of cheating and/or plagiarism is always a serious matter.  It can result in an automatic F in the course and possible expulsion.

Incomplete

An incomplete grade is given only for an exceptional reason such as a death in the family, a serious illness, etc. Any such reason must be documented. Any incomplete request must be made at least two weeks before the final, and approved by the Dean of the College of Computing and Digital Media. Any consequences resulting from a poor grade for the course will not be considered as valid reasons for such a request.