SIFI2100 – Programming: Principles and Practice

Course content

Computational thinking and programming are key competencies in the development of digital technologies.? Software is at the core of all computation. This course will give participants practical programming competencies in the popular Python programming language, including an understanding of foundational concepts such as modularization, abstraction, and algorithm design.

Learning outcome

After completing this course, you can:

  • understand the basic principles and building blocks of algorithms

  • develop programs of moderate complexity in Python

  • identify programming errors and correct them

  • read and navigate Python code written by others

  • apply popular libraries to manipulate various types of data

Admission to the course

Students admitted to the?Digitalization certificate are guaranteed admission to this course. Other students will have to wait until the secondary admission periode (etteranmeldingen) and apply then.

Formal prerequisite knowledge

You must currently be enrolled in a bachelor's programme, be an incoming exchange student at the bachelor's level or be enrolled in integrated 5-year master's programmes or 6-year professional programmes at the University of Oslo (UiO).

Students must have completed at least 60 ECTS at bachelor's level (one year of full-time studies) at the University of Oslo before applying for admission to the course.

You ought to have completed SIFI2000 – Foundations of Digitalization prior to taking this course.

Teaching

The course will combine lecture-style teaching with guided, "hands-on" laboratories and mandatory programming assignments that will be evaluated and graded.?

Two hours of hybrid plenary lecture-style gatherings per week in the first half of the semester.

Two hours of supervised practical laboratories per week in the first half of the semester.

Examination

2 hour digital written exam upon completion of the course, with high proportion of multiple-choice questions and elements of programming.

To qualify for the exam, students need to successfully complete two to three obligatory mandatory assignments.

Examination support material

No examination support material is allowed.

Grading scale

Grades are awarded on a pass/fail scale. Read more about?the grading system.

More about examinations at UiO

You will find further guides and resources at the web page on examinations at UiO.

Last updated from FS (Common Student System) Apr. 8, 2025 5:15:56 PM

Facts about this course

Level
Bachelor
Credits
5
Teaching
Autumn
Teaching language
English