Artful Coding: web-based games development 1

Andrea Klaura
Art and Technology, Coding Lab
2021W, Vorlesung und Übungen (VU), 2.0 ECTS, 2.0 semester hours, course number S04129


Course Webpage:

Artful coding can be many things. Besides the creative mastery of the tools of the trade, it often also means a playful approach to developing computer programmes. More specifically it can also mean to create playful digital content by applying a (playful) approach to computer programming. In this course we will approach this kind of coding and you will learn the basic skills to develop simple games that can be run in (almost) any web browser and be integrated into (almost) any web page.

The course will get you up to speed with the basics of web development, based on HTML5, CSS and modern Javascript (ES6>). While the first three sessions aim at getting everyone to a point where you have the basic skills to create simple web based games, the later sessions focus on implementing three different kinds of simple games: a typing game, a memory game and a physics-based jumping block game. At the end of the course you will be tasked with a final project, the contents of which will be chosen throughout the course. The minimal version of a final project is an individual adaptation of one of the three games implemented in the course (e.g. build you own experimental extension, quirky and whacky mechanics, reflective/engaging/provocative content, ...).

As a teaser, this course also readies you to attend the Artful Coding II course in summer semester, which will introduce you to a professional and mobile ready HTML5 game engine and facilitate a more open approach to create your very own kind of web based game.


There is no formal requirement to attend. But you should be familiar to some extent with basic web design and/or programming. If you have already completed one or more of the following courses at the Angewandte you are all set:

* Web Design 1 or 2
* Creative Coding 1 or 2
* Physical Computing
* Grundlagen des Programmierens

If you have not visited any of these or similar courses and are not sure, and if you did not learn those skills in some other settings on your own, you still can attend and get up to speed with additional materials pointed out in the first session. It just means, that you will have an increased workload until the third session. In case of doubt please send an e-mail to , then we can discuss if it makes sense for you to participate.

ECTS breakdown:

2 ECTS = 50 hours

* 20 hours: scheduled teaching sessions
* 15 hours: exercises alongside the teaching sessions
* 5 hours: peer code review & feedback
* 10 hours: final project

Examination Modalities

Grading will be based on:

* 25%: Attendance & active participation
* 25%: 5 coding exercises after sessions 2, 3, 4, 5, and 6
* 25%: Peer code review & feedback
* 25%: Final mini project


Blocked, roughly every other week, on Wednesdays from 14:00 to 17:00. Online consultation for your exercises is available at the same time in the weeks where no sessions are scheduled. For detailed schedule see dates below.

BYOD policy:

Please bring your own device (ideally a laptop computer), to get most out of the course, as part of the course sessions will facilitate hands-on exercises in coding. In case you do not have a laptop or cannot bring one, it is possible to team up with another person with laptop. You can also send a mail to and we might find some spare device that you can use for the course.

Key Words

coding, programming, web development, HTML, CSS, Javascript, games, digital art, computational art, creative coding, Programmieren, Spiele, Webentwicklung, Computerkunst, Medienkunst, Digitale Kunst, media art


13 October 2021, 14:00–17:00 Seminar Room 24 , "Intro & evaluation of expectations & tooling" (preliminary discussion)
27 October 2021, 14:00–17:00 Seminar Room 24 , "HTML, CSS & JS basics refresher"
17 November 2021, 14:00–17:00 Seminar Room 24 , "Advanced Javascript, ES6 and beyond, jquery"
24 November 2021, 14:00–17:00 Seminar Room 24 , "Typing game ; additionally online per Zoom"
15 December 2021, 14:00–17:00 Seminar Room 24 , "State & storage, memory game ; additionally online per Zoom"
12 January 2022, 14:00–17:00 online: Artful Coding Zoom Room , "HTML5 Canvas & jumping block game"
26 January 2022, 14:00–17:00 online: Artful Coding Zoom Room , "Final mini project, recap, closing"

Course Enrolment

From 13 September 2021, 05:23 to 11 October 2021, 23:05
Via online registration
via email:

co-registration: possible

TransArts - Transdisciplinary Arts (Bachelor): Artistic and art technology foundations: Artistic and art technology foundations

Cross-Disciplinary Strategies (Master): Study Areas: Study Area 2: Science and Technology

Design: Specialisation in Graphic Design (2. Section): Technical Basics: Human Computer Interaction

Industrial Design (1. Section): Transfer Techniques: Experimental Lab

Fine Arts (2. Section): Artistic Practice in Technical Context: Workshops

Fine Arts (2. Section): Artistic Practice in Technical Context: Free Electives out of Artistic Practice in Technical Context

Design: Specialisation in Applied Photography and Time-based Media (2. Section): Technical Basics: Applied Photography - Ways of Presentation

Cross-Disciplinary Strategies (Bachelor): Science and Technology: Deepening / Application

Individual courses: possible