Introduction to Computer Science YMT113 · Fall 2026 Assoc. Prof. Ferhat Uçar

Semester project · 15% of the final grade

Build something real, one commit at a time.

Every student has a personal project: a small but complete program, sized for one person and ten weeks, built in your own GitHub repository and demoed live on the last Monday. Most projects are in C; some use Python or the web.

Find my project

Type your student number

Your number is not sent anywhere. Each card is encrypted with a key derived from its owner's student number; your browser derives the same key and can open only your card. The page source contains nothing but ciphertext, so nobody can read another student's project.

No project shown yet. Type your student number above.

What counts

The project is 15% of your final grade (the other 85% is the final exam). The final is 60% of the course, so the project is 9% of your overall grade, and the single best line on your CV from this course.

How it was assigned

Projects were drawn at random from a bank of twenty across the six themes below, in week 5 (October 19, 2026). Each has a minimum scope and an advanced scope. Two projects were given to two students, with different advanced scopes.

Where you work

In a private repository created by Classroom 50 from a starter (README skeleton, report template, Makefile, devcontainer), with the same Codespaces workflow as the labs. Your commit history is part of the grade, so commit small and often.

Themes

Six themes, one per module

Every project sits in one of these themes and builds on the weeks listed. If your theme's weeks are still ahead, start with the parts you already know and read ahead on the week pages.

  • builds on week 3, week 4

    Text and ciphers

    Strings, loops and arrays in C. Small programs with a big history.

  • builds on week 5

    Algorithms

    Searching, sorting and problem solving, with running time you can measure.

  • builds on week 6

    Memory, files and images

    Bytes, pointers and binary files. The most “under the hood” projects.

  • builds on week 7

    Data structures

    Linked lists, hash tables and tries. Speed and memory trade-offs you can feel.

  • builds on week 9, week 10, week 11

    Python, AI and data

    Higher-level languages and real data. Tools you will actually use.

  • builds on week 12, week 13

    The web

    Things people can click. HTML, CSS and JavaScript, with an optional Python backend.

Timeline

Five milestones

Dates are Mondays. Each milestone is checked in the lab or by looking at your repository.

  1. M0

    Framework published

    week 2 · Sep 28

    This page: what the project is, how it is assigned, the milestones and the rubric.

  2. M1

    Your project, your repository

    week 5 · Oct 19

    Type your student number above to see your project. Accept the project repository on Classroom 50, write a one-paragraph plan and a task list in the README, make the first commit.

  3. M2

    Prototype check-in

    week 11 · Nov 30

    The minimum scope runs end to end. Tag the repository m3-prototype. Five-minute check in the lab: you show it, we look at the commit history together.

  4. M3

    Project workshop

    week 14 · Dec 21

    Lab time devoted to your project: polish, tests, README, rehearse the demo with one other student.

  5. M4

    Demo day

    week 15 · Dec 28

    Five-minute live demo from your repository, followed by two or three questions, and a tagged v1.0 release.

Rubric

How it is graded

  • 30 Correctness and completenessThe minimum scope works without crashes on normal and edge inputs. Advanced scope earns the top of the range.
  • 20 Code quality and testsReadable names, small functions, comments where they help, no memory leaks (C), and a few tests or a check script.
  • 20 Demo and explanationYou can explain every part of your code, why you built it that way, and answer questions about it.
  • 15 README and reportA README that lets someone run it in five minutes, and a two-page report (docs/REPORT.md): problem, design, results, what you learned, limitations, sources.
  • 15 ProcessSteady commit history from week 5 on (at least one meaningful commit most weeks), milestones on time, tagged releases. One giant final push scores zero here.

Commit tracking

How process is measured

  • Weekly commits. From week 5 to week 15, at least one commit that changes real code or documentation most weeks. Commit messages say what changed (“add blur filter”, not “update”).
  • Milestone tags. Tag m3-prototype by week 11 and v1.0 before demo day. Tags are how the instructor finds the version you want graded.
  • Task list in the README. The starter README has a checklist; tick items as you go. It doubles as your progress report.
  • Deliverables. The repository (code, tests, README with build, run and an example run), the two-page report in docs/REPORT.md, and the five-minute live demo.