Friday Mar 11, 2011

Now that I've Installed Java, What do I do?

Consumers will eventually go through the experience of installing Java on their computer.  Some of the situations that trigger this activity are:
  • The computer they bought has Java pre-installed, and now there's a security update they want to get
  • The user wants to play a game (or use a banking app, file their taxes, etc.) that requires Java, and their computer doesn't have it, or has an old version.
  • Somehow they are told to install Java (perhaps an application that they use at work will need it).
Our current Java installer is really a "one size fits all" solution.  Although the situations are quite different, the user will eventually see the same set of installer panels.  The experience leading up to the installer launch is the only way we have to cater to the differences.

In the future, we are developing an installer that is more flexible and can be tailored to the specific scenarios where Java needs to be installed or updated.  This will streamline the experience so that installing Java will be easier.

You'll notice a new layout, simpler text and an overall cleaner look.  Where in some situations you would previously see a progress indicator before the installer Welcome panel was shown, you won't have to wait for that part of the download any more as it will occur while you're looking at the Welcome panel.

Once the Java installation has completed, the browser refreshes to a page that will verify that the various components of the Java platform are hooked up correctly.  Or, if you were installing Java because something on the page requested it, then the browser will show the desired Java content.

If you look around the web, there are examples of functionality that are implemented in Java because of it's unique power and flexibility -- or just because it's fun!  Some examples that I've found are:
Take a look around the web and let us know what Java content you find.  And let us know how your experience installing and using Java goes.  We really do read those comments that are entered through the little +/- icon on the lower right corner of the browser window!

Sunday Jun 14, 2009

JavaOne 2009: Thoughts from an Interaction Designer

JavaOne 2009 was a terrific event for developers.  Great engineers in the field presented their work and gave the attendees information on the latest Java developments. Vendors of Java frameworks, tools and other useful stuff were showing their wares in the Pavilion. Lots of new stuff like the Java Store, JavaFX 1.2 and JavaEE 6 was announced.

I've been attending JavaOne since Y2K and have learned a lot about both the platform and the developers who rely on it to get their job done.

Here's a blog entry from Karen Stanley, a member of the Java user experience design team who has just attended JavaOne for the first time.

And just for fun, here's my picture with Duke.Jeff and Duke at JavaOne 2009

Wednesday Jun 03, 2009

Deploying Java and JavaFX Consumer Applications

Jeff Hoffman

Jeff Hoffman is the lead user experience designer for Java Standard Edition.

JavaOne 2009 is here...

Last night the entire user experience team on Java and JavaFX gathered to discuss what we do with some of the attendees at our Birds-of-a-Feather (BOF) session.

Tonight, we have a second BOF that is focused on deploying consumer applications through the web using Java and JavaFX.  For those interested, the slide presentation is available here.

Now it's back to the show...

Thursday May 21, 2009

Participate in Design at JavaOne 2009

Jeff Hoffman

Jeff Hoffman is the lead user experience designer for Java Standard Edition.

Hey There! JavaOne 2009 is almost here... The center of amazing developer activity will be the Moscone Center in San Francisco from June 2nd to 5th. Most of the exhibits and sessions highlight technology and the tools-of-the-trade for the Java developer set, however there is definitely content that is of interest to user experience designers.

I've made a list below of those sessions that are hosted by folks I know and respect. I heartily recommend checking them out. Make sure to add the ones you want to attend to your Schedule Builder since I expect that it may be hard to get in at the last minute.

I'm Speaking At JavaOne

Of course, there are the BOFs that I and my designer cohorts are hosting. We want to engage developers in an open discussion on user experience issues, help answer questions and provide pointers to useful resources.

I'm looking forward to seeing you at JavaOne 2009! Stop by the Designing the User Experience pod in the Pavilion to say hello, and come to one or both of the BOFs listed above.

Sunday Nov 16, 2008

Software Design and Entertainment Value

Jeff HoffmanJeff Hoffman is the lead user experience designer working on Java Standard Edition and JavaFX. He's been designing both consumer and developer oriented products since before the boom.

Last night I went to the movies with some friends.  We saw Changeling, a powerful piece set in late 1920's Los Angeles about a woman whose little boy disappears.  Afterwards I started thinking about the parallels between movie making and software design.  I feel that software applications can be designed so that the user enjoys the experience, even if they are performing work-related tasks. 

