Topic outline

  • Web Software Development (CS-C3170)

    The course Web Software Development teaches you what web applications are, how they function, and how to build them. There are two versions of the course: (1) a self-study version that is available throughout the year, and (2) a lectured version that is available in the second period in the fall.

    If you wish to take the self-study version, you can already head to https://fitech101.aalto.fi/web-software-development/, which has the up-to-date self-study materials (available until the end of the year), or skip to the end of this page to request grading. If not, read onwards.

    The lecture version will have updated materials and grading when compared to the self-study version. The materials will be released periodically starting from the beginning of the lecture course. During the lectures, we go over broader concepts of web software development and also visit plenty of practical examples of building web applications. The lectured version will also have an online material similar to the self-study version -- the materials for the lectured version will replace the self-study materials at the beginning of 2024.

    The tentative content and schedule for the lectured version is as follows:

    • Week 1: Elements of web applications and web application frameworks (HTTP, requests and responses, extracting information from requests). Storing key-value data. HTML and View Templates.
    • Week 2: Forms, CRUDs, Data validation, Cookies and sessions, Authentication and Authorization, Middlewares
    • Week 3: User management, Application structure, Testing, Evolution of web development
    • Week 4: Containerization, Working with Databases, APIs, Elements of client-side web development
    • Week 5: Building client-side web applications, reactivity and event handling on the client, state management, APIs on client
    • Week 6: Client-side authentication, Layouts and application structure, Styling web applications with CSS, End-to-end testing
    • Week 7: Web security basics, Docker and deployment, Other frameworks and languages.
    • Week 8: Finishing coursework.


    Link to course materials: https://fitech101.aalto.fi/web-software-development-2-0/ -- please register to the materials with your @aalto.fi email account.

    The course grade is based on completed coursework (more on this in the materials). Attending the lectures is not mandatory.