This is not really a graded task, but before we move on to the graded tasks, you need to find a colleague to form a two-member team.
Together, you will be designing a library API, implementing it, and giving two presentations about it (i.e., 4 out of 7 tasks). It also means that the team has to agree upon the implementation language and coding style.
The members of a team can be enrolled in different lab sessions, but the team must give a presentation during one of the sessions (we will sort out which one prior to the respective lab sessions).
Next step
If you don’t have a team yet, visit the Forum project’s issue tracker and post a public issue indicating that you are looking for a team.
You you already have a team, post a confidential issue in the Forum (or send an e-mail to the course instructor) with the following information:
- SIS/GitLab login of each member
- the programming language your team will be using (for API and implementation)
- only statically-typed languages are allowed (i.e., Java, C##, C++, Scala)
- the goal is to play with and make the most of the type system
- another limitation is that for a language to be accepted, there must be enough students willing to write tests and review code written in it
- the language used by the team cannot be changed between assignments (team will be working together on a single project even though the assignments are incremental)
- preferred languages for each member (for reviews and test writing)
- e.g., as follows:
C++ > Java == C# >> Scala
, which can be read as “I prefer C++, but I can review code/write tests in Java and C# reasonably well and — if really necessary — I can review Scala code, but don’t get your hopes high.” - do not include languages that you are unwilling to at least review
- e.g., as follows: