Web Programming (DAT310)

The course introduces the basic concepts of the World Wide Web, and the principles and tools that are used to develop Web applications. Students will develop a full-scale web application through multiple assignments.

Course description for study year 2023-2024. Please note that changes may occur.


Course code




Credits (ECTS)


Semester tution start


Number of semesters


Exam semester


Language of instruction



The course focuses on the technical skills and design principles required to develop interactive Web applications. Students will learn how web servers, web browsers, client-side scripts, and server-side scripts all interact to produce what people encounter when they access the Web, no matter the device they are using. In particular, the course covers the following:

  • Creating, structuring, and styling web pages using HTML and CSS.
  • Using event-driven programming in Javascript to provide dynamic interaction.
  • Setting up a local web server and development environment.
  • Server-side programming in Python.
  • Accessing and manipulating data in a SQL database.
  • Dynamically displaying content using AJAX.
  • Development of single-page applications.
  • Using various web development frameworks and libraries.
  • Dealing with issues of security, scalability, and cross-browser support.

Learning outcome


  • Client-server communication on the Web, W3C standards, mark-up languages, client-side scripting, server-side programming, accessing and manipulating data.


  • Understand requirements and constraints for web-based applications.
  • Design and implement client-server web applications.
  • Set up and test applications in a local development environment.

General competencies:

  • Design interactive systems that bring users a positive experience.

Required prerequisite knowledge

DAT120 Introduction to Programming


Form of assessment Weight Duration Marks Aid
Project work 1/1 Letter grades

Examination happens through a project, where students working in groups implement a full-stack web application. Two students per group.Students have to deliver a draft for their application early during the project period. This draft is graded as part of the project. The final delivery happens in form of program code with documentation. Additionally, students need to give an oral presentation of their project.If the student does not pass the project, the student must submit a new project next time the course is lectured.

Coursework requirements

Mandatory requirements

8 assignments. At least 6 must be approved.

To participate in the project, mandatory requirements must be approved by the lecturer.

Course teacher(s)

Course coordinator:

Leander Nikolaus Jehl

Head of Department:

Tom Ryen

Study Adviser:

Sheryl Josdal

Method of work

6 hours of lectures/lab exercises each week. Project work i groups. The project lasts for 8 weeks.

Overlapping courses

Course Reduction (SP)
Web programming (BID250_1) 5
Usability (BID180_2) 5
Usability (BID180_1) 5
Usability (TE0308_1) 5
Usability (TE0308_A) 5

Open for

Computer Science - Bachelor in Engineering
Admission to Single Courses at the Faculty of Science and Technology

Course assessment

There must be an early dialogue between the course coordinator, the student representative and the students. The purpose is feedback from the students for changes and adjustments in the course for the current semester.In addition, a digital course evaluation must be carried out at least every three years. Its purpose is to gather the students experiences with the course.


The syllabus can be found in Leganto