Introduction to Programming (DAT120)

The student learns the basic functioning of a computer. The student learns how to write and run software programs using the Python programming language. In addition, the students should learn fundamental ICT security.

Course description for study year 2023-2024


Course code




Credits (ECTS)


Semester tution start


Number of semesters


Exam semester


Language of instruction



The couse is about learning programming in the Python programming language. The students should get a basic understanding of structured and object-oriented programming. The students should be able to write and run their own programs. An important concept is dividing the task the student is solving into modules and programming each module independently. These modules may be functions or classes. The student should learn basic testing of these modules. The student should learn how their programs can get input from the user. The students should learn how their program can store and retrieve data from files on the computer. The student should learn basic use of the Python data structures list, tuple, set and dictionary.

The student should also learn the basics of how computers work and the basics of information security.

The course includes a mandatory module in study techniques

Learning outcome


  • Have a general understanding for how coputers work
  • Have a general understanding of structured programming
  • Have a general understanding of object-oriented programming
  • Know basic terms such as variables, data types, control structures, lists, functions, classes and objects
  • Have a basic understanding of information security
  • Be familiar with some study techniques


  • The students should be able to solve programming tasks using the Python programming language
  • The students should be able to write and run their own programs using control structures, functions, tables, classes and objects
  • The students should be able to use methods from already existing classes, define their own classes and objects, and be able to establish communication between objects
  • The students should know basic use of version control systems

General competencies

  • The students should be able to plan and code runnable software programs

Required prerequisite knowledge



Form of assessment Weight Duration Marks Aid
Written exam 1/1 4 Hours Letter grades Own handwritten or printed notes 1), Valid calculator,

1) You can bring two A4 sheets with your own notes to the exam. The sheets can be handwritten or computer-written. You are allowed to write on both sides.

This course has a digital exam.

Coursework requirements

Mandatory assignments

There will be 10 mandatory assignments in this course where the following have to be approved in order for you to be allowed to take the exam:

  • One of the assignments will include quizzes from the study techniques module
  • The assignment in information security
  • Two group assignments

For the other six assignments, five need to be approved

Course teacher(s)

Course coordinator:

Erlend Tøssebro

Coordinator laboratory exercises:

Per Jotun

Head of Department:

Tom Ryen

Method of work

This course will have two lecture hours per week. In addition, a series of video-lectures will be posted. These video-lectures contain the entire curriculum.

All students can get help for the exercises at a room reserved for the purpose between four and eight hours a week. The exercises are approved by presenting them to the teacher or a student assistant during these hours.

Completion of mandatory exercises are to be made at the times and in the groups that are assigned and published. Absence due to illness or for other reasons must be communicated as soon as possible to the laboratory personnel. One cannot expect that provisions for completion of the exercises at other times are made unless prior arrangements with the laboratory personnel have been agreed upon.

Failure to complete the assigned exercises on time or not having them approved will result in the students being barred from taking the exam of the course.

Overlapping courses

Course Reduction (SP)
Introduction to Programming (DAT110_1) 7
Object-oriented Programming (DAT100_1) 5

Open for

Civil Engineering - Bachelor in Engineering Computer Science - Bachelor in Engineering Control Engineering and Circuit Design, Vocational Path - Bachelor in Engineering Control Engineering and Circuit Design - Bachelor in Engineering Energy and Petroleum Engineering - Bachelor in Engineering Chemistry and Environmental Engineering - Bachelor in Engineering Mechanical Engineering - Vocational Path, Bachelor in Engineering Mechanical Engineering - 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