movie tixGoing to see a movie in a theater is an experience that you expect to enjoy.  Your choice of movie will definitely affect the result,  but in general, it's a time that you are socializing with friends, eating junk food and kicking back to watch a story unfold on the screen.  No matter what kind of story (suspense, horror, comedy, drama), you are going to the movie to gain entertainment value. Similarly, starting up computer software is an action that you perform to gain value. It could be starting up your browser to check online e-mail, or bringing up a spreadsheet program to analyze your financials.

Certainly there are detractors to seeing a movie in a theater (and hence the popularity of home theater systems, which have their own issues as well).  There are the expected issues such as finding the theater, securing a parking space and waiting in line to buy tickets.  Then there are the unexpected problems like denial of your credit card, the movie you wanted to see has sold out and the person in front of you with the annoyingly bright mobile device. On the software side, there are lots of things that interfere with the achievement of the your desired goal and enjoyment of it's use. Examples include poor performance, confusing instructions, unexpected errors and inaccurate results. How often do you select an action that you think will do what you want, only to find out that it doesn't, and it takes minutes (or longer) for you to return to productivity? 

clapperAfter we've gotten past all the expectations and disappointments, we consider how the movie is crafted.  Since it's telling a story, the movie needs a beginning, a middle and an end.  The beginning sets up the characters, time and location.  It gives you just enough context to understand what comes next (usually, though there are exceptions like Memento).  The middle of the movie is where all the really interesting stuff happens.  And the end of the movie is where everything is neatly tied together (though explicit loose ends are kept around for possible sequels).  This way you can go home with the whole story, and you feel complete.

You can think about software in a similar way.  When you start a piece of software, it should provide you with the appropriate context to begin performing tasks that will achieve your goal.  This can be an obvious "Start Here" action, or a workspace that contains items of interest.  For example, if you're creating a home movie to share with folks, you might want a timeline, a way to get at your video clips and a place to see your interim results.  Once the context is set, you can begin the real creative work, for example arranging clips, adding transitions and titles and adjusting the sound levels.  At the end of this process, you're ready to share your work, so you package it up neatly and post it on your website.  You now feel as though you've completed your goal, and you are happy.

Save the Date
As we're in the final throws toward releasing JavaFX, I have realized that the entertainment value of this platform is going to be a key to its success.  An effort that my team and I have been spending a lot of time on has been designing sample applications to show off the capabilities of JavaFX 1.0 (along with the unbelievably productive Josh Marinacci).   Each of these samples needs to tell a story and must have an easy to understand beginning, middle and end.  Developers rely on the samples to get started, and to help them reach their goal of creating a compelling application.

So keep on the lookout for the launch of JavaFX 1.0, and check out the gallery of sample applications.  We hope that they will educate, as well as provide some entertainment value!

Wednesday Aug 20, 2008

JavaFX Project Nile Screencast

Jeff HoffmanJeff Hoffman is a senior user experience designer working on JavaFX. He's been designing both consumer and developer oriented products since before the boom.

Check out my debut screencast!

I introduce Project Nile, which is a piece of the JavaFX story.  I then describe how it integrates a couple of well known designer tools (Photoshop and Illustrator) with the NetBeans JavaFX developer tools.  

Project Nile, like the rest of JavaFX, is currently in its Preview release, so I encourage you to try it out and post your feedback on the Project Nile forum.


You can see this and other screencasts on the NetBeans.TV site.


Wednesday Aug 06, 2008

JavaFX Preview Release

Jeff HoffmanJeff Hoffman is the lead user experience designer working on Java Standard Edition and JavaFX. He's been designing both consumer and developer oriented products since before the boom.

Sun has released the preview version of the JavaFX SDK. JavaFX is a client scripting technology for creating rich Internet applications (RIAs) with immersive media and content across the multiple screens of your life (that currently means the web and Windows/Mac OS X desktops, but will soon include mobile and TV as well).  You can create applications that look like these:

StockWatcher (JavaFX Sample App) 

JavaFX Clock Sample

The xDesign team has been involved in creating the developer network website that you can check out here. We have also worked with numerous writers and engineers on tutorials and samples to show off some of the great features of JavaFX.

Of course, you'll need to have the Java runtime on your system, and the beta of our upcoming Java 6 Update 10 release can be downloaded from here (click on the first orange button labelled JRE 6 Update 10 Beta). And we've already blogged about our involvement in this release.

