We just open sourced Score, a workload specification that allows developers to describe the relationship between workloads and dependent resources in a declarative, environment agnostic way. We've used Score for years and realized that, with more collaboration, it has the potential to help the entire developer community.
The idea is simple: describe your app architecture in an agnostic way and let a reference implementation “localize” the configs with every git-push. That allows for an impeccable developer experience and the idea of “layered” abstraction. The developer can choose how deep they go. They can stay on the level of Score or dive down to the last Terraform file.
I’m using it myself and the experience is really quite breathtaking. I’d appreciate it if you could give the score-spec repo a star and even more if you could contribute! But before you do, let me explain why we put so much focus and time into developing this.
While Internal Developer Platforms (IDPs) are terrific for the organization, they don’t move the needle as much for the individual developer. In fact, sometimes it does the opposite! That new shiny IDP requires too much investment into non-reusable skills, it breaks, it abstracts them too much and just doesn’t provide functionality that improves individual productivity.
I’ve always had a set of guiding principles when designing the platform UX. The interaction method should:
- Use an industry standard format
- Be possible to master it in 30 minutes
- Provide individual benefit
- Stay “as code” by default
And it shouldn't break the current workflow. And here we go, Score ticks all of those boxes!
- Score follows the YAML format and is open source
- It feels like Docker-compose
- It is masterable in 30 minutes
- It relieves you from having to master dozens of configs and gives you a unified one
- Score integrates into your current git-push workflow
- It is end-to-end code based
I’m so excited about this, not only because it’s a great piece of technology but also because it’s another tool to make the lives of platform engineers just a little easier.
I hope you enjoy using Score as much as I do. If you have comments or ideas, reach out.
Kaspar
‍