CS15900 Spring2023 ILETBX
CS15900 Spring2023 ILETBX
1
Supplemental Instruction
There are Supplemental Instruction (SI) student sessions available for this course. These student groups are open to
anyone enrolled in this course who would like to stay current with the course material and understand it better.
Participation in these sessions is voluntary, but for the maximum benefit you should participate regularly. The schedule
for the study sessions can be found on-line: http://www.purdue.edu/si.
Students who attend these interactive sessions will find themselves working with peers as they compare notes,
demonstrate and discuss relevant problems and important concepts, and share study and test-taking strategies.
• Students are asked to have their lecture notes, textbook, and be prepared to participate with others during these
sessions.
• SI leaders are undergraduate students who have previously been very successful in the course and model their
strategies for success to current students.
• Every session will cover new material! No two sessions will repeat the same content.
Important Dates
• The final exam may be on Saturday May 6, 2023. Requests for alternative exam offerings will not be considered
for reasons other than those outlined by the regulations of the university. Please make your end of semester
travel arrangements accordingly.
Grading Grades
Assignment Points Grade Points Required
Homework 70 A 510
Lab Tasks 60 B 450
Lab Quizzes 65 C 390
Midterm Exams 200 D 330
Final Exam 150 The instructor reserves the right to lower the minimum score
Lecture Quizzes 55 required for each letter grade. If any change is made it will
Total Possible: 600 not be announced until after the final exam.
• At no time during the semester will it be speculated if this will be done or how much any given cutoff will be
lowered. You should have no expectation that all cutoffs if moved will be moved by an equal amount.
• The use of plus (+) and minus (-) additions to a grade will be considered for those few individuals who are very
close to, but fall short of, one of the posted minimum scores.
Attendance
You are expected to attend every lab this semester. To be eligible to retain points earned on a lab programming
assignment and related lab quiz you must be in your assigned lab within 5 minutes of the start of your lab session. Your
lab instructor will provide the steps necessary to verify your attendance. Labs are collaborative programming assignments
and it is an unfair expectation that your lab partners or teaching assistant incorporate a student arriving late or who is
absent into the team effort. Students late or absent to more than two lab sessions will automatically fail the course.
You are expected to attend every lecture this semester. Seats will be assigned in the lecture hall and attendance taken
to ensure that only those students officially enrolled and physically present in each section are eligible to earn points for
lecture quiz participation.
2
Emergency Absences and Make-Up Work
Only documented and serious hardships will be considered for any missed work. If you have documentation of what
you consider to be such a hardship then you must contact the instructor in a timely manner during office hours when you
are able to resume participating in class. Any student who knows in advance of an absence must make a request for
consideration one week prior to the absence.
• University policies on absence and absence reporting are available from the Office of the Dean of Students:
https://www.purdue.edu/advocacy/students/absences.html
• Make-up requests for reasons of illness MUST be accompanied by documentation from a medical
professional stating the dates you were under their care and the date you were cleared to return to school/work.
Assignments
Exams (two evening midterms 100 points each, one final exam worth 150 points)
Exams will be individual assessments of your knowledge. Exams will consist of multiple-choice problems covering
programming concepts, best programming practices, lab and homework assignments, and the interpretation of code.
Old exams are provided in the course notes packet for your preparation. Please read the cover page of this section for
more information on how old exams can be a useful part of your comprehensive preparation process.
Homework
Due at 11pm on
Assignment
Homework Assignments (7 total, 10 points each)
1 January 23
The homework assignments are individual efforts designed to give you the
opportunity to solve programming problems on your own without the assistance 2 February 6
of other students. 3 February 20
All assignments will be posted on Brightspace 10-12 days before they are due. 4 March 6
Please review the course policies as they relate to academic integrity found later 5 March 27
in this document.
6 April 10
7 April 23
Lab Tasks (12 total, 5 points each):
Lab assignments are to be completed collaboratively in your assigned lab groups and each of these lab programming
assignments will be due 30 minutes prior to the next time your lab section meets (see schedules later in this document).
• Collaborative groups are expected to communicate who will submit the assignment, when the assignment will be
submitted, and how progress will be confirmed with all participating group members.
• Setting expectations for every member of the group will improve the likelihood that a complete assignment will
be submitted.
• Lab partners failing to participate and contribute to the satisfaction of all group members will not receive credit
for the lab assignment.
• Lab teams will be reassigned after lab #4 and lab #8 during the semester. Enrollment and participation changes
may warrant additional changes.
Lab Quizzes (13 total, 5 points each)
At the end of each lab meeting there will be an individual assessment of your knowledge related to the topics introduced
in lecture and implemented in the most recent lectures and assignments. Knowledge of course standards and good
programming practices will be evaluated throughout the semester.
• The best way to prepare for quizzes is to watch lecture recordings and to actively participate with your team
during the process of solving the lab, including contributing to both the written problems and the development of
the programming problem solution.
• Lab quizzes can only be completed from your official lab location. No resources are permitted for use during the
quiz.
3
Weekly Lab Schedule
Week of Lab Assignment Week of Lab Assignment
January 9 Lab #0 March 6 Lab #8
January 16 Lab #1 March 13 SPRING BREAK
January 23 Lab #2 March 20 Lab #9
January 30 Lab #3 March 27 Lab #10
February 6 Lab #4 April 3 Lab #11
February 13 Lab #5 April 10 Lab #12
February 20 Lab #6 April 17 Lab Quiz #13
February 27 Lab #7 April 24 OPEN*
* Lab will not meet this week unless warranted by an interruption to the schedule by extenuating circumstances.
Lecture Schedule
Week of Tuesday Thursday Week of Tuesday Thursday
January 9 Introduction Chapter 2 March 6 Chapter 6
January 16 Chapter 2 March 13 SPRING BREAK
January 23 Chapter 3 March 20 Chapter 8
January 30 Chapter 4 March 27 Chapter 8
February 6 Chapter 4 April 3 Chapters 9 & 10
February 13 Chapter 5 April 10 Chapter 8
February 20 Chapter 5 April 17 Chapter 11
February 27 Chapter 6 April 24 NO LECTURE*
*NO LECTURE – April 25 and April 27 are canceled to compensate for evening midterm examinations.
4
Grading Expectations and Policies
Our expectation of your lab instructor is that they grade your assignment in a timely manner and provides you with
adequate feedback for improvement. If you feel this is not the case please address your concern to your instructor.
Typically, your grader should complete grading programming assignments 4-6 days after it is due.
To request a re-grade on any assignment you must make your request in writing the office hours of the instructor. You
have five days to appeal any grade from the day the score of the assignment is posted to Brightspace. After that period the
grades are frozen and no appeal will be considered. A re-grade is not a second chance to complete an assignment, neither
is it a means to challenge assignment requirements, course policies, or programming and documentation standards.
An assignment that is not submitted as expected cannot be considered for a grade. Only work submitted correctly prior to
the assignment deadline can be considered for grading. Late work is not accepted.
Demand for resources and course staff will increase as an assignment deadline nears. Waiting until the last minute to work
on your programming assignments is discouraged! Course policy is NOT to extend deadlines unless official course
resources are unavailable for an extended period near the deadline for an assignment.
You are responsible for understanding how to use the technology and tools utilized within the course.
Establish a goal to submit every programming assignment early, this practice will allow sufficient time to seek
assistance should you experience any difficulties solving or submitting an assignment.
Academic Integrity
The issue of academic integrity is taken seriously within CS 159. The consequences for violating course policies are
signifiant both within the course and by the disciplinary arm of the Office of the Dean of Students.
You are encouraged to discuss any CS 159 topic including high-level ideas about how to approach a programming
assignment. However, under no circumstances will exchange of, or shared access to, code via written or electronic
means be permitted between teams for collaborative assignments or individuals for individual assignments.
It is considered dishonest either to read another solution or to provide anyone with access to your work (or that of
another student). Be mindful when working through code with others on individual assignments as this is discouraged.
The work you submit must be your own original effort and not the result of unacceptable, even if unintentional,
collaboration.
Why enforce academic integrity? Academic integrity violations amount to theft. Theft of the work of the individual
who developed the solution, theft of that individual's time, and theft of the instructor's time to conduct an inquiry into
such matters. It amounts to theft from every student who has come to Purdue University, made a significant financial
investment in their education, and has the expectation that their degree will be valued by employers and other academic
institutions upon completion.
5
When is it no longer acceptable to discuss an assignment with another student or someone not from my group?
• Discussions with peers are most appropriate during the early phases of solution development. Once you begin to
design and implement (write code) your solution you should be referencing course staff members exclusively for
assistance.
• Working closely with another student on a homework assignment may result in highly similar work due to
collaboration. Collaboration may not have been the intended approach to solving the problem but the end result of
working closely with others for extended periods of time.
Every student is responsible for protecting their own work. Do not make the assumption that roommates, neighbors,
significant others, or other “trusted” individuals would not take advantage of knowing your password, having access to
your computer, or taking a picture of your work when left on an unattended machine. You are responsible for such
events that leave your work unprotected.
Many free on-line compilers, collaborative editors, and file depositories will store your work and may leave it publicly
visible unless you pay for upgraded services. Please understand the policies of any such service before you make use of
them. See the note above regarding your responsibility to protect your work.
Do not make the mistake of thinking that superficial changes in a program (such as altering comments, changing
variable names, interchanging statements, or additional white spaces) will avoid detection. If you are unable to complete
the work yourself, it is unlikely that you will succeed in disguising the work of another as your own. We are adamant that
violations in any form will not be tolerated. Even the most trivial assignment is better left without submission than if
you violate course integrity policies to complete it.
As easy as it is to share an electronic copy of a file, to gain access to a file through account sharing, sharing a hard copy
of your work, or seeking assistance from strangers on the Internet, it is as just as easy to analyze and detect such sharing
as it results in similar efforts being submitted.
Internet forums, including premium services that advertise assistance in college courses, are monitored by course staff
members. Any relevant code found is included with student submissions to test for similarity. Searching for and using
solutions to assignments, requesting assistance on assignments, and the posting of assignments in a venue such as these
is a violation of course academic integrity policies and potentially violations of University copyright.
Assume that every final submission you make during the semester will be analyzed by at least one software similarity
service. These services will measure the percentage of similarity between your solution and those submitted by others in
the course. Additionally, these services indicate the number of lines matched among submissions. You will be solving
problems this semester that have no unique solution and your solution is expected to be uniquely yours. Concerns
regarding any of our policies should be addressed during office hours prior to the deadline of an assignment.
Minimum consequences for violating course policies will include:
• First offense, a zero for the assignment, a reduction of one letter grade at the end of the semester, AND a
referral to the Office of the Dean of Students for disciplinary action.
• Second offense, a zero for the assignment, a failing grade for the course, AND a referral to the Office of the
Dean of Students for disciplinary action.
6
Collaborative Learning/Teaming/Participating as a Member of a Technical Team
Here are our expectations of you and your group:
1. Make time to meet with your group regularly. There are 168 hours in a week, finding some common time for a
group to meet should not be difficult. It is acceptable for part of the group to meet some of the time if everyone
cannot participate in every meeting. Ultimately, each individual is responsible for planning and documenting their
contribution to the group effort accordingly.
◦ Reflect on the roles and responsibilities you had on each lab programming assignment. Recognize when you
are not being utilized in a way that contributes to a better understanding of course content.
2. Allow everyone an opportunity to express their ideas on how to approach an assignment. One benefit of
collaborative teaming is that everyone brings a different set of skills to the group and the resulting effort often is a
stronger one than if it was completed individually.
◦ When a group member becomes unresponsive to requests to meet or fails to update the other members of the
group then those contributing members must prepare to continue without the unresponsive member.
3. All group members must be satisfied with the final submission. It is not acceptable for a group to submit an
assignment that is not approved by all group members. "It is good enough" may be true for you but it is unfair for
the others in the group who aspire for the highest grade possible.
◦ Likewise, each group member must be satisfied with your contribution to the group effort.
4. Each group member must fully understand the entire assignment submitted. Do not start your group
meetings by trying to delegate the tasks to the different group members. Everyone must understand and contribute
to every aspect of the assignment and its development.
◦ Assignments are an opportunity for you to demonstrate your knowledge of the programming concepts being
utilized. Use assignments to serve as a measure of what you don't know and how to direct your future efforts
in the course.
5. Designate who will turn in the assignment, when it will be turned in, and how successful submission will be
communicated with the rest of the group. Set a goal to submit the assignment well in advance of the due date to
avoid any last minute problems.
6. You will work with the group assigned. Please contact us with concerns you may have with your group. Take a
professional approach with your group experience as similar to what you may experience at an internship or co-op
experience.
◦ Groups will be re-assigned after every four labs.
◦ Future group assignments may take into consideration lecture attendance and assignment completion as an
indicator of your interest in participating in the course. Active students in the course should not be burdened
with partners who are not willing to stay current with course content.
Nondiscrimination Statement
Purdue University is committed to maintaining a community which recognizes and values the inherent worth and dignity
of every person; fosters tolerance, sensitivity, understanding, and mutual respect among its members; and encourages each
individual to strive to reach his or her own potential. In pursuit of its goal of academic excellence, the University seeks to
develop and nurture diversity. The University believes that diversity among its many members strengthens the institution,
stimulates creativity, promotes the exchange of ideas, and enriches campus life.
Students with Disabilities
Purdue University strives to make learning experiences as accessible as possible. If you anticipate or experience physical
or academic barriers based on disability, you are welcome to inform your instructor to discuss options. You are also
encouraged to contact the Disability Resource Center at: [email protected] or by phone: 765-494-1247.
Students with an existing letter of accommodation are to refer that letter to their instructor and follow up with an e-mail to
initiate a conversation regarding how your accommodations may be implemented in the course.
7
Emergency Preparation
In the event of a major campus emergency, course requirements, deadlines, and grading percentages are subject to
changes that may be necessitated by a revised semester calendar or other circumstances.
• In case of a campus emergency, check Brightspace for announcements. Follow all official university issued
instructions. See https://www.purdue.edu/ehps/emergency_preparedness/ for more information.
Disclaimer
• The instructors reserve the right to revise the syllabus and will provide notice through a variety of sources such as
lecture recordings, Brightspace announcements, and e-mail.