<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>NetBeans Interviews - Roman Strobl </title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <meta name="description" content="Interview with Roman Strobl">
  <link rel="stylesheet" type="text/css" href="../../../netbeans.css">
<style type="text/css">
  .question { font-style: italic; font-weight: bold; padding-bottom:3px; padding-top:8px; }
  .answer { margin-left: 40px; }
</style>

 </head>
 <body>
  <h1>Interview with Roman Strobl</h1>

<h1>I. Introduction</h1>

<br><img src="../../../images_www/articles/interviews/Roman_Strobl.jpg" title="Roman Strobl at work" alt="Photo of Roman Strobl" style="float:left; margin-right:10px; padding-bottom:5px; padding-top:5px;"></div>

Roman Strobl is a Software Quality Engineer working on NetBeans.  He writes one
of the popular blogs at sun.com.  In May 2005 Vincent Brabant interviewed him
for <a href="../../news/newsletter/index.html">the NetBeans Edge</a>.

<p>
<div class="question">1. Roman, when did you join the NetBeans team?</div>
<div class="answer"><b>Roman</b>:  I've joined the NetBeans team in October 2004, so I'm still quite new in here.</div>

<div class="question">2. Why did you choose to join the NetBeans team?</div>
<div class="answer"><b>Roman</b>: I always wanted to work in a larger group of developers.
NetBeans was a nice opportunity because the team is in Prague and it is a real opensource project.
<br>
</div>

<div class="question">3. What is your task/role therein?</div>
<div class="answer"><b>Roman</b>: I am a software quality engineer.
These are fancy words for being a tester.
<br>
I've also joined the new usability team which is busy with improving user experience with NetBeans.
<br>
Next to it, I try to do my best to promote NetBeans.
<br>
</div>

<div class="question">4. How is the NetBeans quality engineering team organised?</div>
<div class="answer"><b>Roman</b>:
We have a team of 25 quality engineers.
We used to be two teams, one for core development platform and one for webapps and J2EE.
These two teams joined recently.
A part of the testing is also done by NetBeans community -
through NetCat program or simply by submitting issues to Issuezilla.</div>

<div class="question">5. 25 quality engineers? Really? Personnaly, I never imagined that you were 25 peoples to check the quality of NetBeans.</div>

<div class="answer"><b>Roman</b>:
Yes, 25, although some of them work parttime.
It's a lot of work to check NetBeans on 7 platforms, with
various JDKs for all of the modules and features which are in NetBeans
(you can count the number of combinations for homework).
</div>

<div class="question">6. Who decides about the Test Scenarios?</div>

<div class="answer"><b>Roman</b>:
It's a responsiblity of the quality engineer
to come up with test scenarios for the module(s) he works on.
<br>
</div>

<div class="question">7. How do you actually test NetBeans?</div>

<div class="answer"><b>Roman</b>:
Basicly, it means to go through all test cases on
all supported platforms with various JDKs.
Alltogether it's a huge amount of work.
Part of the effort is simplified by using automated tests.
<br>
</div>

<div class="question">8. So, you are using tools to automate tests?</div>

<div class="answer"><b>Roman</b>:
Yes, we are.
There two types of tests - unit and functional.
Unit tests are maintained by developers, while functional tests by quality.
We use several frameworks developed inhouse - NBJunit, Xtest, Testtools, Jemmy and JellyTools.
<br>For details, see <a href="http://testtools.netbeans.org">http://testtools.netbeans.org </a>
</div>

<div class="question">9. Test Specifications are based upon which document?</div>

<div class="answer"><b>Roman</b>:
Test specifications are based on the functional and UI specs.
If any of these is missing, than we try to get the information for creating test scenarios from developers.<br>
</div>

<p><h1>II. NetBeans IDE 4.1</h1>

