Students must choose five of the following six constrained-choice courses for a total of 30 EC:
Through a series of practical assignments the students are called to develop programs that incorporate useful features for security purposes. The students have the chance to become familiar with APIs (OpenSSL) for cryptographic operations, such as symmetric/asymmetric encryption, cryptographic hashing, cryptographic protocols, digital certificates, encrypted sockets, and SSL/TLS.
Deep understanding of core cryptography is not needed. Basic concepts of cryptography are introduced and refreshed in the course. The focus is mostly on using cryptographic elements for software development.
Advanced Network Programming
The course covers recent advancements in networking technologies in general-purpose computing. It focuses on two main themes:
End-host networking and network infrastructure. For the practical assignment, students will have to design, implement, and benchmark a distributed key-value using RDMA networking technology on the DAS-5 cluster.
This course gives an introduction to the internals of modern compilers and allows students to gather practical, hands-on experience on building compiler components.
Concurrency & Multithreading
This course provides a comprehensive presentation of the foundations and programming principles for multicore computing devices. Learning objectives are: fundamental insight into multicore computing; algorithms for multicore computing; analyzing such algorithms; concurrent data structures; multicore programming.
This course provides students with basic knowledge of functional programming (using Haskell) and its foundations via lambda-calculus and equational reasoning.
Project Autonomous Driving*
Project Autonomous Driving is a course that builds on the course Pervasive computing. Notice that Pervasive Computing is therefore a prerequisite for this course. The main goal is to build and program the agent for a microcontroller‐based autonomous car. At the end of the project, the students participate in an international competition organized yearly by NXP.
*Only a maximum of 20 students can participate in this course. See study guide for more details about the selection procedure.
1 semester (30 EC)
This minor is accessible to third-year Computer Science, Artificial Intelligence and Information Sciences bachelor students of VU Amsterdam.
Informatica, Wiskunde en Bedrijf