Daddy issues?
Self-Hosted Main
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
For Example
- Service: Dropbox - Alternative: Nextcloud
- Service: Google Reader - Alternative: Tiny Tiny RSS
- Service: Blogger - Alternative: WordPress
We welcome posts that include suggestions for good self-hosted alternatives to popular online services, how they are better, or how they give back control of your data. Also include hints and tips for less technical readers.
Useful Lists
- Awesome-Selfhosted List of Software
- Awesome-Sysadmin List of Software
Well, I can't stand YAML, because I had to spend half a year extending a far too complex Ansible codebase. It felt like they made a Turing-complete language out of what's supposed to be declarative. And it feels like a good chunk of that was enabled by YAML offering an enormous amount of features itself.
So, yeah, I mostly just prefer TOML, because it's less easily turned into a Turing-complete language.
I suspect you're either reacting to the "Tom" (which is what the T in TOML stands for), making it sound like some "one guy's" project that never really took off...
...or the fact that it reminds you of the Windows INI file format. (TBH, git
's config file also uses something that reminds me of Windows INI, and it took me a while to get over it)
From my point of view, most things related to software config is hierachical, meaning that a tree like structure is the most intuitive in understanding them. YAML is tree based, while TOML is section based. I find YAML much easier to keep track of. And I have great experience with Python, so the indentation is pretty straight forward for me.
But I'm not picking sides and defying the other. It's purely personal mind set related. Actually I do find some workflow very suited for TOML, like build systems, where each task is in its own section, shouting clear cut domain and dependency boundaries.
TOML is tree-based too. It's just more verbose than YAML for explicivity.
Why not hate both? 🙈😬
Why not just let ChatGPT handle it don't give a damn :)
ChatGPT is a great clippy replacement for spellchecking and grammar.
I just installed JupyterLab and ventured into the world of data visualization in Python, letting ChatGPT do the dirty work.
I love that it not only corrects the grammar and spelling it can fix your indentation errors in toml and yaml (or python) as well and give you an individual lesson on what you did wrong and why (if you want that.)
And love json?
Json with comments is literally perfect. Formattable, machine parsable, minimisable, easy and fairly concise. Honestly I can't think of anything better. (Comments in json are essential IMO, without it it's actually not that great, and I'd go with yaml instead)
I know it’s kinda cheap, but for me nothing is the answer (that includes hcl). I’ll use what I find, but I can’t say that I love anything.
If something uses toml, I will use toml. I’ve also used json-schema in the past.
Depending on what I do I find yaml and kustomize okay, etc.. Using something like client-go has its advantages as well.
If I am building something from scratch then I would reach for a simple ini. I feel like everything else overcomplicates things and that’s usually a symptom for something else.
Fuck indent based notation in general.
Fuck it all
Python has entered the chat.
Ugh. I learnt Java and C# as my primary language back in the day. Imagine my disgust when I took a look at python to teach my kids. Just so wrong
It grows on you over time, but it takes a long time.
I'm always confused by this. Do you not indent blocks in your Java/C# code?
Blocks are started and ended with curly braces. It’s really obvious where a for loop or if statement starts and ends. You don’t have to be careful about how indented a particular line is. Horrible.
What do you mean careful? I'm not a python dev, but everything is indented just the same. I'm missing why anyone would not choose good indentation that matches the python requirements.