

I stand corrected, thank you!
I stand corrected, thank you!
Appreciate the effort, but without categories it’s not going to sail too far.
Right now it’s just a long list of everything that it’s out there, awesome-selfhosted is much more usable for looking up what you need.
Also, did you join any kind of affiliate programs/partnerships for these “10% off” green boxes? If so, would be great to disclose it. Nothing bad with getting some cash, but community will just appreciate the honesty.
Programming knowledge is largely irrelevant, as in to gain sensible benefits from it you have to be generalist software engineer with decade+ of experience of seeing it all. Then yeah, you can read any code, any stack traces and figure out the intent of developers of the system and what is undocumented/incorrectly documented.
Focusing on one particular language is the right and wrong answer at the same time. Wrong in a sense that you’ll have to pick up other languages along your journey anyway and right because you need to achieve mastery in one of them to get to more advanced programming topics. Pick a language that you have fun using and don’t care about anything else.
As for what to learn for self-hosting… Linux (pick a distro, let’s say ubuntu LTS w/o gui, ssh there and get comfortable with it. It includes installation, filesystems, RAID setups), networking, HTTP/S (that’s the main thing you’ll be interacting with as self-hoster and knowing various nuances of reverse proxying is a must), firewalling, basics of security and hardening, docker, monitoring, backups.
why not? it’s not like there is any competition.
Microsoft is making more money off Linux with Azure than several red hats combined.
of course it’s ‘elitism’ and not just a bunch of people volunteering to code shit that’s interesting/relevant for them.
To provide ‘non-elitist’ desktop experience people need to sit down and fix bug backlog for hardware that’s nowhere around them, prioritize features that are relevant to users (even if they are absolutely ass to work on) and etc, etc, etc. You know how it’s called? A job.