I think vi is good. I think the modal editing is good. The ZZT external editor I wrote (ZZTQED, and later frezed) is inspired by features of vi, such as modal editing, numeric prefixes, macros, etc. It is also good that vi has the ability to interact with external programs by pipes, which is something that Heirloom-mailx also does and I like that, and my own NNTP client software (bystand) also does, but unfortunately the web browser doesn't (the web browser is one of the worst software). One problem with many newer programs is lack of good documentation as well as using mouse-based interface; I like to make most functions working by keyboard commands. A lot of existing software I don't like so much, so I try to write my own better ones, which can use pipes with external programs, using mostly keyboard-based interface rather than by the mouse, using UNIX philosophy, using you have enough ropes to hang yourself and also a few more just in case, etc, to do what I will think is a good idea to do. And yet, it isn't just a lot of computer software that is badly designed these days, but even user interfaces of VCRs, DVD recorders, etc. I don't really like MSE so much, so I wrote TeXnicard. I don't really like most NNTP software so much, so I wrote bystand. I don't like KevEdit so much, so I wrote ZZTQED. I don't like Inform so much, so I wrote Glasm. etc