I'm very excited about the prospect of a new & improved UI3. Especially the prospect of a single GUI across all devices and modes (eg. X app and browser). And a themeable (whether stylesheets and/or skins) GUI paradigm that is also tiered properly into layers encapsulating their proper independent/interdependent functions.
My first question about this proposal is just why is Adobe Flash so unsuited to be the platform for UI3? If its proprietary nature is a problem, there's OpenLaszlo
. Which also now has the benefit of generating not only both SWF-compatible code and DHTML from the same source project, but is also being aggressively distributed on set-top boxes, PVRs and mobile phones (including iPhone) in a joint venture with Sun, making OpenLaszlo part of JME (so no additional SWF player is needed). JME is also the basis for the BD-J
that is part of Blu-Ray (BD menu systems are all in BD-J) and also DVB.
OpenLaszlo can run on all of those devices, and present effectively the same GUI in either standalone apps or a web browser, and is inherently networked for distributed execution. It's already got not only the execution environment (including Adobe's Flash player) but also design/development environments, existing code, and - maybe best of all - an existing developer community.
If OpenLaszlo doesn't quite serve (eg. 3D and maybe alpha-rendering are lacking), its source is open, so it can be revised. If UI3 is going to undertake some serious development, why reinvent the wheel, rather than just extend something like OpenLaszlo that's already mostly there?
Alternately, if OpenLaszlo, like Flash, is just too big and complex, what about SVG? SVG with ECMAScript can make lightweight but featureful GUIs that run in browsers and can be encapsulated in runtimes (Java or native x86/etc binaries). Again, why reinvent the wheel, rather than just build a better car or road for it?
(Note: I have no vested interest in OpenLaszlo or related companies, I just think it's the best fit for these requirements.)