suboptimal for which tasks and what's better then?

I spend a LOT of time with different interfaces (eye tracking, 6DoF controllers, pens, touchpad in keyboard, ergonomic mouse, etc) and... basically if there is 1 thing I'm confident about is that input methods are very task dependent. If you want to input text, especially hard to pronounce keywords and symbols, keyboard is great, if you want to move a pointer at arbitrary position in 3D keyboard sucks. It also depends on the context, behind a desk vs on the move is totally different.

So yes quite curious about such a wide statement.