Pods, Probes, and Play: Gamifying Kubernetes with Python

Anubhav Sanyal

Anubhav Sanyal

Day 2 • Sun, Oct 18
10:50 - 11:35
Location
R2
Language
English
Category • Level
Education • Medium

Kubernetes is powerful, but learning it often means reading YAML files, memorising commands, and trying to understand cluster behaviour through abstract tutorials.

In this talk, I present Project Yellow Olive, a Python-powered terminal game that gamifies Kubernetes learning. Learners move through themed challenges, meet characters, receive hints, and fix real Kubernetes resources on a local cluster. Concepts like Pods, Services, Deployments, probes, RBAC, and resource limits become missions to clear rather than topics to memorise.

Built with Textual, Rich, Pygame, and the Kubernetes Python client, Yellow Olive combines game loops, retro terminal UI design, live validation, and hands-on debugging. I’ll share how Python can be used not only for automation, but also to build playful developer tools that make complex infrastructure concepts easier to practise, understand, and remember.

Description

Most Kubernetes learning material is structured like documentation: read a concept, copy YAML, run a command, and move on. Project Yellow Olive explores a different question:

What would Kubernetes learning look like if it were designed like a game?

This talk presents Yellow Olive, an open-source Python project that gamifies Kubernetes practice through a retro terminal experience. Instead of treating Pods, Services, probes, RBAC, and resource limits as isolated topics, the project turns them into missions with goals, hints, validation, feedback, and progression.

Core Idea

The core idea is a learning game loop:

mission → action → cluster change → validation → feedback → unlock next challenge

For example, a learner may enter a themed town, receive a challenge from an in-game character, inspect a broken Kubernetes resource, apply a fix, and get feedback only when the real cluster reaches the expected state.

This makes the game mechanics meaningful: progress is not awarded for clicking a button, but for understanding and changing actual Kubernetes behaviour.

What the Talk Will Cover

  • How to convert Kubernetes concepts into game missions
  • How progression, hints, rewards, and feedback loops support learning
  • How Textual and Rich create a retro terminal game interface
  • How Pygame adds lightweight game-like feedback
  • How the Kubernetes Python client validates real local cluster state
  • What worked, what felt gimmicky, and what I learned while designing a serious learning tool with game mechanics
  • Addressed Review Comment from #AFB9 A short live/demo-video walkthrough showing an end-to-end mission validation flow, from challenge setup to Kubernetes client validation and mission completion
  • Addressed Review Comment from #C6CD Concrete Python implementation examples, including Kubernetes client queries and Textual event bindings
  • Addressed Review Comment from #C6CD How initialization, pause, and resume states are handled so learners can continue missions without losing progress

Goal

The goal is to show how Python can be used to build educational developer tools that are not just interactive, but genuinely gameful.

Attendees will leave with a practical framework for gamifying technical learning without losing real-world depth.

Anubhav Sanyal
Anubhav Sanyal

I am Anubhav Sanyal, a software engineer from India, currently working at National Australia Bank, Bangalore. My work spans backend engineering, platform engineering, DevOps, Kubernetes, cloud infrastructure, CI/CD, and developer tooling. I am the creator of open-source Python projects including RedCoffee, a CLI/library for generating SonarQube reports, and Project Yellow Olive, a retro terminal application that gamifies Kubernetes learning using Python, Textual, Rich, Pygame, and real local cluster validation. I have presented or been accepted to speak at Python community events including Python Asia, PyCon Malaysia, and PyCon Indonesia. I enjoy building practical developer tools and making complex engineering topics more approachable through Python.

Related Speeches