And b) I don't understand them. If I don't understand them what chance does the average non-nerd have? I probably could understand them, if I bothered to look into the details of how they work, but I really don't want to have to do that and normal people won't either. Nobody needs to do research to understand passwords or email login links (at least at a basic level).
I predict they will be abandoned in 10 years.
I wonder if a better solution is just to accept email-is-authority and make the magic link flow more seamless. Imagine if you could link your email client and your web browser closely together so that every site that offered a magic link "just worked". You click a button, it emails you, your email client silently notifies the web browser and deletes the email, and then you get logged in.
Google could easily do that automatically with Gmail and Chrome. The only downside I can see is that email is still a bit slower than password authentication.