I have been working with flyspell and have found correcting words with flyspell spectacularly frustrating.  "flyspell-correct-word" is annoyingly only bound to a mouse click. "flyspell-correct-word-before-point" is also bound to a mouse click or one can use "M-x flyspell-correct-word-before-point". Another big problem is that the menu of possible corrections.that is displayed covers the buffer.  If I have a long list of completions, the menu covers the text. Although ispell works better, the way one selects the replacement word is also cumbersome. emacs has the icomplete (incremental minibuffer compeltion preview) which works very well without affecting the viewing of the buffer.  One drawback with icomplete is that the completions are not shown in a vertical way as done in ivy. On Apr 27, 2020, Omar Antolín Camarena released icomplete-vertical.el, but the functionality has not really been introduced in the official emacs and improved upon. If there was the capability for vertical spelling correction with vertical listing mimicking ivy, things will be much better for correcting words with flyspell. Omar Antolín Camarena also wrote orderless.el, a very useful package that provides orderless completion style in the minibuffer. This would be very good to have in official emacs as well.