Labs of Štěpán Stenchlák
Wednesday 12:20-13:50 (odd weeks)
Room: SW2 (Malostranské nám. 25, Praha 1)
Some updates and reminders
- There are no more labs.
- Info about the final assignment updated. (see How to get credits section)
- Please use Mattermost channel
#nswi170-compsys-stenchlak
for communication (questions regarding homework, presentations, rules, etc.). To join Mattermost for the first time, use the invitation link from the detail of the lecture in SIS. (under the Note for the attending students).
- Starting with the second lab, you will need your own Arduino board. Please check more info about Arduinos on how to get one from the University library.
- Join these labs' ReCodEx group through the SIS integration page to submit your future homework.
How to get credits
To get credits for these labs and have a chance to pass the exam, you will need to:
- Successfully solve tasks from all six labs (starting in the first week) and submit them to ReCodEx.
- Solve the final assignment (seventh task) and submit it to ReCodEx
Final assignment - D&D dice. Include a short text (about half a page) describing the architecture you used and why you think the architecture is good. For example, would be easy for you to implement some new requirements? Or do you think the parts can be reused in other projects? Can it be easily extended? The point of the text is to show me that you are satisfied with your code and also you can communicate the important parts of your solution. The deadline is the end of May.
Attendance is not mandatory. You do not have to announce that you will skip the labs. There are no points per se, only the requirement to solve all seven tasks in time and according to the requirements below.
Code quality requirements and other rules
We will enforce our Guidelines to write a better C/C++ code to teach you how to write better code. If your submitted code does not follow these guidelines, I will not accept it, and you will have to resubmit it again. (see the following section for more details about deadlines and resubmitting)
If I do not see any progress in your code quality, I will not accept your homework anymore, and you will not get credits for these labs. There is a list of Unforgivable curses in our guidelines with detailed explanations.
Also, do not forget about the Ethical Guidelines, specifically about plagiarism which is forbidden. The final assignment is presented in person, and I will check if you understand the code you wrote.
Homework schedule
Each in-labs assignment will have the following pattern:
- We will start the assignment during the labs on Wednesday, progressing step by step.
- If you do not finish the assignment in the labs (or you do not attend the labs), you can finish it on your own at home.
- Your debugged and tested solution needs to be uploaded to ReCodEx before the deadline, which will be next Wednesday end of the day.
- I will review your solutions and give you feedback in the form of a code review (in ReCodEx).
- If you got any issues in the review (most likely regarding the quality of your code), you shall fix them within the following week and submit them for review again. If I still find the issues, you must fix them again. The hard deadline is four weeks after the assignment. In other words, the assignment issued in the first lab must be completely solved (including fixing issues) before the third lab. Furthermore, it is highly recommended to do the fix as soon as possible (preferably within a week -- i.e., before the next lab), so you can use your code as a basis for the next assignment.
- The issues are considered fixed when your solution is marked as accepted in ReCodEx. The 100% score only means that your code seems to work. It is possible we will iterate your submissions a few turns before you get things right; however, do your best to fix everything in the first turn.
Labs schedule