Recently I rebranded Dhall to “A non-repetitive alternative to YAML”, but after studying more user feedback I think we can improve the message a bit more.
I’m still hashing out the exact 1-line summary, but my new thinking is that the emphasis should be on configuration management at scale. However, “configuration management” can be easily misunderstood to be something unrelated, so I’m looking for a better way to phrase things.
The first reason I suggest a focus on “scale” is because it concisely highlights and motivates all of Dhall’s key features:
- Functions: Help reduce repetition that you often get as configurations grow
- Types: Help reduce defects that you often get as configurations grow
- Imports: Help break up giant configuration files into modular units
- Integrations: Provides a single-source of truth across multiple configuration file formats
The other reason I suggest focusing on scale is because I find that this is often the key differentiator between people who continue to use Dhall or abandon it when test-driving the language. People who want a small-scale replacement for YAML typically end up using TOML instead since they don’t need any of Dhall’s features if their configuration file is small. People who stick to Dhall tend to be enterprise deployments dealing with large and sprawling configuration files.
This would also suggest some changes to what the website emphasizes. For example, we wouldn’t really need to emphasize “readability” since that’s not material to how well the configuration file format scales in the large (although it’s still a nice feature).