If you're a blogaholic, then click on over to the JavaFX Blog for lots of interesting stuff.

Monday Jun 09, 2008

How did our JavaOne talk go?

JavaOne 2008 is done...and there are lots of good memories. Jindra and I spent the week learning and practicing our talk, as well as wandering the pavillion and attending sessions. Our slides can be accessed here on the JavaOne Online site (note that you will need to log in as an Sun Developer Network member to view the slides -- registration is free and you won't be spammed so go for it). Also check out the slides for the other User Experience related sessions (TS-6929 Creating a Compelling User Experience, TS-6470 The Layperson’s Guide to Building a Better User Experience, and TS-5500 The Desktop Java Technology Lovers Survival Guide)

Speaking at JavaOne is totally exhilirating. Our session took place in a large room and was well attended. This year's JavaOne enabled folks to "pre-register" for each talk for guaranteed admittance, so we watched the number of prospective attendees grow during the week. In the end, about 600 folks signed up and 500 actually showed up. Neither of us has presented to this large of an audience before (we were really excited last year when our BOF had around 150 people). Since we were both new to delivering a technical session, we went through the material much more quickly than during our rehearsals. Next time we will be better prepared by making sure we have some extra material in case we finish too early -- it's easier to keep talking about stuff than to make things up.

Jeff and Jindra during Q&A

Here is a photo of us during the question and answer period of the talk. We definitely have a bit of that "deer in the headlights" look. One disadvantage of having your talk scheduled on Friday of JavaOne week is that you are nervous with anticipation for pretty much the entire conference. There are certainly benefits to presenting early and getting it "out of the way".

JavaOne attendees have high expectations, and since this year's conference featured a set of good user experience sessions, we were in very good company. Our audience was very supportive and we didn't lose many people after we started talking... If anything, I believe the folks wanted more details than our 101 level talk provided. Once we've reviewed the feedback on our audience response cards, we'll start planning for next year's session and take their comments in to account.

If you have some ideas for user experience topics that would be of interest to the wide range of Java developers who attend JavaOne, we invite you to leave your comments on this blog.

Jeff Hoffman is the lead user experience designer for Java Standard Edition.

Jindra Dinga devotes his time to improving the deployment experience of Java for both developers and end users.

Monday Apr 28, 2008

NetBeans Accessibility Plugin

Jiri Mzourek is a senior manager in xDesign, responsible for Sun Developer Products and SOA/BI. In his spare time, he evangelizes usability in the Czech Republic by organizing SIGCHI meetings, World Usability Day, and working closely with the Czech Technical University on usability and accessibility related projects.

Exciting news!!!

Have you ever dreamed of developing an accessible Swing GUI the easy way? Stop dreaming and checkout the new NetBeans a11y plugin!

Let's start from the beginning:

The xDesign team in Prague has a long history of cooperation with our local Czech Technical University in Prague, Department of Computer Science and Engineering. For example, together we built the first usability lab in our region, organized a local World Usability Day, and ran Czech SIGCHI. The last 12 months we also cooperated on the a11y plugin for NetBeans. The main goal for this plugin was to allow Java developers without any special knowledge of accessibility to develop accessible Swing GUIs in NetBeans.

After a year we are proud to announce the availability of version 1.0 (for NetBeans 6.0 and 6.1)!

How you can use it:

1) If you don't have it already, get NetBeans 6.0 or 6.1 from

2) Download the a11y plugin from , or use the AutoUpdate (Beta) functionality built into NetBeans. If you downloaded it manually, once you're running NetBeans, from the pull-down menus go to Tools -> Plugins, select the "Downloaded" tab, and click on the "Add Plugins" button; then browse your disk for the downloaded plugin (nbm file) and select it.

3) Now, start the NetBeans GUI Builder (for example add a new JFrame file into an existing Java project.)

4) Go to the Window menu and select "A11Y Result Window". That's it!


Now, when you edit the GUI it will automatically be checked for accessibility. The findings will be sorted into 3 categories (Errors, Warnings and Infos), which will be described and also will have a suggestions on how to fix them. By double clicking on the findings, you accept the suggested fix (for example, double clicking a "Name" error would add an appropriate accessible name). More details (for example checking of tab-traversal) is described in the documentation.


