this post was submitted on 19 Mar 2024
738 points (98.0% liked)
Programmer Humor
19589 readers
431 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Home Assistant
Maybe home assistant a few years ago...I have a fully functional setup with loads of automations and haven't written a single line of YAML for it.
I just started using it a few months ago and most stuff I did was only possible using yaml (templates, custom integrations etc.). I think it depends on your requirements.
None of my custom integrations are configured with YAML anymore, they've all moved to the GUI. Even a couple of my templates have been made directly in the GUI.
"Not a single line of YAML" is a bit hyperbole, but the only YAML I've got left in my setup are a handful of custom sensors, I haven't checked if that can now be done from the GUI. It's around 100 lines of YAML in total or something like that. But all the home automation stuff is done purely with GUI.
There has been huge improvements on what can be done from the GUI in the last few years since I started with HA.
Most of my automations use templates. I have template sensors, I use the KNX integration, which must be configured using yaml and the adaptive lighting integration as well. For my dashboard I used many template cards (evaluation of states with templates to set appropriate icons, colours and text), tabbed cards, card mod for css inside yaml for my custom room cards.
You see, it absolutely depends on your requirements and how sophisticated your dashboard is.
This is probably because of the devs behind the integration though and not the fault of HA.
I have my all my cards and dashboards defined through GUI as well, you van make plenty sophisticated interfaces without YAML. A lot of tutorials are probably not up to date with what you can do though and use YAML.
I don't think you can do something like this without yaml (fully custom mushroom template cards, each button opens a popup with the entities in the room, text formatting and unit conversion, also icons change dynamically depending on state and icons appear for open windows):
It's relative. If you just started, it might feel like a lot of YAML, but if you used it back when everything had to be done in YAML, modern Home Assistant will feel like little to no YAML.
"haven't written a single line of YAML" doesn't sound relative
I have around 2500 lines of yaml, I think that's relatively much.
It's still all stored as YAML, there's just a lot more help on the frontend
Stuff you configure in the UI is mostly stored in the database, not as YAML. Nearly everything you've configured using YAML is not editable from the UI. Whenever an integration moves from YAML to the UI (like the Proximity integration in a recent release), the YAML config is deprecated.
There's a few exceptions where YAML is stored in the DB (like if you have dashboard cards with custom configs) but YAML is going away over time as the UI gets more powerful, and is mostly just becoming a power-user thing.
That's true, I was thinking more about automations and scripts, which are still stored as YAML
Oh yeah, good point. It might make sense for those to remain YAML to allow for more advanced tweaks. I learned programming in Excel 97 by recording macros and then viewing and tweaking the VBA code behind them, and this feels kinda similar (although YAML isn't a programming language).
Oh wow, that must've been painful
It was a pretty decent way to get started with coding! This was back in the late 90s in Australia. I didn't have internet access or programming books, so all I could do was teach myself. Being able to record a macro and see the code behind it was extremely useful! :)