99% of the purpose of a syllabus is to answer questions you may have about
the class and the class policies. We have turned this into an FAQ-by-topic for that
reason. Feedback appreciated.
General Project Questions:
-
What types of homework will there be?
You will have a number of programming projects during the semester.
See schedule (on Canvas) for exactly when. These programming projects
will be a primary focus of your grade - each one should take multiple
sessions of coding, with questions asked in between. Don't be surprised
if you're spending 10+ hours on each one.
-
Where will I submit homework?
Homework will be submitted to GradeScope.
-
Will you "drop" one or more homework assignments?
No. This is a 3xx class. No project can be dropped for
any reason (except emergencies, see questions below in "Project
Issues and Potential Problems").
-
Can I work in a group?
Programming projects are individual effort. You may not show,
discuss, or otherwise share any general or specific information about
how you choose to solve them. See "Honor Code and Academic Standards"
for more information.
-
Are there any minimum requirements for
programming assignments?
For all coding homework, your programs must compile on Java 1.9
or higher to receive credit. All other requirements will be
specified on a homework-by-homework basis.
-
Are there any minimum grade requirements
for programming assignments?
All projects numbered above 0 will be averaged together evenly.
If there is a Project 0 (some professors/semesters have this), it
will not be part of the calculation, but instead act as a "flag".
If you do not pass Project 0 you will not receive credit for any
project at the end of the semester (infinite resubmissions for
Project 0 will be allowed up until a certain date).
At the time of the last submission deadline for Project 0
(see schedule), if you still have not passed Project 0, your
project grades will be replaced with a 0s.
-
What's the late policy for homework?
You can turn in homework ONE day late BUT you can only do this
"for free" twice. Any homework turned in late after the second
time will lose 10% of the homework's value. This will be calculated
at the end of the semester. Turning in homework TWO days late will
get you a ZERO.
-
What is the late policy in a formula?
If you turn in X homework assignments ONE day late, and each homework
is worth 5% of your grade, you would have your semester grade lowered
by (max(X-2,0)*.5).
Getting Help on Projects:
-
How can I get help on a project?
Project help is available in-person before/after class or in office
hours, but the discussion board (Piazza) also gives a way to get
asynchronous help. Don't spend hours banging your head against a wall,
come get help!
-
Can I get code help?
Of course! But only from professors and TAs. While you can't share
answers or code solutions on the discussion board, you can include
code in private posts to the instructors. These are visible
to all professors, GTAs, and UTAs, who are standing by to help
(during normal human times :P). GTAs and profs are also available
for office hours for more interactive help.
-
Where and when are office hours?
These will be posted on Canvas and Piazza.
-
How busy are office hours? I don't want to "bother" anyone...
Stop by and see! You are never "bothering" someone. Helping you
is what office hours are for! That said, sometimes office hours can get
crowded, especially on due dates, so do not rely on them for significant
last minute help. Spending time with the project before asking for help
is good, but again, don't spend hours banging your head against a wall,
come get help!
-
How can I get better at time management so
I'm not doing everything at the last minute?
Instructors can often help with this, but
GMU Learning Services
offers a lot of support options for time management improvement as well.
Whatever you do, don't hide the problem, talk to someone about it!
-
Can I discuss my project with other people
and/or AI assistants?
No sharing of code or solutions, and no discussion of problem
solutions is allowed with anyone except the TAs or professors.
You may not use the internet to find, develop, or solicit help
for code, assignments, or any other individual work. You may not
use AI for help, and you may not use AI coding assistance tools.
See section 4.1 on the Honor Code.
-
Why can't I use AI? It's what professionals do!
There are a few things I want you to think about: (1) professionals
already know what they're doing, and (2) it's ok for the English
major to pull out a calculator to work out tip, but it's not ok
for a statistician to do that. You are trying to be someone
who knows what they're doing, memorizing what buttons to hit on a
tool to get an answer isn't the same thing.
-
So if I can do it without AI, it's ok to use AI?
Unfortunately, no. I know you think you know what you're doing, but
please trust me, you're suffering from the Dunning-Kruger effect. A
few semesters of programming experience (or even a few years) is
nothing to sneeze at, but it's also nothing compared to what you
need to be a professional.
Using code generation tools now is like an elementary school
student using a calculator to do their arithmetic homework. Any good
parent is going to take away the calculator, and they won't accept
the argument "but I'm going to be an accountant and accountants use
calculators all the time". What the child doesn't know, but the parent
does, is that "if you want to be an accountant, you need to be able
to do 1+1 in your head".
Nevertheless, the child will certainly be upset, and
possibly really angry that they have to spend hours doing
their math homework, when it used to take minutes. But
no one is going to tell the child "it's ok to use a calculator
because it takes less time to do homework". That isn't the point of
homework. The only difference between that child and you, is that
you need to be your own parent :( It's your responsibility to say
"no" to yourself so that you can do the programmer-equivalent of 1+1
in your head.
Projects Issues and Potential Problems
-
What if I submit the wrong files electronically?
Just like turning in the wrong homework in-person, turning in
the wrong homework electronically will result in a zero. Just because it's
easy to make a mistake, doesn't mean you shouldn't double check
your submission (in fact, it means the opposite!).
-
What if I make a "stupid" mistake on
my homework?
It happens, but it also has consequences. To prepare you for the
cautiousness you need when working in a professional environment,
you will not be able to fix anything after submission,
even if it is a simple mistake. That's what the time before
submission is for. Make sure to dedicate specific time to looking
over your work before submission.
-
What if Canvas or Gradescope is down?
In the rare situation that a website/tool/service is somehow
unavailable or giving an error, you are still responsible for
turning in on time. Just email your submission to your professor before
the deadline and explain what happened.
-
What if my computer crashes and I lose
my work?
To ensure professional practices in our senior student body,
catastrophic computer failure will not be considered a reason
for an extension. As this is a senior level CS course, you
can practice the professionalism you'll need in the workplace
by backing up your work.
-
What type of backup should I use?
You can use online services like OneDrive (free to students, see:
https://its.gmu.edu/service/office-365-onedrive/), or
something as simple as emailing things to yourself at the
end of each day, whatever gets the job done!
-
Can I "revert" to an earlier submission?
You can submit your work an unlimited number of times to Gradescope,
and only the last version will be graded. If your latest submission
to GradeScope receives a 0, only then may you request we revert to
an earlier version (i.e. you can't pick and choose submissions
based on the outcome of grading).
-
What if I submit the wrong files and
have a "backup" on my computer?
If you turn in the wrong files, the only way you might receive
credit is by showing me a backup where the modified date on the files
is outside of your control. Modified dates on personal computers
and/or public computers are never accepted as proof of work. Backups
which will always be considered are: prior submissions to
Gradescope or emails to your Professor/GTA. Backups which might
be accepted include: emails from your GMU email to yourself,
uploading to certain backup services (such as GoogleDrive or a
private GitHub repo), and uploads to the discussion forum.
-
What if I want an extension on a homework?
Extensions require exceptional circumstances (as judged by
me) and must be arranged in advance. I don't give
extensions on or after the due day unless you have a
university-accepted emergency. Normal obligations such as family
or friend events, vacations, or other classes are not
exceptional circumstances (unless hospitals are involved!).
-
What if I miss (or will miss) a homework
deadline because of some sort of emergency?
If you need an extension or miss a due date because of a
university-accepted emergency (such as being taken to the
hospital), and you can provide documentation of the emergency
and your involvement, we will work something out that makes
sense for the situation. I may elect to "exempt" a missed
homework rather than give an extension under certain
circumstances. In this case, other homework in the same
category will gain more weight. Please note travel plans are
not emergencies.
-
When do I need to inform you about
the emergency?
If it is possible to notify me before the missed deadline,
you must do so. But if it is a sudden event (such as being taken
to a hospital), just notify me within 24 hours of the "conclusion
of the event" (e.g. when you get out of the hospital).
Unfortunately, to ensure the class moves forward for everyone,
failure to follow this policy will result in a zero.
-
What if I miss a homework deadline
for some other reason?
Missing a homework due date for any non-university-accepted
reason (such as not paying attention to when the due date is),
will result in a zero.
-
Can the TAs give me an extension?
Nope. Just professors. TAs cannot approve late submissions or extensions.