Cloud computing is a widely used buzzword that indicates the use of various services, such as software development platforms, servers, storage and software, over the Internet, often referred to as the cloud.
This course introduces the basic primitives to create programs that interact with the cloud, mainly focusing on cloud-native services, hence Kubernetes. The course will present the Go programming language, which represents the best choice for Kubernetes, the basic mechanisms to create software that runs in a Kubernetes-native environment (e.g., Kubernetes operators), and the basic principles of modern software development techniques, namely Git and workflow automation. Students will practice with the above concepts through a group project which will develop a new Kubernetes-native feature in an existing well-established software project.
This course, offered in English, is available to all MSc-level students in Computer Engineering at Politecnico di Torino, although it targets mainly the students belonging to the "computing and network infrastructures" track. This site refers to Academic Year 2024/2025.
This course represents a follo-up of the Cloud Computing Technologies course. It requires good knowledge about cloud-native environments, particularly Kubernetes. Capability to interact with the Linux operating system (commands, scripting, etc.).
The course is taught mainly by lecturers coming from the industry, namely Francesco Cheinasso (ArubaKube), Francesco Cappa (Rakuten), Giuseppe Zangari (ArubaKube), Federico Cucinella (AreaIT, Politecnico di Torino), Marco Mangiulli (Aruba). Prof. Fulvio Risso coordinates the course.
Lectures are streamed live, as well as recorded and made available on the official teaching portal at Politecnico di Torino. Recordings are available only to enrolled students and are are made in a “best effort” way.
To facilitate the interactions among students, and from students and professors, we created a dedicated Slack workspace. Please join at https://cloudprogr.slack.com/join/signup .
This course includes some in-class lectures, and a group project, to be delivered not after summer, and to be carried out by groups of 2-3 people.
The list of proposed projects is available at the Project page.
The exam consists in a public discussion of the project, which includes:
a public presentation, which must present both technical aspects and the "user value" (i.e., why this function is useful and which is the advantage for the user from a business standpoint);
a demo, possibly live;
code committed and merged in the main branch of the "hosting" project (e.g., CrownLabs).
This is the first year of this course.