Many thanks from all of us to the Sun External Research Office for their financial support, Tomas Pavek (NetBeans engineering manager) for technical support, Max Sauer and Martin Novak - who wore two hats during the process (Sun QE and CTU students) and for their contributions and cooperation with all of the other CTU students.

Monday Apr 07, 2008

User Experience Blooms at JavaOne 2008

Jeff HoffmanJeff Hoffman is the lead user experience designer for Java Standard Edition. He's been designing both consumer and developer oriented products since before the boom.

Springtime is in the air! The flowers are blooming and the trees are sprouting branches. Along with nature's beauty all around us, it's a sign that we're getting closer to a special time of year for Java developers...JavaOne!

I've been attending this show since 1999 and have always been amazed at the array of Java development related topics -- except for putting good user experience design practices to work for your applications. Sure, there are always wonderful discussions about adding fun visual effects like animations, reflections and transparency to help make your application stand out from the crowd. But developers have deeper questions -- like how to make an application work the way their users expect.

JavaOne SpeakerI'm very excited to report that the 2008 JavaOne show (May 6-9 at Moscone Center, San Francisco) will include at least four technical sessions focused on user experience. There are also a whole bunch of sessions on the latest fun stuff you can do with Java 2D and 3D Graphics, Swing, JavaFX Script and more. I'll be holding a session along with my xDesign colleague Jindra Dinga called Designing GUIs 101 (TS-4968) where we will use an end-to-end example to illustrate our straight forward, repeatable process for designing GUIs that meet the user's needs effectively and efficiently.

Our talk will cover the important phases of a good design process:

  1. Discovering the User's Goals and Tasks
  2. Gathering Requirements
  3. Defining the Task Flow
  4. Designing the GUI
  5. Gathering Feedback

And how we apply these practices when we are designing a specific feature (based on a current command line interface) within a GUI desktop tool. I'll be writing more about our technical session in the weeks right before JavaOne.

To round out this "mini-track" of User Experience sessions, I've discovered three talks from folks who (like me) are interested in enhancing the user's experience with software and are spreading the word about how to make sure it is properly considered during development. They are:

Looking forward to seeing you at the show!

Friday Nov 30, 2007

What's your best user experience?

Really, I want to know, so I'm taking a page out of Mary Mary's play book and offering you something in return. I want to hear what your best user experience has ever been with a product, service, or technology. You get to choose, just keep it rated "G". I will select my favorite submission, and in return, happily give you some of my prized Sun tchatchki ... I have a lot of it, because I've been here for nearly 12 years :) The picture below just has what I could grab in 30 seconds in my office.

Here's how it will work. You write to me (jenm at sun dot com), and briefly describe your best user experience with a consumer product, purchase, health care visit, or anything that describes an experience where you felt like, "Wow ... all [things like this] ought to be this fun or easy." I'll choose my favorite response, and in return I'll mail you an item from the picture above -- just tell me what you'd like the most. Here are the cool things up for grabs:

  • A Jini champagne flute
  • A real Java ring
  • Lapel pins, featuring one of: Duke & Java, Jini & the lamp, 100% pure Java, Sun World Cup 1994, Happy 10th Birthday Java.
  • A watch: either a ladies' Sun watch or a mens' java.rmi watch featuring Duke
  • AnAmazing Adventures of Duke comic book from 1996, 16 pages
  • A Duke for President poster
  • A Duke for President magnet (that looks like a bumper sticker)
  • A set of 3 (yes, 3!) Sun stickers with the tag lines, "When in doubt, share." "On the path less traveled, there are a lot fewer ruts." and "The road to innovation isn't paved at all."
  • A 100% Pure Java keychain

So, send me mail. Let me know what your best user experience has been, and with your permission, I'll share it next week. With the holiday season upon us (choose whichever holiday suits you :), I'll keep asking questions, and offering up up new stuff.

Jen McGinn is an interaction designer in xDesign who is working to improve the user experience with software installation and registration. She has an MS in Human Factors in Information Design and works out of Sun's campus in Massachusetts.

Thursday Sep 27, 2007

Improving the Java User Experience

Jeff Hoffman has been designing developer and consumer software at Sun since before the boom.

Pop Quiz: What is the application, delivered by Sun, that is most used by people around the globe?


