The Naked Objects Framework, implemented in Java, is a way to design software as a set of objects that users interact with directly rather than using a graphical user interface. James Cooper explains the technology in his JavaPro column. Though I wonder how many users would be comfortable working with objects like this, it seems like a great way to make programmers design better objects.
I'm with you on the naked objects for programmers. I'd also add power-users to the potential list of cantidates for use except for one REAL BIG hesitation. A power-user who really understands a set of objects could deal with this, but they are then like efficient mainframe users who know exactly how to jump to given chunks of screenage to accomplish a task. Without reading deeply (which I'm interested in doing) a naked object seems to actually make the UI/Object split WORSE, by training users to look for data/functionality in the same places every time. Each time an object or even it's data is modified, the UI will change. Obviously this will result in object changes being slowed or hidden thru sub/super-classing for usability reasons (ICK).
The NeXT community has flirted with stuff like this for years. Apple's WebObject currently includes a system called Direct To Web (D2W), which derives an admin UI automatically from a set of business objects. Amazingly handy stuff if you need to whip up an admin interface in a hurry, but it can turn into a major obstacle once marketing or otherwise image-conscious folks become involved.