1. Two Keys emacs helpLearning Emacs is not about scouring through documents and memorizing facts.Those who use Emacs fluently know that the real skill is knowing how to ask Emacs about Emacs. The answer to any question you might have about Emacs lives behind just two keys: M-x and C-h. If you internalize those, plus a handful of command prefixes for the auto-discovery commands, Emacs will teach you whatever you need to know, on demand.2. Start with M-x mxM-x (that's Alt-x) runs any command by name. That's cool, but what makes it really special is that it lets you auto-complete command names. Press M-x, type in some input, press TAB (for 'complete this input') and Emacs filters the entire list of commands based on your input:There are two important consequences for a beginner:You never need to memorize a command you can describe. M-x will surface it from a vague memory of what that command looks like.Each command shows its keybinding (if it has one) next to its name, so M-x doubles as a way to learn 'shortcuts' to invoke these commands.3. The Help CommandsAs promised, Emacs provides commands that let you answer questions about Emacs. These are often called Emacs's 'auto-discovery' commands, and they all start with a few intuitive prefixes:describe- — shows the documentation for a specific named thing (a function, variable, key, or mode).find- — takes you to the source code or definition behind a name.xref- — navigates references and definitions across your code, like "find usages" and "jump to definition."Info- / info- — opens and moves around Emacs's built-in manuals.apropos- — searches by keyword when you don't know the exact name, listing everything that matches.customize- — opens a graphical interface for inspecting and changing settings.4. The Prefix Trick discoveryNow that we know M-x and the families of auto-discovery commands, we can leverage M-x to perform something I like to call the 'prefix trick'.This trick surfaces all Emacs's auto-discovery facilities to you, meaning you don't have to remember the few hundred that exist. Instead you only have to remember the few individual prefixes they all begin with.For example, every command that describes something (like a command, variable, function, etc…) starts with describe-. So once you know that prefix, you can surface all commands in that family.Try it. Type M-x describe- and press TAB, and watch all the describe commands surface (see screenshot). You can do this same trick for any of the auto-discovery commands described above.The large number of help commands should be an indication of why this trick is useful!Here are more screenshots for the other prefixes. 4.1. find-4.2. xref-4.3. Info- / info-4.4. apropos-4.5. customize-5. C-h C-h Help Cheatsheet helpC-h (Control-h) is the universal "help" prefix. If you remember one thing from this post, remember C-h C-h — help for help. It opens a buffer listing every kind of help available (see screenshot). You will see the auto-discovery commands described above, as well as some other useful ones. Go explore!6. More Magic with which-keySince Emacs 30, which-key is built into Emacs. Enable it, then type the first part of a keybinding, and you'll see all the commands and their associated keybindings that fall under that prefix key. You even get documentation for the commands in a popup when you mouse over the command names! See the screenshot for this in action with C-h, the help prefix key.Like with C-h C-h, you see all the help commands you can run via the C-h prefix key. Note this works on any prefix key, and even works without a prefix key at all with which-key-show-top-level. In this way, you don't even need to be aware of a prefix key at all, you can discover them all with which-key.7. The Coda emacsAgain, you don't learn Emacs by memorizing stuff. Instead, you learn three things:M-x to find (and run) commands,the prefixes of the auto-discovery commands (describe-, find-, xref-, Info- / info-, apropos-, customize-) to enumerate the rest with TAB, andC-h C-h to find every kind of helpFrom there, Emacs documents itself, all the way down to its own source code.Note, this post is the shorter version of a longer, sillier post, with a valuable 'prefix trick' that alleviates the burden of memorizing anything I described in the original post.