There are about 1 million successful installations of Java every day using the Java installer (the installer is just needed for the Windows platform, because Java is already included with Solaris and many Linux distributions, and Apple provides their own Java installer). With all those eyes on it, the installer design receives a lot of attention. The Java installation process may be the first experience that a customer has with Sun and we do our best to make this experience simple, fast, and aesthetically pleasing.

From the user's perspective, the installation process usually starts at a third-party website, which needs the latest Java version to run an applet. The applet could be a game (, a map locator (, or the virtual view of a cruise ship cabin ( The Java installation experience presents a unique challenge for Sun -- we wanted to make this experience positive for the end user, while providing brand recognition for both Sun and the applet's provider.

Let's have a look at the old installation experience:

The user starts at a third-party website by clicking the "Get Java" graphic which leads to the download and enables them to install the latest version of the Java runtime environment. This download page is simple and straight forward, containing a single button to begin downloading the Java software. The default "automatic" installation process from Internet Explorer involves downloading a small application, which launches the Java installer UI and then continues to download the files that contain the Java runtime environment.

This installer design attempted to reduce the number of panels by putting more "decision points" on a panel -- for example, the initial panel had three purposes:

  1. confirm that Java was to be installed
  2. Display the license agreement and get the user to agree
  3. Provide typical and custom option radio buttons

The design placed too much information on a single installer panel making it appear complicated to the typical consumer. Other installer panels were not visually attractive due to spacing and alignment issues.

We had a couple goals for our redesign of the Java 5.0 installer. The first goal was to keep the number of steps to a minimum, making sure that each step had only one necessary decision point. While creating the current design, the challenge of incorporating the variability (when the user will see a third party offer, does the user have to restart their browser) meant that we had to spec out the various paths and ensure that they made sense. Also de-emphasizing the "custom" install options was necessary.

The second goal was to manage the changing nature of the steps. Our installer has the capability of offering third-party bundled software, such as the Google toolbar. This offer is only shown if the user does not currently have the offered software, or if they have an outdated version. The design of these optional panels needed to be modular so that they would not disrupt the flow of the installation process.

So now lets look at the new Java installer design:

The first panel of the Java installer UI confirms that the user is installing Java, and gives them pointers to important information like our privacy policy and license agreement.

It's still possible for a more advanced user to customize parameters of the install, but since this level of control is not necessary for most users, this feature is not checked by default and placed out of the main control flow. A single click on the first installer panel both accepts the license agreement and continues the installation of Java.

A second panel may appear, offering the user a bundled installation (for example, the Google toolbar).

The next panel (not shown here) shows the progress of the installation process and a message to reinforce the Java brand. When the installation completes, the user is shown the last panel of the installer, which confirms that the Java software was installed without incident. On this last panel, the user may see a checkbox to restart their web browser.

These improvements are already available in the latest release of Java 6. If you want to know about other improvements that have been made in the Java installation and deployment arena, keep a look out for a future blog entry.

Wednesday Aug 01, 2007

Deconstructing the Redesign

Jiri Mzourek is a senior manager in xDesign, responsible for Sun Developer Products and SOA/BI. In his spare time, he evangelizes usability in the Czech Republic by organizing SIGCHI meetings, World Usability Day, and working closely with the Czech Technical University on usability and accessibility related projects.

In May of 2006 Jan Rojcek began a redesign of the web site based on the results of some out-of-the-box usability tests that we'd conducted. You can find one example of the test on our opensource website

The main issues were:
  • The design didn't work well for a new visitor (potential user)
  • To see a NetBeans screenshot, a visitor had to select the correct link from the 42 available links on the home page, and 38 links on NetBeans product page
  • A visitor had the same problem (choosing the right link from 42 or 38) when trying to get to a comprehensive feature description
  • There were 4 pages describing what NetBeans was (First time here?, IDE, Switch, About)
  • Download took at least 3 well-aimed clicks
  • Usability study findings:
    • 3 participants (out of 8) couldn't find how much NetBeans cost!
    • 5 participants reported missing screen shots and too much text on the web site
    • 3 participants reported they had to browse too many pages to find basic information

With this (scary) list of issues, Jano got a "go" to go ahead with the redesign.

He worked with the stakeholders (NetBeans engineering, marketing and webteam) to agree on the main goals of the redesign:

  • New visitor (potential user – not currently using NetBeans) is our primary target
  • Make the basics clear
    • “What is it NetBeans?”
    • “How much does it cost?”
    • “What is so good about it?”
    • “Why should I start to use it?”
  • Make download straightforward
  • Make more attractive
