(time to get flamed I think, but I feel this is a necessary question) Chocky - you mention Kaffe. I haven't used this, but I'll take your word for it that its good and free. If it is easy to turn into a plugin, why haven't you done it in 2 years? RISC OS needs a JVM that works as a plugin and runs standalone. Acorn struggled to get the wimp interface (AWT, Swing demo etc) up and running, but nearly got there before Sun hit them for more money. UPP is doing lots of good work, but please (I speak on behalf of RISC OS users here) could you *finish* some of these ports to the point where they are usable by the general public. As a command line thing, Kaffe is maybe useful to 25 RISC OS users. As a finished product, it is useful to 1000+ RISC OS users, and suddenly the UPP becomes essential to end users.
I guess part of the answer is that user interface stuff tends to be regarded by programmers as dull, time consuming stuff. Unfortunately, for end users, a program is only as good/useful as its user-interface.