This git repository serves as a platform for information, sharing course material, communication, and submission of coursework.
Students of the class shall work on different assignments and ---finally--- on a team project. The assignments are generally described in README files in the subdirectories An; submission is generally done via git/GitHub.
The warm-up assignment in subdirectory A0 demos this scheme and explains the submission via GitHub (including preparations). Follow this assignment to get started.
Feel free to discuss via pull request comments (in particular, assignment-specific stuff) or GitHub issues for all more general things.
Don't forget to mention the people you want to address (e.g. @<user> for a particular GitHub user or @TBIAPBC/APBC2026 for all).
Individual assignments and their exact due dates are listed in the schedule below. Please follow those dates.
Each assignment has two deadlines:
-
Submit due: push your solution (code + description/tests) to your branch of the repository and open a pull request by this date.
-
Revise due: by this date, you must
-
review at least one colleague’s submission (more on revision below)
-
address feedback you received by pushing a revision (encouraged, but not required).
-
-
Reviews should be submitted as GitHub Pull Request reviews/comments or as issues linked to the relevant code.
-
When reviewing a pull request, make sure your review includes:
- whether the code works,
- whether the output precisely matches the assignment requirements,
- one positive comment about something well done,
- one specific suggestion for improvement,
- one question or edge case for the author to consider.
You are encouraged to ask each other for help throughout the week (in GitHub discussions). Collaboration is expected; copying without attribution is not.
Please find the assignment descriptions in the respective subdirectories.
| Date | Topic | Assignment | Submit due | Revise due |
|---|---|---|---|---|
| Mar-17-2026 | Initial meeting & warmup & Word Count | A0 & A1 | Mar-20-2026 | Mar-22-2026 |
| Mar-24-2026 | Optimization | A2 | Apr-07-2026 | Apr-10-2026 |
| Apr-14-2026 | Dynamic programming | A3 | Apr-22-2026 | Apr-24-2026 |
| Apr-28-2026 | Markov models | A4 | May-06-2026 | May-08-2026 |
| May-05-2026 | Game - Intro | A5 | May-11-2026 | |
| May-12-2026 | Game - Round I | A5 | Jun-01-2026 | |
| - | DL: Game feature | A5 | May-26-2026 | |
| Jun-02-2026 | Game - Round II | A5 | Jun-08-2026 | |
| Jun-09-2026 | Game - Round III | A5 | Jun-15-2026 | |
| Jun-16-2026 | Game: Battle of the Robots | A5 |
- CodeCademy provides interactive tutorials of programming languages (or git).
- Git: main page for the git version control system
- Git Introduction: an intro to distributed version control, using Git.
- Git school: git course material
- ... and here is a video demonstrating git features (using this visualization tool)
- Interactive Tutorial: introductory and advanced git tutorial
- Git Cheat Sheet