I think the best UI is a CLI-GUI hybrid; it has all the features of a GUI, so you can point and click if you want, but also a CLI you can type commands in. AutoCAD is one of the few examples of this that I think got it right; on the other hand, Photoshop is one of the applications I use regularly that could really benefit from having a CLI.