Working practices
Keep trying things out
When reading the materials, try out all the examples and search for more information online. In this course, learning about device-agnostic design goes hand in hand with learning to create applications that work with multiple devices.
Research on learning has shown over and over again that distributed practice, i.e. dividing your work over multiple days, leads to better learning outcomes than massed practice.
Coursework
The course materials include graded quizzes, programming assignments, and assignments where you create questions. Trying out the examples helps you in solving the programming assignments. In addition, the course features two projects. After completing a project, you will review your own project and a handful of projects from other course participants.
For Aalto University students, the course also has an end-of-course exam. More details on the exam are available in Aalto MyCourses.
Programming assignments in the early parts of the course are worked on in an online environment. When you click open an assignment, the editor will be shown. Later on, you are already expected to have a local version of the environment available for testing (see part on “Tools and versions”) — at that point, template code is given as zip-files and assignments are returned as zip-files.
Academic integrity
The coursework is to be completed individually. Sharing your solutions with others is strictly forbidden.
As the coursework have been created to help everyone learn, do not take away that opportunity. Do not share your solutions to the coursework or store them in any publicly available location.
All submitted coursework is also periodically checked for plagiarism. Plagiarism, i.e. representing the work of others as your work, will naturally lead to a failed course and other ramifications. For further details, see Aalto University Code of Academic Integrity and Handling Violations Thereof.
Use of generative AI
The course platform has a large language model -based generative AI assistant. You can find it on the lower right corner of the material pages when logged in — clicking it opens up a chat. The current version of the course assistant is based on OpenAI models. The assistant is not a TA, but a tool to help you with the course.
Similarly to asking information from your peers, course teachers, and TAs, you can use the AI assistant to help you with the course and the materials. You can, for example, ask for it to provide additional information about a topic, to explain code, to identify bugs in your code, and so on. You can also ask it for help when you are stuck e.g. with a programming assignment.
There are humans available for help as well, see Support and discussion.
Do not use the assistant for creating solutions to the assignments, or ask it to complete the assignments for you, as this is harmful for learning. Like using solutions from others, using solutions generated by generative AI and large language models counts as a type of plagiarism, where you fraudulently present the work as your own, even though it is not.
The use of generative AI and large language models such as ChatGPT for completing coursework is not allowed. Using solutions from ChatGPT or similar relates to representing the work of others as your own. When submitting coursework, only use solutions constructed by yourself.
If you are uncertain whether your use of the assistant is allowed, please ask the course staff, and keep in mind that you are responsible for your own learning. A good way to rehearse and assess whether you have internalized the concepts and that you have worked on with your peers, TAs, or the assistant (etc), is to take a 30 minute break after the collaboration and complete (or redo) the problems on your own. The interaction with the assistant is logged and can be reviewed by the course staff.