General Assignment Frequently Asked Questions (FAQ)

  • I don’t know how to do X

    • This is typical and sometimes intentional as independent learning is critically important

    • Go to google.ca and type in X

    • This is not to dismiss your question — it’s how experienced programmers figure out how to do X

  • How long should this assignment take?

    • This will depend heavily on experience levels

    • At this stage, expect the assignments to take multiple hours

    • In other words, do not get discouraged if you are on hour 4 and you’ve yet to finish

    • Remember, you would not expect to write a high quality essay in a single one hour sitting

  • I think I did everything correctly, but it’s still not working

    • This is typical

    • Sometimes bugs are simple and easy to find, and others are sneaky

    • Take your time with debugging and tracking down the problem

    • I recommend going through the code; what does the code you wrote actually say?

    • Consider using print to see what the values of your variables are at different points of your code

    • If you are still stuck after an hour or so of trying to get the broken part working, come to office hours

  • What do the provided functions do?

    • Have a read of the docstrings for the functions

    • Trying to figure out their functionality is part of the assignment

    • Learning to look at unfamiliar code is a critically important skill to learn

  • Some of the code in the provided functions looks like magic

    • This is normal, even with experienced programmers

    • It would be unusual if one were to look at a non-trivial block of code and immediately know what it is doing

    • At this stage, you may need to do a bit of googling to make sense of the code

    • This is an important skill to develop

  • Is it OK to solve the problems in a way you did not describe, since I believe my solution is better

    • It may be the case that you truly found a better way to solve the problem, but follow the provided instructions

    • Sometimes constraints are provided to you to emphasize a specific skill you are to learn and develop

    • Additionally, if you do not follow the instructions, it may break the automated testing of your code

  • How do I know if I have enough comments?

    • You don’t really

    • Write your docstrings

    • If you have a block of code that you feel is not self-explanatory, consider adding a comment

    • Do not get carried away with adding comments

    • If possible, make the code itself as self-explanatory as possible, that way you don’t need the comment

  • Can I work with a friend?

    • No

  • If the deadline is 11:55pm and I submit it shortly after that, will it still get marked?

    • No

    • It would be unfair to not be consistent and follow the outline set at the start of the semester

    • To hedge against a late submission, aim to submit the assignment well before the deadline

  • I accidentally submitted the wrong code — will you accept the correct code even though it’s late?

    • No

    • Unfortunately this is a common cheating strategy students take in order to submit their assignments late

    • Although you may have truly made this mistake, because cheating is so rampant, I cannot accept these submissions

  • Will I really get a 0 if the submission is done incorrectly?

    • Yes

    • Unfortunately, like submitting the wrong code, this is a common cheating strategy

  • I had technical difficulties when trying to submit, therefore it was late — will you accept the submission now?

    • No

    • Like the others, this is another common cheating strategy

    • Because this is commonly used for cheating, we can’t accept the submission

    • To hedge against this, aim to submit your assignment well before the deadline