Note

This is still a work-in-progress! Ask BD103 on Discord if you have any questions :)

Developers often relate code to spaghetti: a tangled, delicious mess. I would argue that code is more like a garden: it grows over time but is often in need of maintenance.[1]

Different programming languages and frameworks are like different types of plants and soil in a garden. For example, JavaScript is very similar to a dandelion. Both are easy to grow, but both arguably spread far farther than they rightly should[2].

If JavaScript is a dandelion, then YAML is that one really annoying weed that magically teleports to all gardens within a 100 mile[3] radius. You know the one.

But I'm getting off-track. Today I'm going to be talking about GitHub Actions, specifically for the Bevy game engine's CI system. We'll be dealing in YAML and (hopefully) a bit of Rust, all in hopes of designing an improved system that's more efficient, maintainable, and understandable.


  1. Also I'm personally against eating code, as that cannot be healthy, so the spaghetti analogy doesn't work well for me. ↩︎

  2. I've seen it used both for configuring printers and writing Minecraft mods. While I'm fascinated by how much it's been adopted, I don't believe it's the correct choice for most fields outside of web development. ↩︎

  3. Which is 160.9344 kilometers for all the people that use a sensible unit of measurement. ↩︎