## Rules of the Game

 1. First of all, I am very sorry in case you lost.
 2. The seminar is worth 2 credits and there is no exam. Instead,
    you will collect points as we go and when you have 30 of those,
    you pass. There will be various ways to collect those points.
    There is only one additional requirement: 4 points must be from
    teacher review (see below).
 3. Each week, there will be a simple homework (only slightly more
    complicated than the exercises in the seminar). Working it out
    and handing it in will get you 2-4 points. More about this
    later.
 4. In 8 out of the 12 weeks, your homework will be graded by your
    seminar tutor, and you may get additional points, up to 1/2 of
    the value of the homework itself.¹
 5. You can collect 6 points for writing feedback (peer reviews) on
    your classmates' exercises. But only if you passed those
    exercises yourself! Each instance is worth 0.5-1 points.

The summary of obtainable points:

 • max 32 points for assignments,
 • max 12 points for grades,
 • max  6 points for peer review.

¹ If you are in the ‘self-study’ group, you do not have a seminar
  tutor – instead, you will gain these points by «reading» and
  accepting at least 3 «peer reviews». You will get one point for
  each such assignment.

### Homework

Each homework is a simple extension of what was done in the seminar.
You get 6 attempts at submitting each assignment, spread out across
2 weeks. The deadlines are at midnight on Monday, Wednesday and
Friday. It does not matter when you pass the assignment, only that
you do (but it pays to work early, giving you a lot more space to
correct mistakes or misunderstandings).  More details about the
assignments can be found in ‹homework.txt›.

The schedule is as follows (the «highlighted» entries are those
which will be reviewed by your seminar tutor):

│    │ pts │ given │ try 1 │ try 2 │ try 3 │ try 4 │ try 5 │ try 6 │
├┄┄┄┄│◀┄┄┄▶┼┄┄┄┄┄┄▶│┄┄┄┄┄┄▶┤┄┄┄┄┄┄▶┤┄┄┄┄┄┄▶│┄┄┄┄┄┄▶┤┄┄┄┄┄┄▶┤┄┄┄┄┄┄▶┤
│ 01 │  2  │  5.3. │  8.3. │ 10.3. │ 12.3. │ 15.3. │ 17.3. │ 19.3. │
│«02»│  3  │ 12.3. │ 15.3. │ 17.3. │ 19.3. │ 22.3. │ 24.3. │ 26.3. │
│ 03 │  2  │ 19.3. │ 22.3. │ 24.3. │ 26.3. │ 29.3. │ 31.3. │  2.4. │
│«04»│  3  │ 26.3. │ 29.3. │ 31.3. │  2.4. │  5.4. │  7.4. │  9.4. │
│«05»│  3  │  2.4. │  5.4. │  7.4. │  9.4. │ 12.4. │ 14.4. │ 16.4. │
│«06»│  4  │  9.4. │ 12.4. │ 14.4. │ 16.4. │ 19.4. │ 21.4. │ 23.4. │
│«07»│  3  │ 16.4. │ 19.4. │ 21.4. │ 23.4. │ 26.4. │ 28.4. │ 30.4. │
│«08»│  3  │ 23.4. │ 26.4. │ 28.4. │ 30.4. │  3.5. │  5.5. │  7.5. │
│ 09 │  2  │ 30.4. │  3.5. │  5.5. │  7.5. │ 10.5. │ 12.5. │ 14.5. │
│«10»│  2  │  7.5. │ 10.5. │ 12.5. │ 14.5. │ 17.5. │ 19.5. │ 21.5. │
│«11»│  3  │ 14.5. │ 17.5. │ 19.5. │ 21.5. │ 24.5. │ 26.5. │ 28.5. │
│ 12 │  2  │ 21.5. │ 24.5. │ 26.5. │ 28.5. │ 31.5. │  2.6. │  4.6. │

NB. The 4th of June is also the final deadline to collect the
required points: peer reviews will no longer be accepted after this
date either.

### Assignment Grading

Each assignment that your seminar tutor reviews will be graded on
this scale:

 • A = no problems, nice and clean code – could be shown as a
   reference solution to other students, you get + 50 %,
 • B = not great, not terrible – does not set an example, but the
   mistakes are not grave, you get +25 %,
 • C = this is bad, you made your reviewer severely unhappy… +0.

Unless you get an A, you will have one week to fix and resubmit your
code (with the exception of assignment 11). Of course, the updated
code must still pass the tests (which continue to run on the
standard Mon-Wed-Fri schedule). The grading schedule is this:

│    │ pts │ given │ deadline │ review │ resubmit │
├┄┄┄┄┼┄┄┄┄┄┼┄┄┄┄┄┄▶┤┄┄┄┄┄┄┄┄┄▶┤┄┄┄┄┄┄┄▶┤┄┄┄┄┄┄┄┄┄▶┤
│ 02 │  3  │ 12.3. │    26.3. │   2.4. │     9.4. │
│ 04 │  3  │ 26.3. │     9.4. │  16.4. │    23.4. │
│ 05 │  3  │  2.4. │    16.4. │  23.4. │    30.4. │
│ 06 │  4  │  9.4. │    23.4. │  30.4. │     7.5. │
│ 07 │  3  │ 16.4. │    30.4. │   7.5. │    14.5. │
│ 08 │  3  │ 23.4. │     7.5. │  14.5. │    21.5. │
│ 10 │  2  │  7.5. │    21.5. │  28.5. │     4.6. │
│ 11 │  3  │ 14.5. │    28.5. │   4.6. │        – │

### Plagiarism

Please work on your own. If you get caught cheating, you will fail
the course and you will have to explain yourself to the disciplinary
committee. You are also responsible for keeping your solutions
private. If you only use the ‹pb152› command on ‹aisa›, it will make
your ‹~/pb152› directory inaccessible to anyone else (this also
applies to school-provided UNIX workstations). Keep it that way. If
you work on your solution using other computers, make sure they are
secure. Do not publish your solutions anywhere (on the internet or
otherwise). All parties in a copying incident will be treated
equally.

### Summary

 • 30 points to pass,
 • 4 out of the 30 must be for review,
 • get them by the 4th of June.

That's the rules. We can now start with the seminar proper.

    $ cd ../01
    $ cat intro.txt
