With the Amiga 500 I as a teenager learnt assembler - which was mostly about controlling hardware (graphics, disc drive, sound, etc.). It gave me a solid foundation in understanding bits and bytes, hex and octal. And last but not least, as a programmer always make programs fast and memory efficient. Today we always assume there is a lot of memory. Back then we were counting bytes and processor cycles.
It would be beneficial for the whole computer industry if every programmer get a year where they have to develope under similar constraints as we were under.
My son wanted a own MC server to play with. And then he wanted all those plugins. So I had to learn how to code and compile java code. I had almost as much fun coding/compiling as my son had playing and cresting his world. The server I use is Spigot. Easy to get started with.