Welcome! On this page you find important information about the labs: How to prepare, how to communicate, what to work on, how to submit. Read through it carefully and ask if anything is unclear.
Before the lab: Pre-Labs
It is IMPORTANT that you are familiar with the exercise before the lab starts. Before the lab starts do the following:
- read through the whole exercise (see below)
- do the pre-lab
- recap on what you did in the lecture
- note down any questions
During the lab:
There are two lab groups. LSF tells you which group you are in, and when and in which room the lab takes place. The labs will usually take place at the HTW. The labs may occasionally happen online - in that case I will warn you in advance. During the lab you will be working on exercises in teams (see below).
Please be there on time. Please note that food and open beverages are not allowed inside the lab.
Lab Assignments
- Lab 01: Application Design
- Lab 02: Programming & Tools, Review of CRC Model
- Lab 03: Implementing CRC Cards
- Lab 03 Handout: A Note on the Notation of CRC Cards
- Lab 04: Histogram
- Lab 05: Chatterbox
- Lab 06: Execution times
- Lab 07: Reverse Polish Notation, source code: https://github.com/htw-imi-info2/Lab07_ReversePolishNotation
- Lab 07 Handout: Infix/Prefix/Postfix
- Lab 08: Recursive Triangles, source code: https://github.com/htw-imi-info2/Lab08_SierpinskiTriangle
- Lab 09: Eight Queens
- Lab 10: Finite State Automata and Sorting Algorithms
- Lab 11: Getting from A to B
- Lab 12: Scrabble Cheater - Basic Edition
- Lab 12: Scrabble Cheater - Basic Edition
- Lab 13: Scrabble Cheater - Deluxe
Teams
You will work in teams of two or three.
Reports
Deadline
Lab Reports are due at 10pm the night before your next lab.
Grading
Lab reports won’t be graded - they just get marked with “ok” or “not ok”.
A report is “not ok” if any of the following is True:
- the report is missing
- you are not transparent on who did what (You need to be transparent on who did what. Collaborating with people outside your team is ok, but be transparent about it! Using sources from the Internet/books is ok, but cite them appropriately!)
- the report has too little significant content on the lab (see below)
- the report is not submitted correctly (see below)
- the code is not submitted correctly (see below)
You can use the late slot (see below) to hand in rejected Lab Reports again.
You will not be allowed to take the exam if you plagiarized.
Content of the report
Content that should go in the report:
- a summary of what the lab was about
- details on what you learned in this lab OR details on what the lab was about
- if you were asked to write code: an explanation of how you tested your code
- if questions were asked: the answers to the questions
What if I our team didn’t get the code to work? It’s ok not to have completely succeeded on the assignment, as long as you have tried sufficiently.
How long should the report be? Elegance lays in the ability to get to the point in as few sentences as necessary.
Which language should the report be in? You can write in English or German. But decide for one language.
How to submit correctly
Please submit to Moodle only:
- A pdf with your report
- As a text answer: a link to your team’s git repository (see below)
All team members need to upload the report (the same report done together).
Git
You will use Git to manage your team’s code.
Late reports
You can hand in 4 reports after their deadline, until TBD.
How to hand in late reports There are 4 “late slots” for handing in reports after the deadline, but they have to be handed in before the deadline above. Each person has to upload the late report by themselves, even if you worked in a team.
But …! If you fall ill for more than a week or are unable to continuously work on the lab reports for some other reason, come talk to me or at least email me as early as possible and we will find an individual solution.