Teaching Cloud Computing with Chameleon: Making Complex Concepts Accessible
How Chameleon Cloud Transforms Computer Science Education Across Europe
- May 27, 2025 by
- Massimo Canonico
Editor's Note
Chameleon Cloud serves a vibrant community of educators across US universities who are transforming how computer science is taught through hands-on cloud computing experiences. The international collaborations highlighted in this story represent the kind of academic knowledge sharing that strengthens educational practices globally. Through our user community meetings focused on educational applications—including our 2023 User Meeting's education mini-symposium with its theme of "teaching with testbeds"—we've seen how best practices developed on Chameleon inspire educators worldwide. Researchers like Massimo Canonico, who has shared educational slide decks and teaching resources with the Chameleon community, exemplify how knowledge flows bidirectionally: international partnerships enhance educational methodologies that benefit classrooms both abroad and here in the United States.
3rd year Software Architecture class 24/25, Universidade da Coruña
Being a computer science professor, I've consistently stressed the importance of practical exercises in my lessons. Explaining the workings of cloud computing proved to be a very complex challenge from the outset due to several factors. Establishing a local datacenter is far from straightforward, and the initial cloud service providers (like Amazon and Google) mainly offered paid access (you needed to provide your credit card details) or highly limited access (those famous free tiers are essentially machines where you can't run much of practical value). And this is where the Chameleon Cloud project steps in, like the superhero in movies who saves the day.
Research Overview
The Chameleon Cloud project has given me the possibility to offer my students a real hands-on experience of interacting with a cloud platform, free from access limitations and even using hardware that is often unavailable even in university science departments. While the course naturally starts with a theoretical introduction to cloud computing, the practical aspect is crucial for addressing the challenges that are merely outlined in the theoretical part.
Cloud computing represents a fundamental shift in how we think about computing resources, moving from ownership to service-based models. For students to truly understand concepts like elasticity, scalability, and distributed systems, they need to experience these concepts firsthand rather than just reading about them in textbooks.
Educational Activities on Chameleon
The learning process starts with the straightforward task of launching a simple virtual machine through the Horizon web interface. From there, embracing their roles as computer scientists, students move on to using the terminal to automate tasks, leveraging Python libraries like Libcloud or Python-Chi. This empowers them to build sophisticated scenarios.
For example, they can create a setup where, if a virtual machine's CPU load surpasses a defined limit, a new, more robust VM is automatically created, and data is transferred using volumes or snapshots (the storage provided by OpenStack) to continue the computation seamlessly. Despite the limited time (24 hours of direct instruction), my aim is to expose the students to almost all the functionalities provided by Chameleon Cloud, including: VM management, volume and snapshot management, security groups, load balancers, User Data, floating IPs, and the utilization of bare metal instances.
The hardware catalog and host availability browser are particularly useful features that allow students to understand the physical infrastructure underlying cloud services, something impossible with traditional commercial cloud providers.
Educational Artifacts
I've always been a firm believer in the power of shared knowledge. Being aware of my own limitations, and knowing that teaching Cloud Computing involves so many different facets, I realize I can't be an expert in everything, even with the best intentions. That's why I created a website (tcc.uniupo.it) where I share all my teaching materials – slides, scripts, and tutorials – and I've also written a free ebook.
I love to teach, and thanks to Chameleon Cloud and the Erasmus+ project, I'm now sharing my knowledge of cloud computing not only here in Italy but also throughout Europe. In recent years, Chameleon Cloud has been a significant part of the computer science departments at universities in Malta, Norway (in Gjøvik), and Spain (in A Coruña). I'm currently planning the next leg of my 'Chameleon Cloud around the world' tour in France (Nantes).
User Interview
Tell us a little bit about yourself
I'm an associate professor of computer science at the University of Eastern Piedmont, Italy. My background includes studying and doing research in Aberdeen, Scotland, and at the University of California, Santa Barbara. I teach computer networks, mobile app development, and, naturally, cloud computing – a topic I'm particularly passionate about making accessible to everyone. My vision is for everyone to understand the fundamental importance of this technology, not just those in the field of computer science. When I'm not engaged in research and teaching, you'll find me playing soccer, working in my home garden and vegetable patch, or organizing cultural events with the association I'm part of.
Most powerful piece of advice for students beginning research or finding a new research project?
Maintain the curiosity of a child: approach things with the same enthusiasm and sense of wonder.
How do you stay motivated through a long research project?
Cloud computing is something that changes every year if you plan to keep up-to-date on your course. You never get bored.
Have you ever been in a situation where you couldn't do an experiment that you wanted to do? What prevented you from doing it?
In cloud computing, you're not in direct control of the hardware or the network, so it's pretty common to run into situations where you can't do what you wanted. You just have to get used to it and deal with it calmly, always having a plan B ready to go.
Teaching from Edge to Cloud at the University of Missouri
This month, we're featuring an interview with Professor Prasad Calyam, a distinguished educator and researcher at the University of Missouri-Columbia.
- Aug. 21, 2023 by
- Alicia Esquivel
This month, we're featuring an interview with Professor Prasad Calyam, a distinguished educator and researcher at the University of Missouri-Columbia. In the interview, he shares insights on effectively utilizing innovative tools like testbeds for teaching, offering valuable recommendations based on his own experiences.
Educating with Chameleon at Vanderbilt
- July 17, 2023 by
- Aniruddha Gokhale
This month we present an interview with Aniruddha Gokhale, Full Professor of Computer Science and Engineering at Vanderbilt University who is using Chameleon to teach classes on cloud computing, computer networks, and distributed systems. Professor Gokhale discusses the challenges of teaching with testbeds, explains how he managed to overcome it in his own teaching, and shares recommendations on how to best leverage the power of testbeds in the classroom.
Using Chameleon for HPC Education: an OpenMP Tutorial
- May 30, 2023 by
- Jose Manuel Monsalve Diaz
This month we present an interview with Jose Monsalve Diaz who is using Chameleon for HPC education. Jose and his colleagues developed an OpenMP tutorial that has been presented at multiple conferences, received an honorable mention by the Better Scientific Software Fellowship, and has lowered the barrier to participation in HPC for many who would not have had access to acquiring this type of knowledge otherwise. The blog discusses the challenges of teaching high-performance computing, explains how an open bare metal platform works to support it, and presents links to the tutorial materials on Chameleon that can help you develop your own tutorials!
Chameleon for Education: IIT’s Intro to Parallel Programming
- Aug. 23, 2021 by
- Melanie Cornelius
Interested in using Chameleon for education? Illinois Institute of Technology’s TA and PhD candidate Melanie Cornelius and Dr. Zhiling Lan use Chameleon for undergraduate and graduate students in their Intro to Parallel Programming and Parallel and Distributed Processing classes. Learn all about how the course is structured, incorporating Chameleon into assignments, and tips for using Chameleon for education.
Teaching High Performance Computing with Chameleon
- Sept. 18, 2019 by
- Massimo Canonico
This post from Chameleon user, Massimo Canonico, outlines educational slide decks that will be particularly helpful for those who wish to incorporate Chameleon into their curriculum.
Getting started with Chameleon
- Dec. 11, 2017 by
- Joon Yee Chuah
Are you a first time Chameleon user? In this article, we're going to feature on-boarding videos from Chameleon's YouTube channel. It's a great way of learning how to sign up for an account, reserve hardware and launch and access your first Chameleon instance.
No comments