Syllabus

CSC 242-602

   

Introduction to Computer Science II

Spring 2024

Class sessions: Monday/Wednesday, 1:30 - 3 pm, CDM 819

Labs: Tuesday, 1:30 - 3 pm, CDM 819

 

Professor: Amber Settle

Lab instructor: Abdul Moid Mohammed

Contact information

243 S. Wabash Avenue, room 748
Chicago, Illinois 60604
Phone: (312) 362-5324
asettle@cdm.depaul.edu
http://facweb.cdm.depaul.edu/asettle/

Office hours

Monday/Wednesday   12:30 - 1 pm
Monday/Wednesday   4:45 - 5:45 pm

My office hours are held in room 748 of the CDM building. I am available during office hours in person, by phone, using Zoomor 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 or phone calls. 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. If you wish to meet with me using Zoom, please request an appointment in advance so that I can set up the meeting.

Please make use of my office hours.  Asking questions about the assessments, course notes and examples, 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 technologies

This course uses several platforms to enable our interactions:

Prerequisites

You must have taken CSC 241: Introduction to Computer Science II or an equivalent course that introduces problem-solving techniques and programming in Python and earned a passing grade (C- or better). I will also assume that:

Course topics and learning goals

This course is the second of a two-course sequence introducing computer science skills, including problem solving, algorithm development, recursion, and programming using Python. The concept of a class and object-oriented programming will be motivated and introduced. We will then apply these skills in the area of Internet and distributed computing.

After you have taken this class:

Course calendar

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

Week Date Topic/Deadline
1 Monday, April 1, 2024 Using operators and constructors with built-in classes, the basics of assert statements, and an introduction to classes
Tuesday, April 2, 2024 No lab
Wednesday, April 3, 2024 Object-oriented programming (instance variables and basic methods: setters, accessors, constructors, str, repr)
Sunday, April 7, 2024 Last day to add classes
2 Monday, April 8, 2024 Object-oriented programming (class variables, composition, an introduction to inheritance)
Tuesday, April 9, 2024 Lab 1
Wednesday, April 10, 2024 Object-oriented programming (inheritance)
Sunday, April 14, 2024 Last day to withdraw with no penalty
3
Monday, April 15, 2024 Object-oriented programming (inheritance, composition again)
Tuesday, April 16, 2024 Lab 2
Wednesday, April 17, 2024 Object-oriented programming (inheritance, method pre- and post-conditions, method validation)
4 Monday, April 22, 2024 Object-oriented programming (method validation, class invariants)
Tuesday, April 23, 2024 Lab 3
Wednesday, April 24, 2024 Object-oriented programming (defining container classes, iterators)
5 Monday, April 29, 2024 Object-oriented programming (iterators, good and bad uses of inheritance, more about validation, drawbacks of assert, defining exception classes)
Tuesday, April 30, 2024 Lab 4
Wednesday, May 1, 2024 Recursion
6 Monday, May 6, 2024 Midterm exam: 1:30 - 3 pm
Tuesday, May 7, 2024 Lab 5
Wednesday, May 8, 2024 Recursion
7 Monday, May 13, 2024 Recursion
Tuesday, May 14, 2024 Lab 6
Wednesday, May 15, 2024 Recursion
Sunday, May 19, 2024 Last day to withdraw from classes
8 Monday, May 20, 2024 Recursion
Tuesday, May 21, 2024 Lab 7
Wednesday, May 22, 2024 The basics of HTML and web search fundamentals
9 Monday, May 27, 2024 No class -- Memorial Day
Tuesday, May 28, 2024 Lab 8
Wednesday, May 29, 2024 Web search fundamentals
10 Monday, June 3, 2024 Web search fundamentals
Tuesday, June 4, 2024 Lab 9
Wednesday, June 5, 2024 Web search fundamentals
Course evaluations
11 Wednesday, June 12, 2024 Final exam: 11:30 am - 1:45 pm

Textbook

The required textbook for the course is Introduction to Computing using Python: An Application Development Focus, Second Edition, Ljubomir Perković, John Wiley & Sons, 2015. Make sure you have the electronic version of the text since it contains case studies that we will be using. The electronic text has ISBN 978-1-118-89105-6. You can buy the ebook directly from the publisher if you like: https://www.wiley.com/en-us/Introduction+to+Computing+Using+Python%3A+An+Application+Development+Focus%2C+2nd+Edition-p-9781119159612

