An in-depth course covering most of the popular techniques for creating rich, maintainable and predictable user interfaces. The course will be structured as 7 x 2.5 hrs live-coding lectures in which field experience will be shared by creating a medium scale project from scratch. There will be optional homework which will be entirely and only based on the passed lecture. Gitlab group will be created for those purposes where the lecturer can facilitate code reviews and guidance.