The Media Computing Project (Winter '22/'23):
Class Information
Lab | Wed, 14:30 - 16:00 |
Seminar Room (2350|222) | |
Language | English |
Credits (BSc/MSc CS) |
7 |
Important Dates
Kickoff | Wed, Oct 12th 14:30 |
Midterm Checkup | Wed, Dec 14th 14:30 |
Presentations | Wed, Feb 1st 14:30 |
The Media Computing Project is our hands-on lab ("Praktikum") for Master students in Computer Science. Build an interactive system with an unusual user interface in hard- and software that creates an awesome user experience! It's a great gateway into our lab's research and teaching focus on User Interface Design, Human–Computer Interaction, and Personal Fabrication.
This course has limited seating. You need to register to obtain a seat in this course.
Instructors
For any questions about the class, please contact Adrian.
Syllabus
This year, you will work in groups on the hardware, menu system, or games of our lab's FabArcade, an open-source retro gaming arcade. The FabArcade was created by students like you ten(!) years ago in 2012, and, amazingly, is still running at our lab. We're going to catapult it into the 20's! You will be creating software within the constraints of such a fixed arcade device, which poses interesting challenges for things like performance, controls, and multiplayer support. Your goal will be to make sure that basic Human–Computer Interaction (HCI) principles are still incorporated. During the semester, you will learn:
- the role of HCI in software and especially game design;
- how to use beginner-friendly ATmega-based Arduino microcontroller boards and the Arduino IDE to program interactive behavior in embedded software (the FabArcade uses an Arduino to read and process joystick and button inputs);
- how to write fast-moving retro-style games on the Raspberry Pi.
After some quick introductions to these tools, you'll then have most of the semester to iteratively design, prototype, and test your ideas, whether it's a super-low-latency USB controller, an elegant menu system for players to select their favorite game, or a retro video game.
All Final Projects
Here are links to all the final group projects, complete with entertaining video trailers, documentation, and source code to download and try out the games on your computer. The games all chose PyGame for their implementation.
Schedule
-
Kick-Off
-
Lab: Introduction and Schedule
Wed, Oct 12th
-
-
Basic Knowledge
-
Lab: Prototypes and Pitch
Wed, Oct 19th
-
-
Game Design
-
Lab: Game Design Principles and Resources
Wed, Oct 26th
-
-
Project Management
-
Lab: Project Management and Softwares
Wed, Nov 2nd
-
-
Hardware
-
Lab: Hardware and Design
Wed, Nov 9th
-
-
Labtime
-
Lab: Project
Wed, Nov 23th
-
-
Labtime
-
Lab: Project
Wed, Nov 30th
-
-
Labtime
-
Lab: Project
Wed, Dec 7th
-
-
Midterm Checkup
-
Lab: Midterm Checkup
Wed, Dec 14th
-
-
Labtime
-
Lab: Project
Wed, Dec 21st
-
-
Labtime
-
Lab: Project
Wed, Jan 11th
-
-
Labtime
-
Lab: Project
Wed, Jan 18th
-
-
Labtime
-
Lab: Project
Wed, Jan 25th
-
-
Final Presentations
-
Lab: Final Presentations
Wed, Feb 1st
-
Grading
Lab exercises and assignments will be graded on the following scale:
1.0 | Exceptional work that clearly went above and beyond what was given on the exercise |
2.0 | Exercise was completed satisfactorily as per the assignment specification |
3.0 | Exercise was completed, but has some problems |
4.0 | Incomplete exercise |
5.0 | Little or no effort was put into the exercise |
Assignments
To take this course for credit, you must complete all assignments, lab exercises, and the final project. The grade of this course will be a combination of the assignments and final project. Note that you must achieve a cumulative score above 4.0 and complete all exercises to pass the course. You are also expected to be aware of, and abide by, the ethics policy for courses taught at our chair. Assignments/lab exercises will be assigned weekly. They are to be completed in groups as announced in the lab. If you do not complete the lab exercise during the scheduled lab section, you must complete it on your own time and submit it by the due date. Late assignments will be graded as a 5.0. Exceptions will be granted only for valid (i.e., documented medical) reasons.
Fields of Study
- Informatik (M.Sc.)/Angewandte Informatik
- Media Informatics (M.Sc.)
- Software Systems Engineering (M.Sc.)
Course Allocation and Registration Guide
Number of SWS: P3 (Aachen)
ECTS Credits: 7 (CS) / 7 (MI)
Course language: English for all lectures, assignments, and exams
Only 32 seats are available for this course. To get a seat in this course, you have to register for it in SUPRA in the appropriate timeframe during the lecture period one semester before the course is scheduled to start.
Read the Ethical Guidelines for the Authoring of Academic Work (Ethische Richtlinien für das Verfassen wissenschaftlicher Arbeiten).