kocsenc
K
I'd attribute it the most to battery technology. As part of the hobby myself, Ni-Cad batteries were the go-to's. But they were crappy. Li-Pos have existed before, but the thing about multi-rotors and flying in general is it doesn't need a high capacity, but a high output rate, which we can get now.
Having said that I personally would recommend some sort of teaching of Software Engineering. This is because a lot of the developers out there (as you can tell from this thread) do not have formal education and hence CAN resort to in bad practices.
The importance of understanding the software product behind simply writing code and the importance of designing instead of hacking and fixing - and the importance of testing and having a process methodology behind creating software is higher level education IMO.