<br><img src="../../../images_www/v4/4.1-banner-v3.png" style="float:left; margin-right:10px; padding-bottom:5px; padding-top:5px;">
<div class="question">1. What do you think about the evolution of NetBeans 4.1?</div>
<div class="answer"><b>Roman</b>:
We are getting further - NetBeans is improving every release.
There's a lot of work in front of us, but I am also proud about the achievements so far.
All java developers should take a look at NetBeans 4.1 once released.
If they think NetBeans is not good enough yet, they should let us know what they miss
and in next release NetBeans will be again closer to the IDE they will love to use.
</div>

<div class="question">2. What is your prefered feature in the NetBeans IDE 4.1?</div>

<div class="answer"><b>Roman</b>:
There are several -
as I am doing quality engineering for editor module
I am excited about hyperlinking and error stripe.
>From the whole IDE - there are great improvements
in the project system and the J2ME stuff is really cool.
And of course J2EE support is a big deal.
</div>

<div class="question">a) Could you tell us more about hyperlinking and error stripe?</div>
<div class="answer"><b>Roman</b>:
<br/>
<br/>
<img src="../../../images_www/articles/interviews/hyperlink.png" style="border: solid 1px black" align="right" />
<img src="../../../images_www/articles/interviews/error_stripe.png" style="border: solid 1px black" align="right" />
<b>Hyperlinking</b> is a navigation tool you can use to go through the source codes.
You just press CTRL and hover mouse over your source code. <br>
The java elements get underlined and you can jump to the declaration of them. <br>

So you can very easily go through your source codes, almost like if you were using
a web browser. There are also back and forward icons, introduced recently.

<p><b>The error stripe feature</b> is a right side stripe which shows you all errors
in source code.
Not only shows, but you can click on it and it jumps to the error,
bookmark, breakpoint, todo, etc.
A pity it is not a part of the release, but it is available through
autoupdate for everybody.
<br/>
<br/>
<b>Want to know more?</b> <br>
<a href="http://blogs.sun.com/roller/page/roumen/20050330#lots_of_netbeans_editor_improvements">Read Roman's Blog entry</a>
</div>

<div class="question">3. What is the more annoying stuff in the NetBeans IDE 4.1?</div>

<div class="answer"><b>Roman</b>:
I'm annoyed by the Tools | Options dialog.
Hopefully the work on redesign has already started. <br>
There are other issues which annoy me and I will work on getting them fixed by developers.
</div>
<!--
<div class="question">4. When will the final release of NetBeans IDE 4.1 out?</div>

<div class="answer"><b>Roman</b>:
As planned, it will be out during this month.
</div>
-->
<p><h1>III. The NetCat Program </h1>
<br><img src="http://qa.netbeans.org/processes/cat/41/images/lupa.jpeg" style="float:left; margin-right:10px; padding-bottom:5px; padding-top:5px;">

<div class="question">1. What do you think about the NetCat Program? Is it really adding value?</div>
<div class="answer"><b>Roman</b>:
Definitely. NetCat is great not only for bug reporting, but it also opens
discussions about the recently implemented features.
It represents part of the voice of the customer which is very
important to listen to if you want to create a really good IDE.
</div>

<div class="question">2. Did NetCat help to enhance the quality of the NetBeans 4.1 release?</div>

<div class="answer"><b>Roman</b>:
Surely it helped.
Although the most valued feedback came at the end of development cycle
- we wish it came earlier  ;-)
</div>
<!--
<div class="question">3. Do you think RC2 will be the final one?</div>
<div class="answer"><b>Roman</b>: I think there will be one or two more rounds. Quality is important for NetBeans and we want to make sure all improtant issues are fixed.
</div>
-->
<div class="question">4. What has been fixed in RC2 comparing to RC1?</div>

<div class="answer"><b>Roman</b>:
There were important debugger fixes +
several other few fixes from other modules.
</div>

<p><h1>IV. NetBeans IDE 5.0 </h1>
<br><img src="../../../images_www/download-nb-3.gif" style="float:left; margin-right:10px; padding-bottom:5px; padding-top:5px;">

