(Justin)

Tech nerd from Sweden

Matrix: @jlh:jlh.name

  • 1 Post
  • 240 Comments
Joined 3 years ago
cake
Cake day: June 10th, 2023

help-circle









  • For question 1: You can have multiple resource objects in a single file, each resource object just needs to be separated by ---. The small resource definitions help keep things organized when you’re working with dozens of precisely configured services. It’s a lot more readable than the other solutions out there.

    For question 2, unfortunately Docker Compose is much more common than Kubernetes. There are definitely some apps that provide kubernetes documentation, especially Kubernetes operators and enterprise stuff, but Docker-Compose definitely has bigger market share for self-hosted apps. You’ll have to get experienced with turning a docker compose example into deployment+service+pvc.

    Kubernetes does take a lot of the headaches out of managing self-hosted clusters though. The self-healing, smart networking, and batteries-included operators for reverse-proxy/database/ACME all save so much hassle and maintenance. Definitely Install ingress-nginx, cert-manager, ArgoCD, and CNPG (in order of difficulty).

    Try to write yaml resources yourself instead of fiddling with Helm values.yaml. Usually the developer experience is MUCH nicer.

    Feel free to take inspiration/copy from my 500+ container cluster: https://codeberg.org/jlh/h5b/src/branch/main/argo

    In my repo, custom_applications are directories with hand-written/copy-pasted yaml files auto-synced via ArgoCD Operator, while external_applications are helm installations, managed via ArgoCD Operator Applications.











  • Not here to doubt their decision, they had good reasons to switch.

    For the sake of discussion though, would it have been easier though if they had focused more on abstractions with their code architecture? I haven’t done any serious projects in Rust, but those issues with low-level coding and API thrash seem like more of a code architecture problem. Like, that example of a function signature seems like they should have bundled up their paperdoll logic more into a single “PaperdollLoadout” struct and moved that into a separate game logic function separate from the view related code. It’s more code to write, but that’s the up-front cost of strict type checking.

    Modding and learning definitely seem like a big barrier for Bevy overall though.

    One decision i will question is picking Unity over Godot, though maybe they were still reeling from the learning issues on Bevy.