The redesign was focused on the homepage, product page, download page, docs and support page.

Jano created the first sketch of the new homepage:

He sent it to Leos Tronicek (a visual designer), who created two options:

Stakeholders picked the blue one. So Jano, Josef Holy (another interaction designer) and the NetBeans web team fine tuned that one and created a prototype, which was put on staging server.

So, what was next? Of course, Jano wanted to make sure the redesign met the design goals, so he created a script for a second usability study, which was then conducted in September 2006 by Jakub Franc (a user researcher) and Josef Holy. Sorry, that test report is not public, but here is a list of the main issues found with this design for the homepage:

  • The upper banner with the main download button seemed to be ignored by significant number of participants.
  • A majority of participants complained that information on the homepage did not inform them about NetBeans sufficiently. They expected "short", "summarized", "introductory", "high level" information about the product.

Based on those results, Jano polished the design:

The new website was launched on October 30, 2006, on schedule.

For NetBeans 6.0 there will be couple of new changes, driven mainly by simplified NetBeans packaging and download. We'll get rid of the whole "Add-on" section which will mean updating the layout of the whole front page. Details are still TBD.

Monday Jul 30, 2007

Blogging by Design

Nalini Kotamraju is a user researcher in xDesign, and a PhD in Sociology. She has a penchant for research methods and telling it exactly like it is.

Recently, I had a conversation with Anant Kartik Mithal, who is Director of xDesign (Software Experience Group) at Sun Microsystems, Inc. xDesign provides a wide range of design services for Sun's software products including visual and motion-graphic design, interaction design, usability reviews, user research, web development and assistance with accessibility compliance.

Nalini: Why launch Design@Sun, a blog by and about Sun's Software User Experience Group (xDesign)?

Kartik: xDesign does an incredible amount of absolutely fascinating design work. As I spend time talking to all kinds of people across Sun — designers, engineers, managers — I listen to the problems they're trying to solve, and the problems are simply fascinating. I think a lot of people inside and outside of Sun would be interested in them. It’s interesting to understand what problems people are solving and how everyone solves them differently. And it’s fascinating to see how people think through the solution process. Look at the design for Solaris’ start-up, for example. I would have done it differently. It’s wonderful to see an absolutely fantastic design that’s different than what I might have done. And the same goes for the work in the Tools space, in the Web Admin space.

Nalini: What kind of problems and solutions will Design@Sun cover?

Kartik: The designers in xDesign, for example, are looking at how we can turn Solaris into a modern operating system and what that means. How can we get the Solaris start-up experience to be fun? Something like start-up poses an interesting design issue. It’s something a user has to go through; it's not something the user necessarily wants to go through. This kind of design problem that’s a little different than those users encounter when executing tasks. If I’m using JavaFX to create an animation, I’m actually getting work done. But if I'm doing start-up and install, these are wasted steps. So how can you make them interesting for users? How can you give the user something back while they're happening? If you take our individual software products, they’re all very different. What we’re trying to do is be as similar as possible across our products. So if you learn to use one of them, you can learn to use all of them. That’s something we achieved in the productivity apps a long time ago, and we’re doing it in the admin apps now.

Nalini: What will people get from Design@Sun?

Kartik: We hope to share with our readers a bunch of interesting problems that Sun is trying to solve. A lot of our stuff is open source so people can follow along as it shows up and comment if interested. Sun is all about making our customers more successful and more productive. And design is all about supporting that.

Also, one of the things that some people have lost sight of is that Sun invests a great deal in its user experience. Whether it’s the hardware or the software. It’s very important to us. It’s very important to us that administrators are able to assemble and disassemble systems as easily as possible. That system administrators are productive with Solaris. That developers are productive with NetBeans. That everyone is productive with StarOffice. We want everyone to be productive.

We were at CHI this year, as we are most years. I was a little shocked when a few people came up to me and said that they didn’t know that Sun had HCI (human-computer interaction) professionals. Very prominent people in the field of HCI work at Sun. Sun has been very active in this field, and maybe this blog can provide people with a better idea of what Sun is doing in design and user experience.


xDesign is a software user experience design group at Sun.
Follow us on Twitter : Flickr : Blog (see feeds below)


« February 2017