<div class="question">1. Which features would you like to see in the NetBeans IDE 5.0?</div>
<div class="answer"><b>Roman</b>:
I want to see many of them -
my list starts with editor improvements -
better formatter, improved and faster code completion,
live templates,
support of various keybindings,
fixing of old enhancements from Issuezilla...
I could go on with the list,
but these are the most important ones.
>From the rest of the IDE I am very much looking forward to the new GUI builder
with natural layout which I already saw in action and it looks pretty amazing.
I am also looking forward to the simplified CVS module.
</div>

<div class="question">a) Could you please give us more information concerning the improved and faster code completion?</div>

<div class="answer"><b>Roman</b>:
Certainly.
At first, we should not forget the code completion's performance is already slightly improved in 4.1 compared to 4.0 release.
Second, the developers are working on a new code completion for 5.0, which is faster - I've seen it live.
</div>

<div class="question">b) Live? Why not integrate it into the NetBeans 4.1 release then?</div>
<div class="answer"><b>Roman</b>:
It would be risky to integrate it into the release now, there may remain bugs
which would not be caught by making it happen fast - and we certainly want to have a stable release. <br>
</div>

<div class="question">2. Any idea of the planning for 5.0?</div>
<div class="answer"><b>Roman</b>:
I do not have a complete overview of the planning - as you now I'm just a quality engineer. 
Surely there'll be a new GUI builder with natural layout and a simplified CVS module. 
I know about lots of editor improvements - better and faster code completion, we were also discussing formatting improvements. 
In the whole IDE you can expect lots of usability improvements everybody will benefit from. 
Support for more J2EE frameworks and application servers will appear, as far as I know.
</div>

<div class="question">a) For NetBeans IDE 4.1, focus was J2EE support. What will be the focus for NetBeans IDE 5.0?</div>
<div class="answer"><b>Roman</b>:
There several themes - usability is one of the important ones. Again, this is not a good question for me.
</div>

<div class="question">b) Will you introduce JSF Support? More Refactoring? Spring? Hibernate?
JBoss? Mustang? Enhancement of Form Editor? Two Way Editing?
Adding J2ME Workflow for J2SE projects?</div>

<div class="answer"><b>Roman</b>:
Wait for the official announcements.
</div>

<div class="question">c) Why are you a bit misterious around the planning?
Why not propose to the community a list of features to implement  / issues to fixes and let's them vote therefore?
</div>

<div class="answer"><b>Roman</b>:
I'm not mysterious, it's just that I don't want to promis something which will not happen. 
Also, planning is out of my competenteces, you should rather ask some of the architecs or managers. 
Sorry, I can't help you with that.
</div>

<br/>
<br/>
<h1>V. His Blog</h1>

<div class="question">1. What about your blog?</div>

<div class="answer"><b>Roman</b>:
There's a lot of tips for NetBeans users,
descriptions and cool demos of new NetBeans features -
everyone should check it out at <a href="http://blogs.sun.com/roumen">
http://blogs.sun.com/roumen</a>.
My blog's mostly among the 30 most popular blogs at blogs.sun.com and still moving upwards.
I want to create more NetBeans flash demos, write about new features
and get feedback from the community as well.
And after all, it's real fun, I can recommend blogging to everybody!
</div>

<div class="question">I am happy to hear that. And you are doing a really good job.
Personally, I think that your blog is doing a very good job to spread news
about NetBeans.</div>
<div class="answer"><b>Roman</b>:
That was my intention from the very beginning. I think we need to spread
the information about NetBeans - NetBeans developers need to talk to developers
working in NetBeans (although I'm in QA now I've been developing for 5 years in my last job).
I hope some others will start to blog as well - this would really help NetBeans
in my opinion. We need to get the information out - mainly the tips&tricks, faqs,
demos, information about new features and so forth.
</div>

<div class="question">2. Somes bloggers are saying that Sun is now too aggressive with their blogs
about NetBeans? What is your opinion about that?</div>

