Course Objective
Everyone uses the Web, but how was it originally built, how has it evolved to what it is now, and how might it further develop in the future? The objectives of this course are to enable the student to formulate answers to these questions. While the course is primarily focused on technological aspects, as a professional in academia or industry, you need to be able to relate technological developments on the Web to relevant trends in science and society in general. At the end of the course, students will be able to:
- Knowledge and understanding: Understand, on an introductory level, the key ideas, languages and protocols underlying the Web.
- Applying knowledge and understanding: Be able to apply this knowledge by designing and implementing a basic Web application.
- Making judgements: Be able to validate and reflect on the impact of technical design decisions on the functionality and usability in a Web context.
Course Content
The lectures and online materials teach you the key ideas languages and protocols underlying the Web. These ideas include separation of concerns in terms of content versus style and client versus server, the notion of device independence. Important Web languages and protocols include URI, HTTP, HTML, CSS and JavaScript. By participating in the practical sessions and by making the assignments, you will develop the skills you need to apply these techniques to create basic Web content yourself, and to systematically validate and assess more advanced Web content made by yourself and others. The course will teach you the basic building blocks of the Web as it is today, and understanding how they are related will also help you understand future developments. During the course, you will:
- create your own HTML content and formally validate it on syntactical correctness
- create you own CSS style sheets to render the same HTML content differently on different devices
- apply JavaScript code made by yourself or others and use it to enrich the interactive behavior of your own Web content, and learn how to debug such applications
- build a Web server with a RESTfull HTTP API
- write a technical report in which you evaluate your own website on international accessibility criteria and reflex on your previous assignments