InfoQ

Interview

Romain Guy on the State of desktop Java

Interview with Romain Guy on Feb 01, 2007 06:22 AM

Community
Java
Topics
Rich Client / Desktop
Tags
Swing
Summary
Romain Guy presents his thoughts on the state of desktop Java. He shares his thoughts on Swing, competition with Flash and just what is a "filthy rich client" application.? He also talks about whether we really need a Java browser edition.

Bio
Romain Guy is a French student currently working as an intern with the Swing Team at Sun Microsystems. He has 7 years of experience in Java development, as an Open Source and freelance developer. He also works as a freelance journalist for a French computing magazine, as a translator for O'Reilly and taugh Java in a University. Today Romain focuses on UI design and humane interaction.
We're here with Romain Guy. Can you tell us more about what you're doing?
You have a specialty with Swing. Tell us why does Swing still matter?
What makes Swing good for rich clients?
What role should Swing have in this new world of Ajax?
So you coined the term "filthy rich clients". What's so filthy about rich clients?
From a technical perspective where do you delimit between "filthy rich clients" and rich clients?
What do you think the future has in store for Swing and for rich clients?
When should enterprises consider rich clients within the architecture?
Some people on internet have been talking about Java Browser edition saying that if the JVM and the browsers are more like the Flash VM (small and fast), than a Swing on the browser could have a better chance. What do you think about all that?
So we don't need a browser edition?
How about Flash versus Applets? Can Applets ever come back?
Any final words?
show all  show all
Romain rulez, but InfoQ's video feature sucks hard... by Ronald Miura Posted Feb 7, 2007 5:40 AM
Swing vs. Ajax by Drew Foglia Posted Feb 8, 2007 10:09 AM
Re: Romain rulez, but InfoQ's video feature sucks hard... by Floyd Marinescu Posted Feb 11, 2007 1:35 PM
  1. I don't know why, but have problems with infoq's videos too frequently for my taste, in places where YouTube and Parleys' videos work flawlessly. Besides that, I really like Romain's 'Apple-like' vision on UIs, going beyond the common 'swing-does-not-behave-like-my-native-application-therefore-sucks' thing. Go, Guy!

  2. Back to top

    Swing vs. Ajax

    Feb 8, 2007 10:09 AM by Drew Foglia

    I also agree with Romain's analysis. Personally, I believe Ajax is a much needed improvement to web app UI development. However, I also believe, like many new technologies, it's being used in ways that aren't appropriate. It's new, it's cool, so let's use it - not the right reason to use a technology. There is already a time-tested, well designed technology for providing cross platform, rich-client (including filthy) UIs. It's called Java. Swing it up.

  3. Hi Ronald, would you email me at floyd at infoq.com about your video problems? We have had very very few complaints about our videos and so I'd like to understand what your connectivity is that might be giving you problems. Videos have been reported to work great even on meager 256kbps dsl connections in far off places. :)

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.