Skip to main content

DD1315 Programming Techniques and Matlab 7.5 credits

An introductory course in programming technique with Python. It also provides a short module to introduce MATLAB.

It's possible to participate in the course remotely.

Course offerings are missing for current or upcoming semesters.
Headings with content from the Course syllabus DD1315 (Spring 2022–) are denoted with an asterisk ( )

Content and learning outcomes

Course contents

Fundamental computer concepts.
Programming in a modern programming language (Python). Data structures and classes. Problem-solving through division into sub-problems. Program structuring. Several smaller programming assignments as well as one larger, individual programming assignment with strong emphasis on structuring and specification of included modules.
Interactive computation, programming and two-dimensional graphical presentation in Matlab.

Intended learning outcomes

Having passed the course, the student should be able to:

  • design programs without code repetitions
  • divide a larger problem in manageable parts
  • divide a program
  • apply control structures
  • design and present user friendly output
  • create flexible applications
  • choose appropriate names of identifiers
  • design interactive programs
  • use and design composite data types (classes)
  • transfer data between file and program,
  • review others' programs
  • handle matrices and use matrix operations in Matlab
  • use existing functions from the Matlab library for computation and visualisation,
  • write own Matlab functions,

in order to be able to

  • use programming to solve problems,
  • apply the problem solving methodology also within other fields than programming,
  • discuss software development with experts
  • assess commercial programs
  • independently and in a group be able to solve problems by designing programs of up to 500 lines in a modern programming language.
  • utilise Matlab as an aid for numerical computations and visualisation in other courses.

Course disposition

No information inserted

Literature and preparations

Specific prerequisites

No information inserted

Recommended prerequisites

High school mathematics (scientific program). Some computer experience (the concepts of operating system and file and experience from one computer application, e.g. word processing).


No information inserted


No information inserted

Examination and completion

If the course is discontinued, students may request to be examined during the following two academic years.

Grading scale

A, B, C, D, E, FX, F


  • LAB1 - Programming Assignments, 1.5 credits, grading scale: P, F
  • LAB2 - Programming Assignments, 1.5 credits, grading scale: P, F
  • LAB3 - Programming Assignments, 3.0 credits, grading scale: A, B, C, D, E, FX, F
  • MAT1 - Programming Assignments, 1.5 credits, grading scale: P, F

Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

The examiner may apply another examination format when re-examining individual students.

Opportunity to complete the requirements via supplementary examination

No information inserted

Opportunity to raise an approved grade via renewed examination

An approved grade can be raised via renewed examination within a year from the start of the course offering. The end of this period normally coincides with the start of next year's corresponding course offering.


Ethical approach

  • All members of a group are responsible for the group's work.
  • In any assessment, every student shall honestly disclose any help received and sources used.
  • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

Further information

Course web

Further information about the course can be found on the Course web at the link below. Information on the Course web will later be moved to this site.

Course web DD1315

Offered by

Main field of study


Education cycle

First cycle

Add-on studies

DD1320 Applied Computer Science and DD1380 Java Programming for Python Programmers.


Daniel Bosk, e-post:

Transitional regulations

Examination can be completed until the autumn semester 2023 within the framework of the course DD1317. The course modules LAB1, LAB2 and LAB3 in DD1315 are replaced by the course modules LAB1, LAB2 respectively LAB3 in DD1317. The laboratory work in the course module MAT1 is reported separately.

Supplementary information

Only one of the following courses may be counted in your degree:
DD100N, DD1310, DD1311, DD1312, DD1314, DD1315, DD1340, DD1341, DD1342, DD1343, DD1345, DN1212, HI1024, HI1026, ID1004, ID1301, SF1511, SF1513, SF1516-SF1519.

In this course, the EECS code of honor applies, see: