Honestly the hardest part about emacs for me has always been documentation. Like how do I build a plugin. What function do I call to set a custom key binding? This stuff has always been so hard to find despite it being so important to the underlying experience. Now that I've used it for a while I know these things, but they didn't come easily.