Form a two-member team

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 2-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).

Register your team

When your team is ready, one of the members must open a Confidential Issue in the course Forum project’s issue tracker and include 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 the API 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 (the assignments are incremental and each team will be working on a single project)
  • 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