Kubernetes v1.29 was released a couple of days ago.
And just like every other release before it, it has a distinct name and theme (Mandala) as well as its own unique logo. In whose creation, I’m proud to say, I had a part to play!

Kubernetes Logo overlayed on top of a Circular Mandala Design

The logo! Look, how pretty!

It all began when I helped the v1.29 Release Lead, mentee and trouble-maker in general, Priyanka Saggu set up her blog in 2018. I taught her all about CRAP1 and I think all those crappy lessons lingered and made an impression.
So when it came time to design the release’s logo, she asked me if I could pitch in and help, because she was running short on time. It sounded like fun, so I said, Hell Yeah!

Partners in Crime aka Spitballing aka Brainstorming

Priyanka was very clear headed on her brief for what the logo was to be about.

  1. Universal: We need to celebrate the fact that this project has folks all over the world, working on it.
  2. Singularly Recognisable: It had to be recognised as the 1.29 logo at a glance at various scales

Everything else was up for grabs.
Thoughts meandered from parodying popular memes, like we do in our talks …

to cheeky play, with popular media like the old folks did, to seeking inspiration from music lyrics and nature patterns.
Priyanka then hit upon something else she wished to incorporate in the design. Could it have Indian elements? That led us down more fun alleys in the beautiful maze that is Indian Art. Across the length and breadth of our multicultural nation; we checked out everything …

from Warli art,

courtesy, Wikipedia

to Kalamkari

courtesy, Wikipedia

through Madhubani

courtesy, Wikipedia

before we settled on Mandala

courtesy, Sambeet D, Pixabay

Why Mandala?

Because it satisfied both the conditions of the brief, beautifully and succinctly.

  1. Nearly every culture, from Hinduism to Buddhism to Mayan to Christianity, has some spin on the patterns and the symbols that make up the Mandala. It represents the cosmos and is used across the world. To our minds, nothing could be more universal than this art form
  2. And because it is singularly recognisable.

Here it is in a slack chat, as an emoji2

It’s pretty distinctive! And as you look at it, at ever increasing sizes, more details emerge.
The midsized image I posted above is pretty detailed, but you can go watch it in all its uncompressed glory here3

Putting It All Together

The rest was then, figuring out the details.
Since one of us has quite limited design skills, that were rusty to boot4 and the other one had no time5, we decided to go look for a liberally licensed Mandala image, that we’d use as a base. We went through quite a few images, before we stumbled across Fibrel Ojalá’s beautiful creations.
And once that was done, it was just a matter of structuring it, the way we wanted it to look. We used Annapurna SIL6 for the text and Inkscape to put it all together.
The whole process took us a week, from start to finish.
It was both, a joy and a privilege to contribute to this release.

P.S. The Easter Egg

I thought it’d take a little longer than it did, but you folks are more eagle eyed than I thought possible!
Yes, that’s my little homage to Devanagari, the script lots of Indian langugages use for their writing. If you read the symbols in the diamonds clockwise, beginning at nine o’clock, they’re Devangari numerals that read 1.29 🙂

Feedback on this post? Mail me at feedback@janusworx.com

P.P.S. Subscribe to my mailing list!
Forward these posts and letters to your friends and get them to subscribe!
P.P.P.S. Feed my insatiable reading habit.

  1. I know very little design, but what little I do know is burned into my psyche because of Robin Williams and her CRAPpy principles, I learnt in the late 90s ↩︎

  2. apologies for the potato quality of the screenshot ↩︎

  3. You’ll need Annapurna SIL for the text to render right ↩︎

  4. Me ↩︎

  5. Priyanka. She really can draw, though. I mean, have you seen her sketches? ↩︎

  6. I saw it used in a hymnbook, a decade ago and loved it at first sight ↩︎