Autograder / FAQ
Frequently asked questions
Click any question to expand the answer.
Submitting
What file do I submit?
▶
Submit a single source file with the exact same name as the problem. For example, if the problem is
called FizzBuzz, submit a file named FizzBuzz.java (Java),
FizzBuzz.py (Python), or FizzBuzz.js (JavaScript) depending on the
language your instructor specified. The name must match exactly — capitalization matters.
Can I resubmit?
▶
Yes, you can resubmit as many times as you like before the deadline. Your best score
across all submissions is what counts toward your grade. There is no penalty for resubmitting.
How large can my file be?
▶
Files must be 64 KB or smaller. In practice, a well-written solution to any class problem will be
far below this limit. If you're hitting the limit, you likely have something unexpected in your file.
I submitted the wrong file. What do I do?
▶
Just resubmit the correct file. The new submission replaces nothing — your old submissions stay in
history — but your best score is always what counts, so a correct resubmission will update your grade.
I can't sign in. What should I do?
▶
Make sure you're signing in with your
school Google account, not a personal Gmail.
If you've signed into the wrong account, click "Sign in with Google" again and switch accounts in
the Google login window. If the problem persists,
contact your instructor.
Understanding your results
How long does grading take?
▶
Most submissions are graded within 15–30 seconds. The status updates automatically — you don't
need to refresh the page. If a submission stays in
pending or
running for more
than 2 minutes,
let your instructor know.
What does "wrong output" mean?
▶
Your program ran successfully but produced output that didn't match the expected output for that
test case. Click
View on your submission to see the side-by-side comparison of
what was expected versus what your program printed. Common causes:
- Extra or missing spaces, blank lines, or punctuation
- Wrong capitalization
- Off-by-one errors (printing one too many or too few items)
- Debug
System.out.println statements left in your code
What does "runtime error" mean?
▶
Your program compiled (for Java) but crashed while running. The error details panel shows the
exception message to help you debug. Common causes:
ArrayIndexOutOfBoundsException — accessing an index that doesn't exist
NullPointerException — using an object that was never initialized
NumberFormatException — trying to parse a non-numeric string as a number
StackOverflowError — infinite recursion
My code works on my computer but fails here. Why?
▶
The autograder compares your output
exactly to the expected output. Small differences
your eyes skip over will cause a failure. Things to check:
- Are you printing a trailing space or extra blank line?
- Are you reading from
System.in (stdin) correctly — the grader pipes the input in automatically
- Are you leaving any debug print statements in?
- Does your program exit cleanly, or does it wait for more input?
What is a "disallowed keyword"?
▶
Some problems restrict certain language features — for example, a problem designed to practice
for loops might disallow while, or a problem might disallow built-in
sorting methods. If your submission is rejected because of a disallowed keyword, remove that
construct and find another approach. Your instructor will tell you what constraints apply.
How is my score calculated?
▶
Each problem has a set number of test cases and a point value. Your score is:
(test cases passed ÷ total test cases) × problem points
For example, if a 10-point problem has 5 test cases and you pass 4, you earn 8 points.
Your overall course grade on the
My Grades page is your total points
earned across all problems divided by the total possible points.
Technical issues
My submission has been "pending" or "running" for a long time.
▶
Submissions normally complete within 30 seconds. If yours has been stuck for more than
2 minutes, try refreshing the page. If the problem persists, note your submission ID (visible
in your submission history) and
contact your instructor.
I got a "file too large" error.
▶
The maximum file size is 64 KB. Make sure you're submitting just your .java
(or .py / .js) source file, not a compiled .class file,
a zip archive, or any other file type.
I see a "compilation error." What does that mean?
▶
For Java submissions, your code didn't compile. This means there are syntax errors —
missing semicolons, unmatched braces, misspelled keywords, etc. The error details panel
shows the compiler output. Fix the errors in your editor, confirm the code compiles
locally with javac YourFile.java, then resubmit.
The site looks broken or I'm seeing an error page.
▶
Try a hard refresh (
Ctrl+Shift+R on Windows/Linux,
Cmd+Shift+R on Mac)
to clear any cached files. If that doesn't help,
submit a ticket describing
what you see and which page you were on.
Classes and enrollment
How do I join my class?
▶
Your teacher will share an 8-character join code (something like ABC12XYZ). On the submit page, look for the "Join a class" prompt at the top — type the code and click Join. Once joined, your class's problems appear in the dropdown.
Can I be in more than one class?
▶
Yes. You can be enrolled in multiple classes (your regular CS class, plus the per-language Practice classes for example). Problems from every class you're in appear in the dropdown, grouped by class.
I don't see any problems. What's wrong?
▶
Most likely you haven't joined a class yet — the page shows a "Join a class to see assignments" banner when that's the case. If your teacher told you you're enrolled but problems still aren't showing, it might be that your class has problems without test cases configured yet (those are hidden from students until at least one case is uploaded). Ask your instructor to check.
Late tokens
What are late tokens?
▶
Each student starts with 5 late tokens. Each token covers 24 hours past a problem's due date. If you submit late and you have enough tokens to cover how late you are, the system automatically spends those tokens and treats your submission as on-time. If you don't have enough, the submission is accepted but flagged as late.
How are late tokens spent?
▶
Automatically, on submit. If you're 30 hours past the deadline, that takes 2 tokens (rounded up to whole 24-hour chunks). Submitting 49 hours late takes 3 tokens. Tokens are spent only if you have enough to fully cover the lateness — partial coverage doesn't apply, you'd just be marked late.
Where do I see how many tokens I have left?
▶
On the submit page, just under the problem description: "Late tokens remaining: X / 5". Hover for the explanation. The number updates the moment you submit something that consumes tokens.
Can my teacher give me extra tokens?
▶
Yes. Instructors can grant tokens (+1, +5, or any amount) or reset your balance back to 5 from their dashboard. Talk to them if you've run out and have a legitimate reason for an extension.
What if a server outage caused my late submission to fail?
▶
Tokens are refunded when our file-upload step fails before the submission is even queued. If your code itself errors during grading, the tokens stay spent — that's not a server issue, the system tried.
Practice problems
What are practice problems?
▶
Practice problems are extra exercises grouped by language (Java, Python, JavaScript) that don't count toward your class grade. They're for sharpening skills and building confidence. Visit the
Practice page to browse them.
How do I access practice problems in a different language?
▶
On the Practice page, switch the language tab at the top (Java / Python / JavaScript). Each language has its own practice problems with the same names but adapted to the language's I/O conventions. To submit, you need to be enrolled in that language's practice class — your teacher can share the join code.
Why are some practice problems greyed out as "Soon"?
▶
Those are placeholder cards for problems that aren't uploaded yet — you can see what's coming but can't submit. The clickable problems at the top are live and ready to attempt.
Do practice problems use the same late-token / due-date system?
▶
No — practice problems typically don't have due dates, so there's nothing for tokens to cover. Your token balance is shared across all classes, but practice submissions don't consume them.
Grades, feedback, and overrides
My grade changed after I already saw it. Why?
▶
Your instructor can manually override a grade — for example, awarding partial credit beyond what the test cases caught. When this happens you'll see a "Manually adjusted" badge on your submission and the displayed score reflects the override. The instructor's reason is stored in the audit log.
I see a unified diff under my failed case. How do I read it?
▶
Lines starting with - are what was expected; lines starting with + are what your code actually printed. Lines without a prefix matched. The diff is collapsed by default; click Show diff on a wrong-output case to expand it.
Can I leave my instructor a comment about my submission?
▶
Yes. After grading completes, scroll past the per-case results to find a comment thread. Type a message and click Send. You can also tag a comment to a specific test case using the dropdown next to the input — useful for asking about case 3 specifically without ambiguity.
Can I download the file I submitted?
▶
Yes — every submission detail view has a Download source link that gives you back the exact file you uploaded. Useful if you didn't keep a local copy.
What does "Attempt #3" mean?
▶
That's how many times you've submitted to this specific problem — your third attempt at FizzBuzz, for instance. The number is per-problem, not per-class, so submitting to a different problem starts at #1 again.