Listening to Developers - Why Does it Matter so Much?

Ever since I started to work on larger software projects I realized that one of the most important elements of success of any software project is listening to its users. When companies don't listen to users they end up creating software which nobody cares about (even though their software might be brilliant).

I know quite a few developers - and I'm sure you know them too - who consider themselves as great developers. They think they are creating amazing software, but unfortunately it's amazing only in their little world. Making software which is comfortable to use and provides appealing features for masses is really hard, because most of the time you are building software for a different person than you are.

Sadly, the most brilliant people have often ackward ideas about good UIs. One example: I know a guy who is an amazing developer, but he decided that the web application for management of customer data must contain an SQL interface. So that the customer can do SQL queries directly from the webpage! What a poweful idea! Really great except that users of this web application don't know SQL and really don't want to learn it (they are happy they could learn to operate the keyboard and the mouse).

You might find that example amusing, but I see things like that happening all the time (even here at Sun). At NetBeans our situation is a bit easier, because we are creating software for developers. So there's a probability that what we like ourselves might be likeable by other developers, but not all the time. There are so many different types of developers - some prefer command line-like approach, some prefer visual development and some even like Visual Basic (I am not sure if these can still be called developers though :).

So even if your audience are developers you have a hard job deciding how should the software look like and which features should it contain. Instead of predicting what your users might like, the best thing to do is to ask. But to really get an idea of what users want you need to talk to many many of them.

Where am I heading with this? I strongly believe that the main reason of success of NetBeans and significant growth of developer community in past 2 years are conversations. NetBeans developers daily read and respond to many e-mail threads, communicate via blogs, various forums, talk with developers live at developer events, etc. Thanks to this we develop features people from our community actually care about and thus are happy to use the software (I remember a recent thread where a developer wrote he feels like NetBeans was \*his own\* software, although he never contributed code to it).

So listening to users really matters, but in my opinion Sun hasn't always been listening enough to the developers. It has changed a lot in past few years. Take the dialog around opensourcing of java as one example, opensolaris and glassfish as other examples. You can join our communities and see how the discussions look like.

One of the things I never really undestood (and I have to explain to our customers) is why does Sun provide three Java IDE's - NetBeans, Java Studio Creator and Java Studio Enterprise. It made good sense when the other two IDE's costed money, but nowadays all of them are available for free.

A lot of our users told us that they want to use features from Creator or Java Studio Enterprise in NetBeans. And we listened - right now you have packs available for NetBeans - Mobility Pack, Enterprise Pack, C/C++ Pack. The last piece is still missing and that's the functionality from Java Studio Creator. Those who read my blog or listen to the podcast know that this is under way (although getting it in there is very hard and the first release of the pack will be far from complete):

Visual web design in the upcoming Visual Web Pack for NetBeans
Note: this is not Photoshop work :)

Not long after NetBeans 5.5 is out almost all functionality of Sun's IDE's will be available in NetBeans in form of various packs. This has been a major effort of many people and I would like to thank them for their work. And more importantly, thank you for listening to our community! That's the best recipe for success!

P.S. And yes, we hear you when you tell us we have some work in the editing productivity area... more news on this particular topic later.

The Netbeans folks have set a trend. Really fantastic job!

Posted by Rohan Ranade on srpen 26, 2006 at 04:48 dop. CEST #

Quite a difference from the time when I joined NetBeans team two years ago. At that time there was just the old & ugly NetBeans 3.6! Compare that with what NetBeans offers today...

Posted by Roman Strobl on srpen 26, 2006 at 06:16 dop. CEST #


The screenshot is very interesting, but:
3. and How?
can we get and try that "Visual Web Pack" with NB?

4. Will the source be available?
5. Will there be some sort of "open api", or a way to extend it's functionality? (e.g. with custom controls in the pallete, or behaviour specific to other web frameworks)

Thaks in advance,


Posted by Ahmed Mohombe on srpen 26, 2006 at 06:51 dop. CEST #

Good questions. Here are the answers:

