Jyrki Katajainen: Teaching experience
Courses given
Algorithm Engineering
1st quarter 2016, 14h lectures, 18h seminars, 4h exam monitoring, University of Copenhagen, in English
1st quarter 2017, 14h lectures, 18h seminars, 4h exam monitoring, University of Copenhagen, in English
1st quarter 2018, 14h lectures, 18h seminars, 4h exam monitoring, University of Copenhagen, in English
1st quarter 2019, 14h lectures, 18h seminars, 4h exam monitoring,
University of Copenhagen, in English [more]
Compilers
2nd quarter 2007, 10h lectures, 2h seminars, University of Copenhagen, in Swedish
1st quarter 2008,
11h lectures, 4h exercises, University of Copenhagen, in Swedish
2nd quarter 2009,
11h lectures, University of Copenhagen, in Swedish
Computational Geometry
Nov 1986–Dec 1986, 40h lectures, 20h exercises, University
of Turku, in Finnish
Nov 1990, 9h lectures, Linköping University, in Swedish
Spring 1991, 48h lectures, University of Turku, in Finnish
Computer Architecture
Sept–Nov 2004, 10h lectures, 3h seminars, University of Copenhagen, in Swedish
Nov 2004–Jan
2005, 15h lectures, 3h seminars, 3h exercises, University of Copenhagen, in Swedish
Nov 2005–Jan
2006, 18h lectures, 6h seminars, 12h exercises, University of
Copenhagen, in Swedish
Nov 2006–Jan
2007, 21h lectures, 3h seminars, 12h exercises, University of Copenhagen, in Swedish
1st quarter
2010, 12h lectures, 2h seminars, University of Copenhagen, in English
1st quarter
2011, 12h lectures, 2h seminars, University of Copenhagen, in English
1st quarter
2012, 14h lectures, 2h seminars, University of Copenhagen, in English
Concurrent Programming
Nov 1993, 6h lectures, University of Copenhagen, in Swedish
Nov 1994, 6h lectures, University of Copenhagen, in Swedish
Database Systems
Autumn 1980, 48h lectures, University of Turku, in Finnish
Spring 1983, 56h lectures, University of Turku, in Finnish
Autumn 2000,
12h lectures, 14h seminars, University of Copenhagen, in Swedish
[more]
Spring 2002,
17h lectures, 2h seminars, University of Copenhagen, in English
[more]
Spring 2003,
19h lectures, 2h seminars, University of Copenhagen, in English
[more]
Data Structures
Oct 1986, 20h lectures, University of Turku, in Finnish
Nov 1994, 10h lectures, University of Copenhagen, in English
Jan 1996, 10h lectures, Turku Centre for Computer Science, in Finnish
2nd quarter 2009, 9h lectures, 12h seminars, 7h commentator, University of
Copenhagen, in English
1st quarter 2010, 10h lectures, 12h seminars, 6h commentator, University of
Copenhagen, in English
1st quarter 2011, 10h lectures, 12h seminars, 6h commentator, University of
Copenhagen, in English
1st quarter 2012, 14h lectures, 8h seminars, 4h commentator, University of
Copenhagen, in English
1st quarter 2013, 8h lectures, 8h seminars, 6h commentator, University of
Copenhagen, in English
Generative Software Development
Jan–Feb
2006, 6h lectures, 9h commentator, 4h exercises, University of
Copenhagen, in English
[more]
Generic Programming and Library Development
April–June
2006, 8h lectures, 14h seminars, 8h commentator, University of
Copenhagen, in English
[more]
(Course evaluation)
April–June
2007, 5h lectures, 10h seminars, 8h commentator,
4h exercises, University of Copenhagen, in English
[more]
(Course evaluation)
April–June
2008, 6h lectures, 12h seminars, 8h commentator, 10h exercises, University of Copenhagen, in English
[more]
(Course evaluation)
Information Systems
Autumn 1984, 48h lectures, University of Turku, in Finnish
Introduction to Algorithmics
Mar 1998–Apr 1998, 4h lectures, University of Copenhagen, in Swedish
Nov 1998–Mar 1999,
27h lectures, University of Copenhagen, in Swedish
[more]
Autumn 1999, 52h lectures, University of Turku, in Finnish
[more]
Spring 2000,
28h lectures, University of Copenhagen, in Swedish
4th quarter 2010, 14h lectures, University of Copenhagen, in English
Introduction to Computer Science
Autumn 1982, 24h lectures, University of Turku, in Finnish
Online Algorithms
Nov 2000–Dec 2000,
10h lectures, 2h exercises, University of Copenhagen &
University of Southern Denmark, in English
[more]
Operating Systems
Spring 1994, 12h lectures, University of Copenhagen, in Swedish
Spring 1995, 12h lectures, University of Copenhagen, in Swedish
Spring 1996, 18h lectures, University of Copenhagen, in Swedish
Spring 1997, 16h lectures, University of Copenhagen, in Swedish
Spring 2000, 8h lectures, University of Copenhagen, in Swedish
3rd quarter 2014, 12h lectures, 4h commentator, University of
Copenhagen, in English
3rd quarter 2015, 13h lectures, 14h commentator, University of
Copenhagen, in English
Parallel Algorithms
Apr 1988–May 1988, 22h lectures, 12h exercises, University of Turku, in Finnish
Spring 1989, 8h lectures, Linköping University, in Swedish
Spring 1990, 48h lectures, University of Turku, in Finnish
Autumn 1991, 18h lectures, University of Copenhagen, in English
Autumn 1993, 20h lectures, University of Copenhagen, in Swedish
Dec 1994, 6h lectures, University of Copenhagen, in English
Spring 1995, 20h lectures, 10h exercises, Turku Centre for
Computer Science, in English
Dec 1995, 8h lectures, University of Copenhagen, in English
Performance Engineering
Jan 1998, 20h lectures, 10h exercises, Turku Centre for Computer
Science, in English
Spring 1998, 24h lectures, 12h exercises, University of
Copenhagen, in English & Swedish
Autumn 1998,
18h lectures, 6h commentator, 20h exercises, University of
Copenhagen & Lund University, in Swedish
[more]
Spring 2000, 14h lectures, 6h seminars, 16h exercises, University
of Copenhagen, in Swedish
Spring 2001, 10h lectures, 8h seminars, 16h exercises, University
of Copenhagen, in Swedish
[more]
Principles of Computer-Systems Design
2nd quarter 2013, 8h lectures, 2h seminars, 2h commentator, University of
Copenhagen, in English
Randomized Algorithms
Dec 1990, 5h lectures, University of Turku, in Finnish
Spring 1995, 10h lectures, University of Copenhagen, in English
Requirements Development
Aug 2008–Oct 2008, 2h lectures, 4h seminars, 12h commentator, University of
Copenhagen, in English (Course analysis)
Simulation
Spring 1981, 30h lectures, University of Turku, in Finnish
Autumn 1982, 24h lectures, University of Turku, in Finnish
Software Development
3rd quarter
2008, 9h lectures, 11h seminars, 7h commentator,
6h exercises, University of
Copenhagen, in English & in Swedish
[more]
(Course evaluation)
3rd quarter 2009, 8h lectures, 17h seminars, 7h commentator,
8h exercises, University of
Copenhagen, in English & in Swedish
Spring 2010, 4h lectures, 18h seminars, 10h commentator, 6h exercises,
University of Copenhagen, in English
Spring 2016, 13h lectures, 12h seminars, 12h commentator, 6h
exercises, University of Copenhagen, in English & in Swedish
Software Tools
Autumn 2001, 15h lectures, 9h seminars,
18h exercises, University of Copenhagen, in Swedish
[more]
Theory of Science
2nd quarter 2013, 1h lecture, 17h commentator, University of
Copenhagen
2nd quarter 2014, 1h lecture, 3h seminars, 23h commentator, 3h exercises, University of
Copenhagen
Seminar series led
Approximation Algorithms
Autumn 1992, 30h, University of Copenhagen (jointly with Pawel Winter)
Building an Algorithm Library
Spring 1990, 24h, University of Turku (topic: Adaptive Sorting)
Autumn 2000,
32h, University of Copenhagen
[more]
(jointly with Lars Yde; topic: The
CPH STL)
Spring 2001,
22h, University of Copenhagen
[more]
(jointly with Lars Yde; topic: The
CPH STL)
Capstone Projects
Autumn 2003, 8h, University of Copenhagen
History of Algorithmics
Autumn 1997, 24h, University of Copenhagen
Information Systems
Autumn 1980, 20h, University of Turku
Autumn 1984, 24h, University of Turku
Managing Massive Data Sets
Autumn 1999, 20h, University of Turku
Orientation to a Profession in Computing Industry
Autumn 1984, 24h, University of Turku
Parallel Algorithms
Autumn 1992, 30h, University of Copenhagen (jointly with Jens Clausen)
Autumn 1994, 30h, University of Copenhagen (jointly with Jesper Larsson
Träff)
Practical Data Structures and Algorithms
Autumn 2002, 24h, University of Copenhagen (Course analysis)
Programming and Research
Spring 1991, 24h, University of Turku (topic: Proximity Problems in
Computational Geometry)
Autumn 1994, 30h, University of Copenhagen (topic: In-Place Algorithms)
Autumn 1996, 30h, University of Copenhagen (topic: Structured Document
Processing)
Autumn 2006,
12h, University of Copenhagen (topic: 6th STL Workshop)
[more]
Thesis Seminar
Spring 2002, 30h, University of Copenhagen
[more]
Autumn 2005, 18h, University of Copenhagen
Software created for teaching purposes
Department of Computer Science, University of Turku, Finland
In 1981 I wrote an object-based program which consisted of a
collection of
routines to be used for the manipulation of a family tree.
The task to extend this program with some small routine was given as one of the first
programming exercises for all students taking a course on Pascal.
The program went into retirement in 1999 when Pascal was removed from
the curriculum.
I could never imagine that a program written in dark nights in a hurry
would be used 18 years to teach students how to use pointers.
Department of Computer Science, University of Copenhagen, Denmark
In Autumn 2000, the project the CPH STL,
which is the first bigger development project I have undertaken, was
started. The Standard Template Library (STL) is part of the ISO
standard for C++ .
The purpose of this project is:
to study and analyse existing specifications for and
implementations of the STL,
to design alternative/enhanced versions of individual STL
components, and
to implement and document the new versions.
This library
is a
valuable resource of marvellous teaching material, and, in addition to
this, its implementation offers interesting research challenges.
For more
information about the project, see the CPH STL website:
http://www.cphstl.dk/.
M.Sc. students supervised
Jukka Somelo
Tietokonepohjaisesta informaatiopalvelusta,
Department of Computer Science, University of Turku (1985)
Outi Kaarela
Ohjelmistoapuvälineet ja niiden integrointi ohjelmointiympäristöksi,
Department of Computer Science, University of Turku (1985)
Ville Leppänen
Rinnakkaislaskennan mallit ja niiden väliset
simuloinnit, Department of Computer Science, University of Turku
(1991)
Tomi Pasanen
Lajittelu minimitilassa,
Department of Computer Science, University of Turku (1993)
Ramzi Fadel & Kim Vagn Jakobsen
Data structures and algorithms in a two-level memory,
Department of Computer Science, University of Copenhagen (1996)
[ps]
Michael Lykke
Experimental evaluation of minimum-cost flow algorithms,
Department of Computer Science,
University of Copenhagen (1997)
Co-supervisor: Jakob Krarup
Maz Spork
Design and analysis of cache-conscious programs,
Department of Computer Science,
University of Copenhagen (1999)
[ps]
[pdf]
Morten Nicolaj Pedersen
A study of the practical significance of
word RAM algorithms for internal integer sorting, Department of Computer Science,
University of Copenhagen (1999)
[ps]
Anders Sewerin Johansen
SENSE — delt lager på netværk
af arbejdsstationer, Department of Computer Science, University of
Copenhagen (1999)
[ps]
Adam Arndt
Anvendelse af internet til intellektuelt samarbejde,
The IT University of Copenhagen (2000)
[doc]
Co-supervisors:
Peter Carstensen and Morten Thaning Vendelø
Jesper Bojesen
Managing memory hierarchies,
Department of Computer Science,
University of Copenhagen (2000)
[ps]
Rasmus Borch
SQL99s objektmodel — teori og praksis,
Department of Computer Science,
University of Copenhagen (2001)
[pdf]
Co-supervisor: Troels Andreasen
Sofus Mortensen
Refining the pure-C cost model,
Department of Computer Science,
University of Copenhagen (2001)
[pdf]
Lars Yde
Supporting intellectual work through rendering and review,
Department of Computer Science,
University of Copenhagen (2001)
[pdf]
Hans-Henrik Stærfeldt
Protein-protein interaction: Heuristic search in databases of 3d
protein structures,
Department of Computer Science,
University of Copenhagen (2002)
[ps.gz]
Jesper Holm Olsen and Søren Christian Skov
Cache-oblivious algorithms in practice,
Department of Computer Science,
University of Copenhagen (2002)
[html]
Jeppe Nejsum Madsen
Methods for interactive constraint satisfaction,
Department of Computer Science, University of Copenhagen (2003)
[html]
Frederik Rønn
Cache-oblivious searching and sorting,
Department of Computer Science, University of Copenhagen (2003)
[html]
Christopher Derek Curry
Reengineering a university department,
Department of Computer Science, University of Copenhagen (2004)
[html]
Fabio Vitale
An investigation into efficient priority queues,
Department of Computer Science, University of Varese (2006)
[pdf]
Co-supervisor: Paolo Massazza
Andrei Bjarke Moskvitin Josephsen
Sekventiel lagringsstruktur og dets anvendelser,
Department of Computer Science,
University of Copenhagen (2006)
[pdf]
Claus Jensen
Theoretical and practical efficiency of priority queues,
Department of Computer Science,
University of Copenhagen (2006)
[html]
Csaba Gulyás
Creation of a Bayesian network-based meta spam filter, using the
analysis of different spam filters,
Department of Measurement and Information Systems,
Budapest University
of Technology and Economics (2006)
[pdf]
Co-supervisor: Péter Antal
Jacob de Fine Skibsted and Stephan Lynge Herlev Larsen
Distributing usage of bandwidth for on-demand streaming,
Department of Computer Science, University of Copenhagen (2007)
[html]
Co-supervisor: Per Høgh
Kasper Egdø
A software transactional memory library for C++ ,
Department of Computer Science,
University of Copenhagen (2008)
[html]
Michael Neidhardt
Robusthed i geometriske algoritmer,
Department of Computer Science,
University of Copenhagen (2008)
[html]
Klaus Byskov Hoffmann
Domain-driven design in action: Designing an identity provider,
Department of Computer Science,
University of Copenhagen (2009)
[html]
Anders Thøgersen
Searching for similar binding sites,
Department of Computer Science, University of Copenhagen
(2009)
[html]
Bo Simonsen
Foundations of an adaptable container library,
Department of Computer Science,
University of Copenhagen (2009)
[html]
Jesper Alf Dam
DikuSTM: A transactional memory library for C++ and C++0x,
Department of Computer Science, University of Copenhagen (2010)
[html]
Søren Gade
Slutbrugerudvikling: Tilgængelighed og manipulation af data
inden for kontaktallergiforskning,
Department of Computer Science, University of Copenhagen (2010)
[html]
Ramón Salvador Soto Rouco
Efficient algorithms and data structures on multi-core computers,
Department of Computer Science,
University of Copenhagen (2010)
[html]
Asger Bruun
Tuning af CPH STLs
komponentstrukturer for smeltbare prioritetskøer,
Department of Computer Science,
University of Copenhagen (2010)
[html]
Jens Peter Svensson
Design og implementering af programbiblioteket CPH collections,
Department of Computer Science, University of Copenhagen (2011)
[html]
Sune Tougaard-Andersen
Efficient chip-multi-processor programming,
Department of Computer Science, University of Copenhagen (2011)
[html]
Mikkel Abrahamsen
Constant-workspace algorithms for
visibility problems in the plane,
Department of Computer Science, University of Copenhagen (2013)
[pdf]
Jacob Jepsen
GPU programming made easier,
Department of Computer Science, University of Copenhagen (2014)
[html]
Henrik Thorup Andersen
A study of I/O efficient maps and sets,
Department of Computer Science, University of Copenhagen (2016)
[html]
Lukasz Kozlowski
Domain-driven design in finance: Designing bond pricing validation
software,
Department of Computer Science, University of Copenhagen (2016)
[confidental]
Industrial partner: Nordea
Michael Friis
A system concept combining blood glucose and insulin injection data
in the treatment of people with type 1 diabetes: An industrial
innovation project,
Department of Computer Science, University of Copenhagen (2016)
[confidental]
Industrial partner: Novo Nordisk A/S
Ask Neve Gamby
Expected linear-time convex-hull algorithms: Investigation into
possible improvements of the running times in the planar case,
Department of Computer Science, University of Copenhagen (2017)
[open to public: no]
Marius-Florin Cristian
The minimum-spanning-tree problem—The road to linear complexity,
Department of Computer Science, University of Copenhagen (2018)
[open to public: no]
|