Asdf is great - I'm not knocking it at all and have built several scripts for it over the years - but I think mise might be a better tool for someone starting out from scratch: https://github.com/jdx/mise. These days I'm using nix, but it's not for everyone.