1. Where? On in a couple of months.
2. When? Soon after 5.5 (most probably in November 2006).
3. How? As a new pack on
4. Source available? AFAIK not at the very beginning (Java Studio Creator is a closed source product so it's not that easy). So similarly as Mobility Pack used to be this pack will be closed source at the beginning. However AFAIK the plan is to opensource it as soon as possible (which is not a completely trivial task and takes time, too).
5. I think custom controls will be supported the same way as in Java Studio Creator. Once it's opensourced, there should be some API. I am not sure how hard it will be to add support for other frameworks than JSF, my guess is that not easy.

The pack is being developed rapidly so don't be surprised if anything from the above changes.

Posted by Roumen on srpen 26, 2006 at 07:11 dop. CEST #

Hi Roumen,

Thank you very much for quick and the precise answers :).

I am not sure how hard it will be to add support for other frameworks than JSF, my guess is that not easy.
I just thought how nice it would be to have such a visual designer for plug-ins(for frameworks) like NBWicket et co.
An open(or simple to extend) Visual Designer could be a reason, so that the first time in history developers to choose Netbeans as the first candidate (over Eclipse) to implement support for their frameworks. (one can simply obeserve that this never happend yet).
It could be also a reason for other Non-Java web frameworks/languages to target NB (here Eclipse is also the only player, see: RADRails, PHPIDE, PyDev, etc.)


Posted by Ahmed Mohombe on srpen 26, 2006 at 09:04 dop. CEST #

I agree it could be a good reason but I am not sure if the designer was created with such extensibility in mind. But even if it's not the case it can be evolved... you have a very good idea! We'll know more once the code is available in the open.

Posted by Roumen on srpen 26, 2006 at 09:16 dop. CEST #

Hi, I must say, all the Netbeans teams do a great job! I find me always waiting for next release of Netbeans and always get surprised about how much good stuff you have added, thanks for that!! I really think it the power with Netbeans is the community and all good answer you get every time when you have a question. Have a look on this picture: I think is great! -ove

Posted by Ove Nordström on srpen 26, 2006 at 10:29 dop. CEST #

Yep, I know this cartoon... it's very funny (because projects often really are like this :)

Posted by Roumen on srpen 26, 2006 at 10:51 dop. CEST #

As you talk about Creator pack, I have a question about it.

How much the Visual JSF page designer is different than Matisse ? Isn't Matisse a superset of the Visual JSF designer ? Matisse =?= Visual JSF designer + alignment + extra-components (like container) ?

If so, why not cutting Visual JSF designer integration and working instead on a Matisse code evolution ?

Your answer would help me, and may be others, to know better the programming differences between JSF and Swing and how the RAD way is different for these different technologies.


Posted by Dominique De Vito on srpen 30, 2006 at 04:18 dop. CEST #

Dominuque, the JSF designer doesn't reuse Matisse. Unfortunately Swing differs singnificantly from JSF so it's not easy to reuse it. Also the JSF designer was created even before Matisse existed. Some people expressed interest in using Matisse for JSF but I think web design and rich client design is just too much different for that. But we'll see, maybe some bright people will find out how to make these two work together (and maybe we'll need some new web framework, too).

Posted by Roumen on srpen 30, 2006 at 04:32 dop. CEST #

Well, the Visual designer screenshot in your page looks like very close to Matisse: a left part where one can drag and drop components and on the right, still the palette and the property window. Matisse showed page content is stored as .form file. Then, the Matisse's Java class generation is not a first-class citizen, but a second-class citizen. This kind of generation could be seen as a module, then I see JSP generation/representation as a module too. If we see Java class or JSP generation as modules and if we forget them, then at first sight, the Visual designer and Matisse looks like close according to your screenshot.

On the other hand, Swing is not that far from JSF. First, both frameworks are event-based and component-based. And, JSF could be programmed also "a la Swing", following the Swing way of programming. Some tools are programmed using JSF like that, without any JSP support.

I think a visual designer unification could be interesting, as far as it is possible, through modularization/generalization. This may help taking into account other widget frameworks, like, for example, GWT.

Posted by Dominique De Vito on srpen 30, 2006 at 05:18 dop. CEST #

I agree that this would be great, I just don't think the tools are prepared for it now. Maybe they can evolve and become more generic. I will find out what are the future plans for both projects.

Posted by Roumen on srpen 30, 2006 at 05:43 dop. CEST #

Post a Comment:
Comments are closed for this entry.

Roman Strobl


« červen 2016