Typesafe Github Workflows explained to a 5 years old

Jean-Michel 🕵🏻‍♂️ Fayard - Sep 9 '23 - - Dev Community

I am big fan of explaining stuff to five years old because you push your limits as a pedagogue.

5 years old can understand many things you wouldn't expect if you exchange complex words for story telling.

So I'm going to explain my last project, whose main credits go to Piotr Krzemiński in both geek and greek editions.

Geek Mythology

If you are a DEV, this is the story we tell you :

typesafegithub/github-workflows-kt is a tool for creating GitHub Actions workflows in a type-safe script, helping you to build robust workflows for your GitHub projects without mistakes, with pleasure, in Kotlin.

You won't go back to YAML!

GitHub logo typesafegithub / github-workflows-kt

Authoring GitHub Actions workflows in Kotlin. You won't go back to YAML!

Logo white Logo white

Maven Central Awesome Kotlin Badge GitHub Repo stars License github-workflows-kt @ kotlinlang.slack.com

github-workflows-kt is a tool for creating GitHub Actions workflows in a type-safe script, helping you to build robust workflows for your GitHub projects without mistakes, with pleasure, in Kotlin.

You won't go back to YAML!

💡 Idea

We're often surrounded by YAML configuration. It's a powerful format that provides simple syntax for defining hierarchical data, but it is sometimes used (abused?) to configure complicated scenarios which leads to complicated files that are difficult to write and maintain.

Who among us hasn't accidentally used the wrong indentation, missed a possibility to extract a reusable piece of code or been confused by ambiguous types? The power of a generic-purpose would come in handy in these cases.

We're developing github-workflows-kt to solve these and other problems, so you can create GitHub Workflows with confidence.

✨ Benefits

  • no indentation confusion - Kotlin's syntax doesn't rely on it
  • immediate validation - catch bugs…

Greek Mythology

It may sound tricky to explain type safety and YAML to a 5 years old

But those little devils are smart, so let's try.

Dear 5yo,

Typesafe Github Workflows are just like your favorite story from the greek mythology.

Odysseus and its crew, we call them the devs, have worked hard and want to go home.

But while they are heading home, a terror invade their hearts. They hear a seducing song from the sirens on an island called GitHub._

That song is written in a terrifying foreign language that pretend to be a programming language.

😱 YAML 😱.

The devs in the boat fear that it may be the very last sound they hear before their death.

There is in missing space in that YAML.

That may not sound much to you, but the YAML world is a very unstable world. That missing space changes everything and meances to destroy the whole world around the DEVs.

But Odysseus, just like my project, smartly put wax in the devs's ears, so they don't have to hear any of that scary YAML stuff, remain unaffected and go home safely.

Odeysseus and my project have to hear the YAML, and we struggle to resist, but in the end we live to tell the tale.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player