Grading policy

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

Assessment Percentage
Lab exercises 10 %
Programming assignments 20 %
Midterm exam 35 %
Final exam 35 %

All students will be required to sign and submit 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 submitted as a part of the first homework assignment. Students who 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 participate in the class sessions regularly, complete all of the labs on time, complete class activities, read the chapters in the book as indicated in the homework assignment, start work on the assignments early, submit the assignments on time, and ask questions early and often.  The answers to the programming assignments, the lab exercises, and the exam questions should be written in a way that is rigorous, clear, and concise.

Lab exercises

Every Thursday you will have lab exercises available at 1:30 pm and due at 11 pm. You are highly encouraged to attend the scheduled lab session which takes place 1:30 - 3 pm in room 819 of the CDM building. Students attending the lab in person will have priority for answers and help from the teaching assistant. If for whatever reason you cannot attend the lab sessions, you will need to log into a Zoom help session conducted by the TA. You can find the link for the Zoom lab sessions in the course calendar on D2L. Students should attend the lab either virtually or in-person.

Labs submitted by the deadline will be graded for full credit. Labs submitted no later than 12 hours after the deadline automatically will lose 15% of the points. No lab submissions are accepted more than 12 hours after the deadline for any reason, including upload of the wrong file

For students who attend at least 7 out of the 9 lab sessions, either in person or virtually through Zoom, the two lowest lab scores will be dropped in the calculation of your course grade. Attending means arriving on time at 1:30 pm, staying for at least 30 minutes, and actively working on the lab exercises during the session. Students who are late, do not work on lab activities, or leave after less than 30 minutes will not be counted as attending. For students who attend 6 or fewer of the 9 lab sessions, only the lowest lab score will be dropped in the calculation of your course grade.

Programming assignments

Each week you will have a programming assignment. You can consult with your homework partners, the teaching assistant, the instructor, and the CDM tutors on the programming assignments, but you may not under any circumstances submit code that you have not helped to write nor may you consult anyone beyond those specified when completing your assignments. Each programming assignment will have a posted deadline, specified on the assignment. 

Assignments submitted by the deadline will be graded for full credit. Assignments submitted no later than 12 hours after the deadline automatically will lose 15% of the points. No assignments are accepted more than 12 hours after the deadline for any reason, including submission of the wrong file

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 May 6, 2024, and the final exam will take place on June 12, 2024. The exams will take place in a lab. Both exams will require you to write Python code. The details about how the exams will be given will be shared later in the quarter on the midterm and final exam study guides which will be posted to D2L. No late exam submissions will be accepted for any reason.

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.

Online course evaluations

Evaluations are a way for students to provide valuable feedback regarding their instructor and the course. Detailed feedback will enable the instructor to continuously tailor teaching methods and course content to meet the learning goals of the course and the academic needs of the students. They are a requirement of the course and are key to continue to provide you with the highest quality of teaching. The evaluations are anonymous; the instructor and administration do not track who entered what responses. A program is used to check if the student completed the evaluations, but the evaluation is completely separate from the student's identity. Since 100% participation is our goal, students are sent periodic reminders over three weeks. Students do not receive reminders once they complete the evaluation.

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 or programs written using the assistance of an AI tool); the paraphrasing of another's work or ideas without proper acknowledgment; working so closely with another person other than those authorized so as to produce identical code.

All students are expected to abide by the University's Academic Integrity Policy which prohibits cheating and other misconduct in student coursework. 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). 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. Publicly sharing or posting online any prior or current materials from this course (including exam questions or answers), is considered to be providing unauthorized assistance prohibited by the policy.  Both students who share/post and students who access or use such materials are considered to be cheating under the Policy and will be subject to sanctions for violations of Academic Integrity.

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.

Mental health and academic assistance

Balancing the hard work of achieving your educational goals with the other demands of life is difficult at the best of times. For many of us, for a variety of reasons, things are more difficult now. I want to make sure you feel comfortable reaching out to me for support. The university also has great resources just a phone call or email away. These have been created and maintained for you, so use them:

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.