<div class="answer"><b>Roman</b>:
I would tell them to take a look at blogs of people working in IBM
who write about Eclipse  ;-) No, seriously, I think NetBeans is getting better and we need to spread the news.
Hey, Eclipse has so much hype, why should we not spread some good words, too? <br>
We've got some unique features and we want people to see both sides of the story.
So I think promoting NetBeans through blogs is good both for Sun and all java developers,
as long as the blogs are based on the truth and relevant.
</div>

<p><h1>VI. NetBeans vs Eclipse</h1>
<br>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="336" height="280" id="netbeans_336x280" style="float:left; padding-bottom:5px; padding-top:5px; padding-right:8px;">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="../../../images_www/banners/netbeans_336x280.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed src="../../../images_www/banners/netbeans_336x280.swf" quality="high" bgcolor="#ffffff" width="336" height="280" name="netbeans_336x280" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

<div class="question">1. What is your feeling concerning the NetBeans vs Eclipse war?</div>
<div class="answer"><b>Roman</b>:
There's a lot of marketing hype around Eclipse.
NetBeans is improving, there's a lot of hard work done by all people working on NetBeans,
we are seriously competing with Eclipse.
At the end I think both IDEs will prevail and serve different user bases.
Which is quite unfortunate for all commercial IDEs, most of them will be out of game soon.
</div>

<div class="question">2. Is it a good thing to have competition?</div>
<div class="answer"><b>Roman</b>:
Yes, it is.
Competition is good, it makes the better products.
If either NetBeans or Eclipse would be a monopoly,
the development would stagnate which would not be good for developers.
</div>

<p style="clear:both;">

<div class="question">3. Why not join effort to have one nice IDE that rocks?</div>
<div class="answer"><b>Roman</b>:
No, I don't think so.
I don't believe SWT was a good choice for Eclipse.
It's a burden Eclipse will have to carry - it will be hard to maintain the code
for all 5 operating systems they are supporting.
So all bugfixes and enhancements of the widget code will have to be done on
several places, possibly introducing new bugs or inconsistent behaviour on
various platforms. And as I said, choice is good, because it forces both sides
to make better products.
</div>

<div class="question">Personally, I don't want that. I like competition.
And fact that we have two open source IDE is a good thing.
And I am convinced that NetBeans take the good way.
But IBM Marketing budget seems higher than Sun one.</div>

<div class="answer"><b>Roman</b>:
You can say that again.
<br>Yes, IBM is very good at marketing. Hopefully the when the hype fades away all that
matters are the real parameters of the IDEs. Which makes me feel relaxed, because
we are working hard to make a good IDE.
</div>
<p />

<p><h1>VII. Conclusion </h1>
<br><img src="../../../images_www/netbeans-logo-with-org.gif" style="float:left; margin-right:10px; padding-bottom:5px; padding-top:5px;">
<div class="question">Something to say to the NetBeans Community ?</div>
<div class="answer"><b>Roman</b>:
Yes. NetBeans is getting better release by release.
The voice of the community is important -
to build an even better IDE we need input from the community -
think what would help NetBeans the most and engage the discussions in mailling lists.
As for the good news, old enhancements from Isuezilla will get evaluated soon
and I hope to see the important ones implemented.
Try NetBeans 4.1, let us know your feedback and look forward to 5.0 which will
contain some of the killer features -
especially the new GUI builder looks incredible.
</div>

<div class="question">Thank you for your replies, Roman</div>

<p>
<b><i>Roman will be at Java One, you can meet him on the <a href="../../../community/articles/javaone/2005/nb-day.html">NetBeans Day</a>
</i></b>
<a href="../../../community/articles/javaone/2005/nb-day.html"><img src="../../../images_www/banners/nb-day-banner-150x75.png" border="0"/></a></p>

<p><i>This interview has been conducted by Vincent Brabant begin of may. Before the announcement of the final release.</i></p>

</body>
</html>
