I’ve straight up ripped code from StackOverflow that worked… But I had no idea why or how it worked 😂 I taught myself Go and I’m decent at it, one of my coworkers was a former professional programmer who knew C and could fumble his way through Go. I later told him I had no idea what some of the code did because I did the old copy and paste and he just said “I knew you did” 😂
I heard the same story when I was a kid, but it was about a boilermaker. The rest was for knowing where to tap his hammer to fix their problem.
It’s an obviously apocryphal story with two great messages. First, don’t undervalue your expertise just because the fix was easy (I still have a problem with that). Second, if you don’t know what you’re doing don’t question the expert just because it looked easy.
I know a version with a graphics designer. They designed something in 10 minutes and asked 1000 USD for it. When confronted on why it is so expensive for just 10 minutes of work, the answer is that it’s not just the 10 minutes of work, but also the 10 years of experience that lead to this 10 minutes of work.
At the beginning of the 20th century Henry Ford’s electrical engineers had issues they could not solve with a gigantic generator. Henry Ford called Steimmetz, a genius mathematician working for GE to help them.
When he arrive at the factory he spent 2 days and night listening to the generator and scribbling on his notebook.
After that he asked for a ladder, climbed on it, put a chalk mark on a specific spot and explain to the engineers that they needed to remove the plate and replace sixteen windings behind the plate. After that the generator worked perfectly and Ford received a $10 000 bill.
Ford asked for an itemized bill and Steinmetz sent this
It’s funny reading this, because the way I heard the story was as a railroad story.
The train engine wouldn’t run. The expert was called, he arrived, and after inspecting the train engine, knew exactly were to apply a little bit of oil to make it run again. His bill was challenged as being overly expensive, and he countered with them paying for the knowledge of where to apply to oil, not the oil itself.
There’s like all these different versions of the same philosophy of the story
Right. Why should someone write 10 lines of yaml when they can program 20 lines of Go? Or python. Or assembly for a risc cpu because it just feels so friendly with that nice instruction set.
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.
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.
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.
I use the KNX integration, which must be configured using yaml
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):
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.
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).
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! :)
programmer_humor
Oldest
This magazine is from a federated server and may be incomplete. Browse more on the original instance.