I was in a similar place a few years ago. Cuberite plugins were the thing that initially got me into software development. I started looking into the source code of existing plugins, tinkered a bit with them, and made minor contributions to them (mostly just style fixes in the beginning). Eventually, I got to the stage where I was comfortable creating my own small plugins, and made a few for my then Cuberite server.
Everyone is different, but for me, it really helps just sitting down and working on something I’m excited about, and learning things as I stumble into problems. If you have enough patience, you should eventually start understanding more and more. You need to be ready to get your hands dirty though, only watching a few videos probably won’t get you far.
TLDR: existing plugins are your friend
Edit: once you get the gist of the basics, it's not a bad idea to start learning more theory about a language or development in general. It can really help you to use better concepts, and ultimately write better things down the road.
Everyone is different, but for me, it really helps just sitting down and working on something I’m excited about, and learning things as I stumble into problems. If you have enough patience, you should eventually start understanding more and more. You need to be ready to get your hands dirty though, only watching a few videos probably won’t get you far.
TLDR: existing plugins are your friend
Edit: once you get the gist of the basics, it's not a bad idea to start learning more theory about a language or development in general. It can really help you to use better concepts, and ultimately write better things down the road.