Web Programming 1
The course presents the web as an open, distributed information system and follows its operation from the first network request to modern web applications. After the basic concepts (URL, HTTP, DNS, TCP, TLS), it covers the browser and the web document, data exchange between programs (APIs, JSON, XML, REST, GraphQL, RPC) and rendering strategies. It then turns to state, identity and access (cookies, sessions, tokens, OAuth 2.0, OpenID Connect), the basics of web security (same-origin policy, CORS, XSS, CSRF, injection), accessibility, performance and reliability.
The course does not teach a particular framework or programming language, but lasting concepts built on standards and the connections between them. The material is theoretical; the outputs and measurements come from real, executed examples that students do not need to run again.
What is the web?
The first chapter shows that the web is one service of the internet, and why it touches most areas of computing. It presents the development of the web from documents to applications, the main actors, the client–server model and layering, and the open standards that make worldwide cooperation possible. Here you also meet the shared example of the course: Kurzuspont, a university course catalogue. ^53a072
Web addresses and HTTP basics
The second chapter presents the language of web communication. URLs tell us where a resource is, and HTTP tells us how to request it and how the server responds. We go through the structure of requests and responses, the methods, the status codes, the headers, and the content types, and along the way we read real messages obtained by running tools. This is the foundation also for APIs, login, and security.
The browser and the web document
The third chapter moves to the client side. It shows how HTML, CSS, and JavaScript share the tasks of the web interface, how the text sent by the server becomes the browser's document model, and how the page seen on the screen is displayed from it. It covers the loading of resources, the differences between browsers, and progressive enhancement, and what the browser can and cannot do as a programmable environment.
The complete path of a web request
The fourth chapter follows what happens between the address typed into the address bar and the page appearing on the screen. We go through name resolution, building the TCP and TLS connection, the HTTP versions, the limits of HTTPS protection, intermediaries and CDNs, and then string the whole path together into a single process. At the end of the chapter we look at where delay and errors arise, and how to infer the right layer from a symptom.
Web data and APIs
The fifth chapter examines how programs communicate with each other on the web. It presents what an API is and what a contract means, how JSON and XML describe data, and what approaches an API can be built on: resources (REST), field selection (GraphQL), or operations (RPC). It also covers refreshing changing data (polling, SSE, WebSocket, webhook), and handling the evolution and documentation of APIs.
Web applications and rendering strategies
The sixth chapter examines how a web application is built and where the interface seen by the user is produced. It compares multi-page and single-page applications, as well as client-side, server-side, and static rendering, showing the differences on the same course list. It also covers navigation and client-side state, the role of the service worker in offline operation, and finally the considerations for choosing an architecture.
State, identity, and access
The seventh chapter shows how the web creates continuity and identity on top of stateless HTTP. It covers the place of application state, cookies and server-side sessions, browser storage and tokens, and the difference between authentication and authorization. The chapter closes with OAuth 2.0, OpenID Connect, and single sign-on, which entrust login and the delegation of access to an external provider.
Web security basics
The eighth chapter begins the protection of web systems with a way of thinking: what do we protect, from whom, and where does data cross a trust boundary. It presents the browser's isolation rules (same-origin policy, CORS), then the three most important families of attack, XSS, CSRF, and injection, on real, executed examples. It covers the protection of passwords, multi-factor authentication, and sessions, and closes with a security review in the spirit of OWASP.
The quality web
The ninth chapter examines what makes a web service good from the user's point of view. We go through accessibility and the role of semantic HTML, responsive and device-independent presentation, user-perceived performance and the Core Web Vitals metrics, searchability and content quality, and finally privacy, tracking, and digital ethics. In the chapter we also see real, executed measurements on a faulty and a fixed course page.
The tenth chapter examines what keeps a web service usable even when errors happen or the load is high. We go through the concepts of service quality and availability (SLI, SLO, SLA), the handling of errors and communication with the user, the relationship between response time and capacity, and the HTTP cache and the CDN. The chapter closes with handling load peaks, observability, and the trade-offs among performance, security, and cost.
Web Programming 1
The course presents the web as an open, distributed information system and follows its operation from the first network request to modern web applications. After the basic concepts (URL, HTTP, DNS, TCP, TLS), it covers the browser and the web document, data exchange between programs (APIs, JSON, XML, REST, GraphQL, RPC) and rendering strategies. It then turns to state, identity and access (cookies, sessions, tokens, OAuth 2.0, OpenID Connect), the basics of web security (same-origin policy, CORS, XSS, CSRF, injection), accessibility, performance and reliability.
The course does not teach a particular framework or programming language, but lasting concepts built on standards and the connections between them. The material is theoretical; the outputs and measurements come from real, executed examples that students do not need to run again.
What is the web?
The first chapter shows that the web is one service of the internet, and why it touches most areas of computing. It presents the development of the web from documents to applications, the main actors, the client–server model and layering, and the open standards that make worldwide cooperation possible. Here you also meet the shared example of the course: Kurzuspont, a university course catalogue. ^53a072
Web addresses and HTTP basics
The second chapter presents the language of web communication. URLs tell us where a resource is, and HTTP tells us how to request it and how the server responds. We go through the structure of requests and responses, the methods, the status codes, the headers, and the content types, and along the way we read real messages obtained by running tools. This is the foundation also for APIs, login, and security.
The browser and the web document
The third chapter moves to the client side. It shows how HTML, CSS, and JavaScript share the tasks of the web interface, how the text sent by the server becomes the browser's document model, and how the page seen on the screen is displayed from it. It covers the loading of resources, the differences between browsers, and progressive enhancement, and what the browser can and cannot do as a programmable environment.
The complete path of a web request
The fourth chapter follows what happens between the address typed into the address bar and the page appearing on the screen. We go through name resolution, building the TCP and TLS connection, the HTTP versions, the limits of HTTPS protection, intermediaries and CDNs, and then string the whole path together into a single process. At the end of the chapter we look at where delay and errors arise, and how to infer the right layer from a symptom.
Web data and APIs
The fifth chapter examines how programs communicate with each other on the web. It presents what an API is and what a contract means, how JSON and XML describe data, and what approaches an API can be built on: resources (REST), field selection (GraphQL), or operations (RPC). It also covers refreshing changing data (polling, SSE, WebSocket, webhook), and handling the evolution and documentation of APIs.
Web applications and rendering strategies
The sixth chapter examines how a web application is built and where the interface seen by the user is produced. It compares multi-page and single-page applications, as well as client-side, server-side, and static rendering, showing the differences on the same course list. It also covers navigation and client-side state, the role of the service worker in offline operation, and finally the considerations for choosing an architecture.
State, identity, and access
The seventh chapter shows how the web creates continuity and identity on top of stateless HTTP. It covers the place of application state, cookies and server-side sessions, browser storage and tokens, and the difference between authentication and authorization. The chapter closes with OAuth 2.0, OpenID Connect, and single sign-on, which entrust login and the delegation of access to an external provider.
Web security basics
The eighth chapter begins the protection of web systems with a way of thinking: what do we protect, from whom, and where does data cross a trust boundary. It presents the browser's isolation rules (same-origin policy, CORS), then the three most important families of attack, XSS, CSRF, and injection, on real, executed examples. It covers the protection of passwords, multi-factor authentication, and sessions, and closes with a security review in the spirit of OWASP.
The quality web
The ninth chapter examines what makes a web service good from the user's point of view. We go through accessibility and the role of semantic HTML, responsive and device-independent presentation, user-perceived performance and the Core Web Vitals metrics, searchability and content quality, and finally privacy, tracking, and digital ethics. In the chapter we also see real, executed measurements on a faulty and a fixed course page.
The reliable, high-performance web
The tenth chapter examines what keeps a web service usable even when errors happen or the load is high. We go through the concepts of service quality and availability (SLI, SLO, SLA), the handling of errors and communication with the user, the relationship between response time and capacity, and the HTTP cache and the CDN. The chapter closes with handling load peaks, observability, and the trade-offs among performance, security, and cost.