Just a basic programmer living in California

  • 1 Post
  • 27 Comments
Joined 7 months ago
cake
Cake day: February 23rd, 2024

help-circle
  • Probably not very similar, but Git Butler is very interesting. It adds its own layer of management so that you can have multiple branches “applied” to your working tree simultaneously. It’s helpful when you have multiple changes that should go into different branches, and some that shouldn’t be committed - it has a system of lanes that help keep track of all that. Or you can test how changes from two branches interact.

    Last time I used it, maybe 6 months ago, it was rough around the edges so I didn’t stick with it. But they’ve done lots of work since then so I’m thinking of giving it another go. It is (last I checked) an all-in tool. When you’re using Butler on a project you probably won’t be able to use other git tools.


  • I think it depends. Lua is great for scripting - like when X happens do Y. I agree that makes sense for a case like Home Assistant. Sometimes you really want the result to be a data structure, not an interactive program, in which case I think more sophisticated configuration (as opposed to scripting) languages might be better.




  • hallettj@leminal.spacetoProgramming@programming.devWhy YAML sucks?
    link
    fedilink
    English
    arrow-up
    13
    ·
    edit-2
    12 days ago

    I agree - YAML is not suitable for complex cases that people use it in, like Terraform and Home Assistant. My pet peeve is a YAML config in a situation that really calls for more abstraction, like functions and variables. I’d like to see more use of the class of configuration languages that support that stuff, like Dhall, Cue, and Nickel.

    There is another gotcha which is that YAML has more room for ambiguity than, say, JSON. YAML has a lot of ways to say true and false, and it’s implicit quoting is a bit complex. So some values that you expect to be strings might be interpreted as something els.









  • From what I’ve learned revolutions are often accompanied by circumstances where people are desperate due to lack of basic necessities, especially food.

    The French revolution was preceded by a serious food shortage. Remember that “let them eat cake” comment? One of the key events, the Women’s March which displaced the king and queen from Versailles, was specifically motivated by demands for food.

    The European People’s Spring saw lots of revolutions across Europe in 1848-1849 including in France, Italy, Bavaria, Austria, Hungary. That was about the same time as a continent-wide grain shortage on top of an economic crisis.

    The Russian revolution of 1917 came at a time when a combination of WW1, bad leadership, and an extra cold winter led to food shortages, and fuel shortages so people were starving and freezing at the same time.







  • It’s great that the system is so efficient. But things do come up. I once worked with an LSP server that was so hungry that I had to upgrade from 32 to 64gb to stop the OOM crashes. (Tbf I only ran out of memory when running the LSP server and compiler at the same time - but hey, I have work to do!) But now since I’m working in a different area I’m just way over-RAMed.



  • A commit followed by a reset or commit --amend later is one more step than a worktree --add. Plus there have been lots of times when I’ve had some changes staged, and some unstaged debugging or experimental changes that I want to make sure not to commit, and thinking about how to pack all that away neatly so I could get back where I was seemed sufficiently obnoxious that I avoided doing whatever would have required a quick branch switch. Worktree would have let me pick up where I left off without having to think about it.