Skip to main content

DD1310 Programming Techniques 6.0 credits

A basic course in programming techniques.

Choose semester and course offering

Choose semester and course offering to see information from the correct course syllabus and course offering.

Headings with content from the Course syllabus DD1310 (Autumn 2020–) 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.

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,

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 be able to solve problems by designing programs of up to 500 lines in a modern programming language.

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 some computer application, e.g. word processing). A basic course in Mathematics e.g. SF1624/SF1625 (can be taken concurrently).


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 - Laboratory Task, 1.5 credits, grading scale: P, F
  • LAB2 - Laboratory Task, 1.5 credits, grading scale: P, F
  • LAB3 - Laboratory Task, 3.0 credits, grading scale: A, B, C, D, E, FX, 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 DD1310

Offered by

Main field of study

Information Technology, Technology

Education cycle

First cycle

Add-on studies

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


Vahid Mosavat, tel: 790 9276, e-post:

Supplementary information

Different examiners for different course offerings:

CENMI: Emma Riese
COPEN, CMATD and CELTE: Vahid Mosavat

CMAST and CITEH: Daniel Bosk and Olle Bälter.

You can only count one of the following courses in your degree:
DD100N, DD1310-DD1318, DD1331, DD1337, DD1340-DD1343, DD1345, DN1212, HI1024, HI1026, ID1004, ID1018, ID1201, ID1301, SF1511, SF1513, SF1516-SF1519.

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