⚠️ The final submission deadline is Sunday 12.5. at 23:59. Don’t be late, this is a hard deadline! If you have a very good reason for submitting late, contact the professor latest by Tuesday and you can get extra time.

In addition to the working project, tests, and configurations, the final submission should also contain the documentation; i.e.:

  • Usage instructions
  • Specification document
  • Architecture description
  • Test document

Update the specification document that you made in week 2 to reflect the final state of your project.

In addition, update the name of your project in LabTool to match your project topic.

Read the assessment criteria carefully, to see what is expected of you in terms of code and documentation!

For the documentation, you may use the reference project as a good example.

Explanation of AI usage and feedback

After you are done, answer the questionnaire about ChatGPT (and other AI model) usage, as well as submitting course feedback. Both of these are worth one point, and may very well affect your grade. You will find the AI questionnaire in Moodle and the feedback form in Norppa. Copy the code that’s visible in the feedback form and submit it to Moodle to get your extra point.

Grading

Final grades will be released in January in Moodle.

Make sure the project works as intended

NOTE: In order to receive weekly points for the assignment, the application must work on the university’s computer and the TAs must be able to run your code on them! You can test this on any Cubbli computer, such as the freshers’ laptop, or on the computers in your institution’s computer classes. You can also test on a virtual workstation using either a browser or the VMWare Horizon client.

In the virtual workstation, testing of your own application can be done using the browser as follows:

  1. Log into virtual workstation and select Cubbli Linux
  2. Start the terminal and check the version of Python in use with the command python3 --version. If the version is below 3.8, update the version using the instructions here
  3. Make sure that Poetry is installed by running poetry --version. If the installation is missing, follow these Linux installation instructions
  4. Clone your repository to the directory of your choice using the git clone command
  5. Go to your project’s directory and install the dependencies using the poetry install command. Note that the command must be run in the directory where the pyproject.toml file is located.

If the connection to the virtual workstation fails, you should try another browser. Users have reported that at least Google Chrome works quite well. Installing VMWare Horizon Client may also help.

Note: If you are running an application which uses an SQLite database on a virtual desktop, you may encounter the error database is locked. You can probably fix the issue by following these instructions.

Plagiarism

The course follows the University of Helsinki’s study policies Plagiarism and academic plagiarism, i.e. copying answers from the internet or from a friend and returning them as your own work is forbidden. A proven case of plagiarism will result in the failure of the course and repeated cases of plagiarism may result in the suspension of the right to study.

What does plagiarism mean in the context of the practical work? Direct copying of code is prohibited, with the exception of short snippets of code and code generated by ChatGPT or similar tools (see below). Direct copying of code structure, e.g. by changing the names of variables and functions, also counts as plagiarism. On the other hand, you may use images found on the web if you have the right to do so (see below), but if you do so, you must include a reference to it in the documentation of the work, i.e. mention where the quotation was made.

The same plagiarism rules apply to the documentation of the work and it is particularly forbidden to copy-paste the documentation of a reference project.

ChatGPT and similar

Representing code or text generated by ChatGPT and similar AI-based tools (such as Bing Chat, Google Bard or GitHub Copilot) as self-plagiarism is also plagiarism. The use of generated code is allowed in the course, but always “surround” such code with the comments # AI-generated code begins and # AI-generated code ends. Do this even if you have made minor changes to the generated code (changing the names of variables and functions, etc.).

Remember that the use of ChatGPT and similar tools for generating tests is prohibited in the course.

Copyright

Please respect copyright and other intellectual property rights. Remember that you may not use anything found online for your own work. This applies to a wide range of material from software code to images and texts. So always check whether use is permitted under the licence under which the material may have been distributed. Remember that your work is public by default on GitHub. It is your own responsibility not to infringe copyright.