Skip to main content
Till KTH:s startsida

DD2585 Programmable Society with Blockchains and Smart Contracts 7.5 credits

The course is about software design with blockchain and smart contracts. It will prepare you to become an active member of the future programmable society that is being invented at the moment. This course will enable Sweden and Stockholm’s software industry to be at the forefront of digital transformation through blockchain, distributed ledger technology and smart contracts. The course follows a flipped classroom pedagogy.

Information per course offering

Choose semester and course offering to see current information and more about the course, such as course syllabus, study period, and application information.

Termin

Course syllabus as PDF

Please note: all information from the Course syllabus is available on this page in an accessible format.

Course syllabus DD2585 (Autumn 2025–)
Headings with content from the Course syllabus DD2585 (Autumn 2025–) are denoted with an asterisk ( )

Content and learning outcomes

Course disposition

See https://github.com/KTH/programmable-society

Course contents

  • technology for distributed data (DLT, Distributed Ledger Technology), especially blockchains
  • programming with smart contracts
  • software development for the programmable society
  • current research about distributed ledger technology and smart contracts

Intended learning outcomes

After passing the course, the student shall be able to

  • design, develop and run blockchain protocols and nodes
  • use current programming languages for smart contracts
  • use and improve software engineering for smart contracts (testing, deployment, continuous integration/delivery)
  • explain technology for distributed ledgers (DLT) and smart contracts in different implementation domains (decentralised finance, reporting, law, control with distributed autonomous organisations, digital art)

in order to

  • obtain the necessary skills of a blockchain engineer,

smart contract engineer, web3 engineer or digital artist

  • be able to exercise lifelong learning in fast changeable technology.

Literature and preparations

Specific prerequisites

Knowledge and skills in programming, 6 credits, equivalent to completed course DD1337/DD1310-DD1319/DD1321/DD1331/DD100N/ID1018.

Knowledge in algorithms and data structures, at least 6 higher education credits, equivalent to completed course DD1338/DD1320/DD1325/DD1328/DD1338/DD2325/ID1020/ID1021.

Knowledge in modern software development technology at second-cycle, 7.5 higher education credits, equivalent to completed course DD2480/ID2207.

Knowledge in at least one of the following fields:

• cryptography, 7.5 higher education credits, equivalent to completed course DD2520/DD2448

or

• distributed systems, 7.5 higher education credits, equivalent to completed course ID2201/DD2443

or

• computer security, 6 higher education credits, equivalent to completed course DD2395/DD2391/IV1013/IK2206.

Active participation in a second-cycle course offering where the final examination is not yet reported in LADOK is considered equivalent to completion of the course. Being registered for a course counts as active participation. The term 'final examination' encompasses both the regular examination and the first re-examination.

Literature

You can find information about course literature either in the course memo for the course offering or in the course room in Canvas.

Examination and completion

Grading scale

P, F

Examination

  • PRO1 - Project Work, 7.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.

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

Project-based assessment, both oral and written

Examiner

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 room in Canvas

Registered students find further information about the implementation of the course in the course room in Canvas. A link to the course room can be found under the tab Studies in the Personal menu at the start of the course.

Offered by

Main field of study

Computer Science and Engineering

Education cycle

Second cycle

Supplementary information

In this course, the EECS code of honor applies, see:
http://www.kth.se/en/eecs/utbildning/hederskodex