Skip to main content

Keeping customers happy

Posted by daniel on March 17, 2005 at 6:57 AM PST

Joel off Topic

Yesterday Joel Spolsky (Joel on Software) gave an entertaining talk at O'Reilly's Emerging Technology conference. He's on his way to SD West where he might speak on the same issues. His talk was funny, well-delivered, well-paced and was supported by fun images, musical examples, and clever presentation devices. He pointed to the iceberg view of software where 90% of the program is the guts which sits below the surface. This is where programmers spend most of their time. Customers (and often managers) concentrate on the 10% that sits above the water. They look at the drop shadows in your graphs and the bevelled edges on your windows to decide whether or not your software is good.

Spolsky argued that the iPod is beautiful and that's why people will pay $150 for it than for an uglier competing device that may be for uglier devices that might have the same amount of memory and a comparable set of features. He showed an example of a project he worked on where the fix that convinced the client to sign off was in making the bar charts prettier. He advised the audience to obsess on these type of details and also provided examples of working with emotional cues for potential customers. Customers may not ever realize what's wrong with the guts if you polish that top 10% that sits above water.

In many ways he took his own advice. He showed pictures of movie stars, played rock music from a time when the audience was younger and happier, showed images of iPods, and ran jokes about Windows and remote control devices. We almost forgot that he was delivering a completely different speech than the one he promised. He was supposed to deliver a talk about community building. The talk he gave was nothing like it. It was as if a client hired you to deliver a spreadsheet program and you instead delivered a really great first person shooter game.

Most of the audience for his talk walked away happy. Later, one attendee complained that he had chosen among three talks and would have attended another if he had known Joel was going to talk about something else. Although programmers might pay too little attention to the ice that sits above the water, we can never take our eyes off of the mass that lies below. Customers may be attracted to the pretty UI features they can see but they will sink when they run into unseen problems below.

Eitan Suez blogs about My Extended Java Family in today's href=""> Weblogs . "Community systems such as are a reflection of the thousands of people who each contribute a small part to a greater whole."

Brian Repko joins us as a new blogger for and posts EJB3 Dependency Injection vs Lookup which is a link to a " Whitepaper on EJB3 dependency injection issues."

Simon Phipps blogs that " NetBeans now does Jython and Groovy!" in his post Announcing Coyote.

In Also
in Java Today
, David Kearns helps you with Choosing a Java scripting language. In his JavaWorld article he
"describes some of the issues that come with supporting a scripting language in your Java application and compares Groovy, JudoScript, Pnuts, JRuby, Jacl, Jython, Rhino, and BeanShell in a variety of ways to help you make the right choice."

V. Benjamin Livshitts has written the eleventh in a series of twelve OTN articles on Mastering J2EE Application Development. In Looking for Memory Leaks, he offers the following advice for avoiding memory leaks, "Don't assume that the garbage collector will deallocate all unused memory for you. Do profile long-running programs to find memory leaks.
When using the listener pattern, make sure that register and deregister-listener calls match on all execution paths."

In Projects and
, the Javapedia page TestingGUIApplications discusses the importance of and various methodologies for performing automated testing on Java desktop GUI applications. It also lists many tools available for testing AWT, Swing, and SWT applications.

The Java Web Services and XML Community project Direct Web Remoting offers a simplified way to call selected Java methods from JavaScript. DWR simplifies the process of writing dynamic web pages that interact with a server, and the project singles out GMail as the kind of application it can help create.

Kohsuke contributes to the thread
Should JAXB2 fully support XML Schema?

in today's href="">Forums. "See and for how the generated classes will look like."

Following up on the
Chat on the Hotspot virtual machine
, rossknippel writes "The priority is to add optimizations to Hotspot that are benefical to the general set of applications. These optimizations would be triggered by the opportunity to apply them. So there are no plans to add a lot of optimization tuning options to the Hotspot runtime compilers."

In today's
News Headlines

Registered users can submit news items for the href=""> News Page using
our news submission
. All submissions go through an editorial review before being
posted to the site. You can also subscribe to the href=""> News
RSS feed.

Current and upcoming href=""> Java Events :

  • March 14-17, 2005 href="">O'Reilly Emerging
    Technology Conference

Registered users can submit event listings for the href=""> Events Page using our href=""> events submission
form. All submissions go through an editorial review before being
posted to the site.

Archives and Subscriptions: This blog is delivered
weekdays as the href="">Java
Today RSS feed. Also, once this page is no longer featured
as the front page of
it will be archived along with other past issues in the href="">

Joel off topic