This is the website for Programming of Interactive systems

Classes are given by Anastasia Bezerianos, and our TA is (Stacy) Shu-Yuan Hsueh


The class is based partially on last year's class, as well as older classes by M. Beaudouin-Lafon, ones by T. Tsantilas, by N. Roussel and by O. Chapuis.

The following people have contributed to the design of the TA excersises : N. Roussel, C. Appert, O. Bau, M. Beaudouin-Lafon, G. Besacier, S. Gueddana, Y. Riche, M. Nancel, D. Bonnet, C. Fleury, A.Prouzeau.


12/09: No TA class this week

Pratical info

You can contact Anastasia or Stacy by email (

Don't forget the [ProgIS] in the title!

Class material


Introduction - Definitions: Slides

Design Cycle: Slides

Practical: Slides

A Moving Target—The Evolution of Human-Computer Interaction by Jonathan Grudin

Why is UX so hard for some developers? by Karl Fast (with several links to useful resources)

A Brief Rant on the Future of Interaction Design by Bret Victor


Introduction to Swing: Slides

Practical: Slides

More about layout: Slides

Code used in today's class (and future classes) can be found here

GUI Programming by Brad Myers (quite old)

Oracle's guidelines for creating UIs in Java

Apple's guidelines for Mac OS applications

C.R.A.P. principles applied to graphic design and UI design


Introduction to Java2D: Slides

Turorials on Java2D


Peripherals, Software Architectures and MVC Slides

MVC examples Slides

Java Swing and MVC and how to use models in Swing


Wrapped up Java2D Slides

Animation Slides

Animation code from today is here


State machines in UI programming Slides


UI Toolkits and event handling Slides

Exam prep Slides

In-Class exercises and homework assignments

H/W 1 and 2 (versions 1 & 2) are online here. H/W 1 (Storyboard) is due on September 19 (in class). Part 2 (Minsweeper) is due on October 3rd in class (version 1) and October 24 in class (version 2). Digital copies should be sent by 23:00 the same day.

TA related work

Exercises in TA sessions

TA material and instructions of what to install on your machine are on the TA site.


The project website is here


The exam will take place on Tue 14 Nov @ 9am, for past Exam topics and solutions see the exam preparations slides