Writing Smart Contracts


USI Winter School: Writing Smart Contracts (WSC)
Blockchain technology enables the automation of business and finance transactions in an efficient, flexible and trustworthy manner. New and specific skills are needed to fuel this digital revolution. Smart contracts require a distinct way of thinking and a novel programming approach, different from standard procedural programming. 
This course introduces students to the relevant theoretical concepts and provides a hands-on introduction to writing smart contracts on a modern blockchain using the Python programming language. The goal is to equip students with the necessary skills and theoretical background for creating simple smart contracts and for deploying them on the Algorand blockchain.

The third edition of the USI Winter School: Writing Smart Contracts (WSC) will take place from February 12 to 16, 2024.

Course Objectives
After completing the USI WSC winter school, participants will be able to interact programmatically with the Algorand blockchain, extracting information and executing transactions. They will have learnt how to create their own tokens and NFTs as well as how to express simple governance structures, business processes and financial assets as smart contracts. They will be able to implement these smart contracts in Python and to deploy them on the Algorand blockchain. They will understand the differences between functional and contract-oriented programming, as well as the risks specific to smart contract programming. Beyond the technical skills, they will have learnt how to plan and organize individual and group work on smart contracts. While the practical exercises focus on the Algorand blockchain, teaching will emphasize general concepts to facilitate a transfer the skills to other blockchains.

Target Group and Prerequisites
The course is aimed at master or advanced bachelor students in economics or finance as well as practitioners and PhD students. Participants should have at least basic programming skills in Python and a keen interest in the topic. (Students with little Python experience can alternatively complete online tutorials before the begin of the winter school.) No experience with the blockchain is required. While many examples will be from finance and economics, the course is sufficiently general for students from other fields to profit from it. 

Peter Gruber has PhDs in financial economics and particle physics. He is Senior Lecturer at the Università della Svizzera italiana (USI) in Lugano. He has been teaching programming to economics and finance students at USI, St. Gallen, Geneva and Bocconi since 2005. Before this, he was part of the neutrino physics efforts at CERN. His current research interests are asset pricing, blockchain economics, data visualization and data science with non-traditional data sets. 

Course assistants

Mattia Biancaterra is a student in the second year of the Master in Digital Finance. He has worked with the blockchain for several years and is experienced in helping his colleagues understand digital technologies.

Grading and Accreditation
Grading is based on an individual project. Students have six weeks after the end of the winter school for completing the project.

The course can be credited at USI as an elective course with 3 ECTS for the Bachelor in Economics as well as for the Master in Finance, the Master in Financial Technology, the Master in Management and Informatics as well as and the Master in Economics. For other universities, crediting must be ensured by the participant. The number of teaching hours (28) and course work are commensurate with 3 ECTS.


  • Students (bachlor/master, with proof of status) CHF 340

  • PhD students (with proof of status) CHF 440

  • Practitioners and faculty CHF 990

  • Special price for USI bachelor/master students CHF 240

Cancellation policy: Should a participant withdraw before one month from the starting date of the Winter School, no payment will be required (or payment will be reimbursed). After this time, full payment of all fees and tuition is required, but the participant may name a substitute. If a physical presence is not possible (eg because of visa, COVID, etc),  remote participation is ensured.

Follow the link below to register for the Winter School. If your registration is accepted and if there are still places, you will receive a confirmation email with a payment link. Payment is possible by credit card only. Please pay within 15 days.

For questions, send a mail to the course assistant [email protected].

Register here for the 
Writing Smart Contracts winter school from Feb 12 to Feb 16 2024. After entering your details, you will receive a payment link. Payment is possible via credit card or wire payment.