Hacky vs beautiful is diferent from The Right Thing vs. Worse is Better.
Worse is Better is a very specific philosophy (at least, as it is described in Lisp: The Good News, The Bad News, And How to Win Big)
The Right Thing philsophy is, in essence, that simplicity of interface is the most important thing: every interface is an abstraction, abstractions shouldn't leak. Have a simple interface, be correct, be consistant, be complete. If the implementation is complex, so be it.
By contrast, the worse is better philosophy prioritizes simplicity of implementation: Be simple, be as complete, correct, and consistant as possible, but between having a simple design, and being slightly wrong, a little inconsistant, and not as complete, and having a complex design that is all of those things, take simplicity: 90% now is better than 100% never.
Over time, Unix has adoped some Right Thing ideas (plan9 took this to 11), and Lisp has adopted some New Jerseyisms (Scheme's dynamic-wind is definitely this).