We have tried to lay out very clear policies regarding things
like grading, late homeworks etc. Click on the tabs to get more
information about each particular policy.
Grade Breakdown
Component | Percent |
Homeworks | 50% |
Midterm | 15% |
Final | 25% |
Recitation | 5% |
Lecture/Polls | 5% |
The Professors reserve the right to adjust
grading policies. Final grade determinations are
made by the Professors.
Homework Grades: We use points on homework as a
mechanism to provide feedback. You should be learning
from doing the assignments and also from the
feedback on them, which means homework grades may well
be lower than you are used to. Don't worry!
In past semesters 30%-40% of CIS 110 students have
received an A- or better in the course, and we expect this
semester to be similar. We will post the median and
standard deviation for each homework after they are
graded, and we will factor homework grades into your
course grades in a way that ensures consistency with past
semesters.
Dropping the lowest homework: As long as you
submit all assignments and receive a raw score of at least
30% on each of them, your lowest homework score will be
dropped. If any homework scores below 30% or you do not
submit one or more homeworks, all scores will count. This
policy is complicated, but nearly always results
in higher homework averages than simply dropping
the lowest score that is at least 30%.
Exam Grades: Exam grades are always curved. Your
curved grade will show up alongside your raw score in the
course dashboard. CIS 110 exams are usually challenging,
and curved scores are almost always higher than raw
scores.
Recitation Score:
- Half of your recitation score (2.5%) is based on
your attendance as recorded by your TAs. We
allow for two unexcused absences. Any excused
absences (e.g. illness) must be reported to your TAs
at the time; your TA will mark you present for those
days.
- The other half (2.5%) is for participation.
You received full credit as long as your TAs recorded
that you participate in at least four
recitations.
Lecture/Polls: Your score is calculated based
on your participation during in-class polls. We will start
recording poll participation after the course
selection deadline, and we make a reasonable allowance
for missed lectures. This
allowance covers all missed polls, no matter what the
reason. We cannot mark you present for a poll if
your input is not recorded.
Making up work: Grades are based on your performance on
work completed during the semester in accordance with course
policies. It is not possible to make up work in order to
improve your grade or compensate for violations of course
policy.
Incompletes, with permission to complete coursework after
the semester ends, will be granted only in verifiable cases
of serious, extended illness or similar extraordinary
circumstances.
Grounds for failure:
A serious lack of effort may be grounds for failure in the
course. If you find yourself in any of the situations below,
you should meet with an instructor promptly to discuss
your situation:
- Numerous missed assignments or substantially blank
assignments.
- Missed midterm or final exam. Be prepared to provide
documentation of a serious emergency to justify any
unexcused exam absence.
- Academic dishonesty (see the collaboration tab). If
you believe you may have violated the collaboration
policy, you are encouraged to explain what happened to
the instructor. Even if your actions constitute a
serious violation, the sanctions are likely to be
considerably less if you turn yourself in.
Conversion to letter grades: All graded work is
converted to a percentage grade between 0% and 100%. Exams
are converted based on a curve. Homeworks are converted by
dividing your score by 50 (the maximum number of points per
assignment). Here is how the percentage grades will map to
final letter grades:
Percentage
|
Letter grade
|
97% <=
|
A+ (4.0)
|
93% <= |
A (4.0) |
90% <= |
A- (3.7) |
87% <= |
B+ (3.3) |
83% <= |
B (3.0) |
80% <= |
B- (2.7) |
|
Percentage |
Letter grade |
77% <= |
C+ (2.3) |
73% <= |
C (2.0) |
70% <= |
C- (1.7) |
67% <= |
D+ (1.3) |
63% <= |
D (1.0) |
< 63% |
F (0.0) |
|
Note that there is no D- grade at Penn.
Lecture attendance: Lecture attendance is required and
is part of your grade. Frequently missing lecture, arriving
late, leaving early, or failing to participate in
polls may affect your course grade.
Attending the "other" lecture section: If you must miss
your own lecture section but can attend the other lecture, you
may do so occasionally. However one lecture is completely
full, and the other nearly so, so you cannot make a habit of this. Your poll
participation will still be counted and you should
not inform us before attending the other lecture.
Missing lecture: If you occasionally miss lecture due
to illness, family emergency, religious holidays, or other
reasons, you should fill out a Course Absence Report, but you
do not need to contact us. We make reasonable
allowance for absences when we compute
your attendance score, but we do not track the reasons for
individual absences. We also encourage you watch the lecture
recordings and come to instructor office hours to catch up on
any material you missed.
Extended Absence: If you will miss a week or more of class for any
reason, you should contact the instructors to arrange a plan
to make up work. If this is a foreseeable circumstances
(such as attending a conference), you should contact us as
early as possible, and certainly well before you leave. In
emergency situations such as illness, you should contact us
as soon as is practical. You should also contact your
academic advisor who can help you coordinate with all
your professors and other resources on campus.
Recitation attendance: Recitation attendance is
required and is part of your grade. If you cannot make your
own recitation for any reason, you must contact your
TAs. They do not receive copies of your Course Absence
Reports. When possible, you should arrange with your TAs to
attend a different recitation that week. It is appropriate to
arrange to attend a different recitation once during
the semester due to a scheduling conflict (such as a job
interview), and also because of illness. It is not
acceptable to simply show up to a different recitation or
to attend a different recitation on a regular basis.
Lecture recordings: Slides and associated textbook
readings are normally posted on the syllabus page before
class. The lecture recordings are posted automatically about
an hour after lecture. The list of recordings is linked from
the Syllabus page. Note that the recordings do not replace
your attendance in class! You will not be able to ask the
recording questions, see anything written on the chalkboard,
hear other students' questions (only the instructor's
microphone is captured), or see demos or the contents of the
second projector screen. Also, the recording system is
unreliable and frequently fails.
CIS 110 uses web-based polling in lecture. Your
participation in these polls will count as part of your grade.
In most or all cases, polls will be used to start
discussions rather than end them. That means we want you to
think about the question, but we normally won't grade you on
correctness. In fact, for most quizzes, we won't even look
up what you answered.
Registering for polls: For running in-class polls, we use Poll Everywhere. In order for us
to track your poll participation, you will need to
sign up for a Poll Everywhere account. You must sign up using your Penn email
in order for us to properly track your attendance.
Participating in a poll for a friend:
Answering polls for another student
so they appear to be present, or having
another student poll for you when you are
absent, is a serious violation of course policy. All
students involved will normally be referred to the Office of
Student Conduct and will have implications for all students'
grades.
Participating in a poll remotely:
You cannot participate in polls remotely. Any poll submissions
from outside of the classroom will not count towards attendance.
It is imperative to understand that computer programming
is not a spectator sport. To get good at it, you need to
practice, and the primary vehicle for that is the
homeworks.
Due dates: Homework assignments are due at
11:59pm Eastern Time unless otherwise posted. Most, but
not all, assignments will be due on Thursdays. All
deadlines are automatically enforced. The submission
link disappears when you can no longer receive credit.
Where to submit: All homework must be submitted
electronically through the course dashboard. There is a link
at the top of the page.
How often to submit: You can submit each assignment as
often as you like. We will grade the last version of each
file that you submit. Once you have submitted a file, you do
not need to resubmit it unless it has changed.
What to do if the submission system isn't working: If
you have trouble with the submission system, e-mail your
code to your TAs before the deadline. We will
normally give you an extension to resubmit
online once. Submit your next assignment early and
seek help if you still have problems. (You can always
resubmit later on.) We will not normally give you a second
such extension unless you have sought help resolving the
problem well ahead of the deadline.
Always back up your work. One or two students CIS 110
lose their work to a crashed computer each week. It is not
grounds for an extension. Seriously. Always back
up your work. Fortunately, there are multiple easy ways
to back up your work:
- Always save your work to a USB drive as well as your hard drive.
- Always save your work to your SEAS home directory
(non-SEAS students: you will request a SEAS account as part
of Homework 0). Your work will be automatically backed up
and accessible from the Moore 100 labs as well as your own
computer. You can find instructions for accessing this
space
from Windows computers
or Mac computers.
- Save your work to a cloud service
like Penn+Box or Dropbox. Make sure your
files are private and not shared with anyone else, so you do
not inadvertently violate the collaboration policy.
- Submit early and often! If you computer crashes, we will
be able to send you the most recent version of every file
you submitted. You can submit as often as you like.
Late Submissions:
- Deadlines are automatically enforced. Forty-eight
(48) hours after the deadline, the submission link will
disappear. (E.g., if an assignment is due on Thursday at
11:59pm, the submission link will disappear Saturday at
11:59pm). If you have fewer than two late days
remaining, the link will disappear sooner.
- If the deadline is approaching, submit! Remember,
it is much better to submit an incomplete assignment than
nothing. You can always resubmit later if you make further
progress before the deadline.
- You have four late days to use as you wish
throughout the semester. Each late day allows you to submit
an assignment up to 24 hours late. Late days are designed to
help you through an especially busy week, a cold, and other
issues that commonly crop up at some point in the
semester. Use them wisely.
- You may use at most two late days on any given
assignment. After two days, you will receive no
credit.
- Late days are deducted automatically for late
submissions. You do not need to ask permission or give
any reason for using them.
Extensions:
- Extensions will be granted only in
exceptional, verifiable circumstances (e.g.,
extended, serious illness). It is your responsibility to
provide documentation. Extracurricular obligations, heavy
workloads in other courses, and mild illnesses like the
common cold are covered by the late day policy.
- You may not use late days together with an
extension. This rule is enforced by the submission
system.
- Extensions are valid only if entered into the
system and are visible when you view your grades or submit
online. If your extension does not show up with 24
hours, contact the instructor or TA who granted it to
make sure it gets entered.
Extra Credit:
- Opportunities for (optional) extra credit may be offered
on some assignments. The amount of work and difficulty may
vary widely: some extra credit will be easy to obtain, while
other extra credit may be more challenging.
- The overall effect of extra credit on your final grade is
limited. Extra credit will only be able to increase your
final grade percentage by a maximum of 1%.
- Extra credit points are not counted the same as regular
homework points, and will have a smaller effect on your
grade. We encourage you to do extra credit the extra credit
when it you find it fun and rewarding, but never at the
expense of the main assignment. If you choose to estimate
your own grade based on these guidelines, ignore your extra
credit and you may get a nice surprise on your final
grade.
Homework Regrade Requests:
- You may request a re-grade for homeworks up to one week
after they are returned. Regrades must be requested in writing
(email will not be accepted) to your TAs during recitation time
the week after your grades are distributed.
- Your request must include a concise explanation
of why your grade should be different.
- Note that a re-grade can result in a lower score on the
problem in question. We also reserve the right to re-grade
the entire submission. As a result, your final grade
may be lower or higher than your original grade.
- Keep in mind, that exam regrade requests are governed by
slightly differently policies, which are posted on the exams
page.
CIS 110 is a challenging course that requires a substantial
amount of time for most students. Many of you are learning a
new kind of abstraction (algorithmic thinking), a new
way to express procedures (programming), and a new
level of discipline in thought (precision and
rigour). Working through the assignments, encountering
errors and bugs, and finding the solutions yourself are
absolutely essential to learning these skills. To this end,
CIS 110 institutes and enforces a strict collaboration policy
to ensure that all students are learning effectively.
Suspected violations of this policy are systematically
referred to the Office of Student Conduct, and
generally incur both a disciplinary sanction and a
grade deduction.
On the homework assignments, we use automated
"cheat-checking" software to help detect plagiarism and
inappropriate collaboration. This software is very,
very effective. According to the Annual Report of
the Penn Office of Student Conduct, there were 127 referrals
for undergraduate academic misconduct in 2013–2014.
55 of these cases, or nearly 45%, were
referred from CIS 110. By taking the collaboration
policy as seriously as the course staff does, you will not
only help reduce this number, but you will also help
yourself and your fellow students learn more effectively.
Collaboration Policy
- You may not look at, access, or acquire a copy of
anyone else's work. There are certain exceptions
described in the "Appropriate Collaboration" section
below.
- You may not show your work to anyone except current
CIS 110 Professors and course staff. You may not post any
portion of your assignment online. This applies even
after the course ends. There are certain exceptions
described in the "Appropriate Collaboration" section.
- You may not consult or ask questions in websites or online fora
except the CIS 110 Piazza board.
- You must properly and promptly acknowledge all
non-trivial help you receive, all collaboration involving
you, and all resources you use in
your help
log.
- Don't be clever about this policy. Instead, if your
unsure whether something is appropriate, come by instructor
office hours and ask.
Collaboration Policy (Annotated)
This annotated version of the policy includes many examples
and elaborations to help you understand how to interpret the
rules. It covers many situations that have come up in past
semesters, but it is not exhaustive.
- You may not look at, access, or acquire a copy of
anyone else's work. There are certain exceptions as
provided in the "Appropriate Collaboration" section.
- You should think closely about the assignment, and your work
should be completely the product of your own understanding.
- You may not look at another student's code "for reference," then
putting it aside and writing your program, even if the other
student is not currently or never was in CIS 110.
- You may not look at code posted to online forums by people asking
questions or providing (more on this below).
- You may not look at another person's solution to the
problem in the assignment, even if it is not based on the
actual assignment or is in a different programming language
(e.g. you may not look at a C++ or OCaml implementation of an assignment
to help you with your own Java version for CIS 110).
- You may not let someone else (even someone who has never
taken CIS 110) explain a solution to you in so much detail
that they are effectively dictating the code to you line by
line, whether or not that person is looking at his or her
code while doing so. If the similarity of your code to
the person's who helped you is much higher than the similarity
between random pairs of submissions, we must treat the case as
on of inappropriate access to someone else's work.
- You may not show your work to anyone except current CIS
110 Professors and course staff. You may not post any
portion of your assignment online. This applies even after the course ends.
There are certain exceptions as provided in the "Appropriate
Collaboration" section.
- You may not allow anyone to look at your work, either on your
computer screen or on printouts.
- You may not publicly post your work online anywhere.
- You may not store your work in any public location (a
private, password-protected Dropbox account is fine, a shared
Dropbox folder or public GitHub repository is not).
- You may not explain how you solved a problem in so much
detail that you are effectively dictating the
code, whether or not you are looking at your own code at
the time
- You may not allow anyone else to access your files.
It is your responsibility to properly
password-protect your own computer when it is unattended.
If you are working on any other computer, delete your files
computer when you are
done, then empty the Trash / Recycle Bin.
- You may not consult or ask questions in websites or online fora
except the CIS 110 Piazza board.
- The CIS 110 Piazza board is a safe space for you
to discuss the assignment with the course staff.
- You may not search for solutions to a programming issue
(e.g. an implementation solution, a bug, or an error message) online.
- You may not post questions on websites such as
Stack Overflow or Yahoo Answers. Answers you receive will likely be
snarky, irrelevant to the assignment, or detrimental to the
learning goals of the assignment.
- You must properly and promptly acknowledge all
non-trivial help you receive, all collaboration involving
you, and all resources you use in
your help
log.
- The principles behind the help log are to track your own progress to
maximize your learning, acknowledge your sources, and
maintain a verifiable record of your progress.
- A proper acknowledgment includes the date and time of the
help, the full names of everyone involved
(including course staff), the complete titles and authors of resources
you consulted or URL(s) of websites you referred to,
the question or topic you discussed, and the
resolution (what you should try next, how you solved the
problem, any learning outcomes from the discussion, etc.).
- Any help you receive help from course staff outside office hours,
e.g. questions answered by your recitation TAs after recitation
or by email, must be logged by you manually.
- Any time you receive help from course staff within office hours,
and the help you received was
logged in the online office hour system, you must update the
question and resolution of your queue entry
once you have been helped to reflect
your discussion with the course staff.
- Any time you participate in the question and answer of
someone next to you in office hours, or get help from another
student in office hours, you must log it. Being in
office hours does not give you permission to work together in
impermissible ways or to skip logging collaboration or
help.
- When you work with someone else in CIS 110, both you and
the other person must log each other in the help log. It is
all right for both people to write the same help log entry.
- Any help, collaboration, or outside resource that is not
properly logged in your help log or in the office hour system
is a violation of the course policy. Some
examples include:
- Not providing the full name of the person who helped you
in the help log – e.g. logging
"My roommate/tutor/friend/Albus helped me understand
the merge sort algorithm"
- Not describing in detail the question and resolution –
e.g. logging "quick question" for a question or "fixed it"
for a resolution
- Not logging help you received from working with other students –
e.g. you worked together with Harry Potter, Ron Weasley, and
Hermione Granger in office hours, but Hermione asked all
the questions in the online office hour queue system
and you did not also log the same questions
- Not using the office hours sign-in system during office hours – e.g.
receiving help from someone who does not have a CIS 110 course staff
name tag
- The only thing that you do not need to log is
the course material. Course material is defined as follows:
- The assignment writeup page itself or
anything directly linked to from the assignment page
- Any questions that you read or ask on the CIS 110 Piazza board
- The previous exams and their solutions
- The CIS 110 code style guide
- The PennDraw wiki or any other direct links from the Resources menu
- The assigned textbook and the booksite
- Anything taught by your recitation TAs to your recitation section at large
- The lectures, the lecture recordings, and the lecture slides
- You do not need to log questions that are not directly
related to the assignment. For example, these questions do not need to be logged:
- Information about the course: course policies,
examination information, or the arrangements for office hours,
lectures, recitations, or Piazza
- Information about computer science in general:
continuing your education in computer science,
activities to become more involved in computer science,
doing research, or
looking for employment in the technology industry
- Information about finding support outside the
scope of CIS 110: referrals to other University resources,
academic or personal advising, counselling, or learning strategies
- As always,
the Penn Code of
Academic Integrity applies.
These restrictions may seem artificial.
After all, in the real world,
computer scientists and programmers collaborate freely all the
time, and so do CIS majors. In many upper-level CIS classes
as well as in industry,
looking up answers online, debugging code together, and sharing code are
all permitted and encouraged. However, these behaviours
are forbidden in CIS 110: CIS 110 is not an
upper-level class, and it is not the real world. These restrictions
help you learn.
Appropriate collaboration
The collaboration policy sounds scary because we take it very seriously.
But it is not meant to prohibit all discussion and
collaboration. It is intended to limit only the forms
of collaboration that undermine the learning goals of the
course. Here are some ways that we encourage you to work together
and to get help:
- Come to office hours early and often! CIS 110 is
designed for you to learn as much as possible with the
benefit of help. We want you to get stuck, ask questions, and
learn how to experiment and find solutions. We also want you to
learn more by taking advantage of office hours than you would be
able to learn on your own.
- Read through each assignment with one or two friends, and work
out together what the different steps are; what you need to make
sure you understand; and where to find the information you need in
the assignment writeup, course web site, and textbook. Document
in your help log who you discussed with, and what you
concluded.
- Work through course notes and example code together. Work
together on example programs that are not part of the
assignment to understand different concepts. For example, when
you are preparing for the NBody assignment, we encourage you to
work through the Bouncing Ball examples together, and modify it
together to help understand animation and nested loop
structures. Again, document this in your help log.
- Discuss together how to test your code, and what
different kinds of input might cause problems. We don't always
tell you everything that could go wrong in your program; figuring
that out is part of your job, and doing this together will help
you understand the assignment better prepare to start programming.
Log your discussions before you forget the details.
- Search the CIS 110 Piazza board for answers.
When you have a question, it
is likely someone else has asked it already. Only post your question
if you can't find a discussion thread that helps you.
Answer other students' questions on Piazza, for instance by
suggesting tests the other student can do to help detect and debug
the issue in their code.
You do not need to log the help you receive and provide on the CIS 110 Piazza.
- Compare output from your program and a friend's. As long as
you do not look at each other's code, we strongly encourage comparing output
as a way to test your program. If you do this, you must log
exactly the help that you provide.
Suspected violations are referred to the University of
Pennsylvania Office of Student Conduct
(OSC).All implicated students are referred, whether or not they are
all in violation. The OSC will contact each student who has been
referred, conduct an investigation, and determine any disciplinary
sanctions. You may find the following information helpful if you are
referred.
- Don't panic! Every student who may be
connected to a violation gets referred since we don't know all the
facts. However we are very careful to include any information in
our report that could show a student had good intentions or is
likely to be innocent so the OSC can clear the situation up as
quickly and painlessly as possible.
- You remain in good standing in the course while a
procedure is ongoing. Whenever possible, the instructors do not
even notify your TAs about the procedure in order to protect your
privacy.
- The best way to resolve any referral with the least stress and
smallest possible sanction is to meet promptly with the OSC
tell the complete truth whatever it is. Holding back
information or misrepresenting facts invariably prolongs the case
and results in a stronger sanction.
- The OSC runs the investigation, decides whether a sanctionable
violation occurred, and determines any sanction. The instructors
are effectively witnesses in this process, providing evidence. As
a result, we cannot discuss an ongoing procedure with you under
any circumstances. We know this can be very frustrating, but
it is absolutely necessary to avoid miscommunication and guarantee
the integrity of the process.
- You may not withdraw from the course while an OSC procedure is
pending. (This is University policy.) We will only support a
late withdraw petition after the procedure is resolved if you
are cleared of all wrongdoing.
- If your procedure is not resolved by the end of the
semester, you will receive an incomplete. We cannot give
you a grade, even unofficially, until the procedure is complete.
We try hard to resolve every case as quickly as possible to avoid
this situation. The most common reasons a case is not resolved by
the end of the semester is because it involves one of the last
homework assignments or because the student stops cooperating with
the procedure.
- Be warned that an incomplete due to an ongoing OSC
procedure can affect your academic standing and your
eligibility for athletics, certain scholarships, study
abroad, and other activities. Neither we nor the OSC has
any control over this, even when it seems probable that
you will ultimately be cleared or receive a very minor
sanction.
Violations of course policy also factor into your course grade.
- The Professors determine what grade changes are appropriate
based on the OSC's report of the circumstances and only on the
OSC's report. We do not consider the sanction imposed,
and we may adjust your grade even if there is no disciplinary
sanction.
- Grading decisions are FINAL AND NON-NEGOTIABLE.
- Grade adjustment is, by definition, not a disciplinary
sanction.
See Faculty
Handbook, IV.D. Faculty Authority to Assign Grades and Academic
Integrity:
"Only the institution, acting through its formal processes, may
discipline a student. Grades are not sanctions, even if they
arise from a judgment that a student has violated a norm of
academic integrity. In such cases, the grade may reflect the
faculty member's view that a piece of work was done
inappropriately, but it represents a judgment of the quality of
the work, not a record of discipline for the behavior."
- We treat all types of violations equally for the purposes of
grading. Every violation takes us away from teaching for
many hours, impacting all students. Relying on inappropriate
help or collaboration has an added detrimental effect on your
learning. Giving improper help has an added detrimental effect
on the receiver's learning. In all cases, the impact is
serious.
- The grade impact ranges from a 0 on every assignment in
question plus a 5% deduction from your final course grade for
each assignment in question up to an F in the
course.
- We will not normally allow you to withdraw from the course
after you have committed a violation, unless you are granted a
leave of absence by your home school. Remember, permission (or
not) to withdraw is neither a right, a disciplinary sanction, nor a
grade.