The Artima Developer Community
Sponsored Link

Java Buzz Forum
Direct Manipulation, Emerging Behavior, Untestable Qualities, ...

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Weiqi Gao

Posts: 1808
Nickname: weiqigao
Registered: Jun, 2003

Weiqi Gao is a Java programmer.
Direct Manipulation, Emerging Behavior, Untestable Qualities, ... Posted: Sep 8, 2005 11:38 PM
Reply to this message Reply

This post originated from an RSS feed registered with Java Buzz by Weiqi Gao.
Original Post: Direct Manipulation, Emerging Behavior, Untestable Qualities, ...
Feed Title: Weiqi Gao's Weblog
Feed URL: http://www.weiqigao.com/blog/rss.xml
Feed Description: Sharing My Experience...
Latest Java Buzz Posts
Latest Java Buzz Posts by Weiqi Gao
Latest Posts From Weiqi Gao's Weblog

Advertisement

Tonight's presentation at the St. Louis JUG is by Kyle Cordes, principal of Oasis Digital, and his title is Direct Manipulation User Interfaces with Java Swing.

This is once again one of those talks that you have to attend to appreciate its content. Reading the slides afterwards probably won't do it.

Before the talk Raj Patel asked what the talk is going to be about. The answer I came up with is "writing a Swing application where the users don't enter texts and push buttons." At the opening of the presentation, Kyle also pointed out that he's not talking about Swing drag-and-drop, which is all about negotiating data formats. Nor is he talking about Naked Objects, whcih is all about not writing the GUI.

Kyle spent most of the time in Eclipse, doing demos while going through source code class by class and line by line.

Kyle's thesis is that direct manipulation user interfaces, based on drag-and-droppable on-screen widgets, can provide fast, efficient, intuitive, and appealing data manipulation in your application.

In one of the demos, the screen is populated with small JPanels in a ten row three column grid. You pick up one and move it to a different spot. As you are dragging the JPanel other JPanels make way for it by moving to a different location in an animated fashion. "Wow" was my first reaction.

Then he went through the code. And the code was amazingly simple. It uses Swing features to the fullest extent, but simple. The animation logic is driven by a Swing Timer whose action is simply: hey, each JPanel, check if you should move to a different spot, and if so, move a little bit toward the new spot. The fancy animation is an emerging behavior out of this simple logic. Another "wow" at the source level.

After the talk I asked if he wrote any tests for the code. The answer is no. "How could you write a test for the emerging behavior?" Jeff Grigg put it a different way: "How could you write a test for 'this is fun?' You let the user use it and watch them having fun!"

Read: Direct Manipulation, Emerging Behavior, Untestable Qualities, ...

Topic: [Aug 30, 2005 13:11 PDT] 9 Links Previous Topic   Next Topic Topic: A message to Sun engineers: Please stop making my code ugly

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use