| By Kirk Pepperdine | Article Rating: |
|
| March 5, 2004 12:00 AM EST | Reads: |
28,250 |
Well, you may have seen the Java Industry Newsletter's hot story, "Eclipse versus NetBeans." As an editor of this fine publication, it's my privilege to see all of our feedback arriving at my inbox. My first reaction was, oh please, not another IDE war. But I dutifully suppressed the urge to delete the e-mails and started to read them.
Most of the posts tried to be helpful by offering advice like, "Eclipse rocks, its user interface feels more natural and is very snappy." There were other comments like "NetBeans rocks, its user interface feels more natural and snappy." Hum...people, I have news for you; it's unlikely that you're going to change my mind on which IDE I should be using just as I am not even going to try to suggest which IDE you should be using. Why, because it's a personal choice, a choice that is influenced by the problems that we are trying to solve and our various idiosyncrasies.
While developing each of these tools, the implementers had to make choices and trade-offs. Each of these decisions (necessarily) both enables and limits what the IDE can do. In addition, it affects the way in which you interact with the tool in order to get it to perform. If someone made the correct choice for you, you most likely wouldn't notice it because you would feel that the interaction is natural. If someone made the "wrong" choice, you'd certainly notice because you'd need to think (and consequently question) that particular interaction. In most cases, your choice will be that IDE in which the designers/developers have made the most (or most important set of) "correct" choices.
Beyond this, the impetus is not about which IDE is better. It's a tool, and a tool is just a device to help us construct our end product. As is the case with most professions, the tools need to vary to match the skills and abilities of the professional handling these tools. Sure, a Williams Formula 1 racing kart may look a lot like a Ferrari but, at close inspection, a professional will note all of the things that he likes and dislikes about each kart. Each will be set up differently as they try to solve the same problems but with slightly different techniques and configurations. Even identical karts will be configured slightly differently to take into account the differences in the drivers.
So, it was with great relief when I finally ran across a posting from Thomas Hallgren. His post did not resort to telling my why the IDE of his choice was better than all the others. Instead, he wrote:
We have at least two main contenders in both the open source IDE and the Java GUI market. This is extremely good news. Why? Simply because competition is what drives improvement.
So to all you NetBeans fans, rejoice over Eclipse! It forces NetBeans to improve. And vice versa. Same goes for Swing and SWT. And while all users should be happy about this, let the implementers sharpen their swords and keep on fighting.
Now we have something interesting to talk about, competition. It seems strange to me that Sun, on the one hand, promotes competition in the market place, while on the other hand, they have circled the wagons to protect themselves from competing technologies. The fear that a competing technology may split Java is not without merit. The burning question is: Could the SWT split the Java camp? Going back to the kart analogy, does the fact that Williams builds karts differently than Ferrari split the Formula 1 camp?
Even though Williams and Ferrari do make karts differently, they both must follow a strict set of guidelines or specifications. It is these guidelines that blur the difference in karts to the novice. The reasons for these specifications are somewhat similar in Java as they promote competition. In Formula 1, it's necessary in order to keep the sport interesting to the spectators. The specifications allow for variations, which allow teams to innovate and, hopefully, gain a competitive advantage. About the same can be said for the plethora of Java APIs (such as the J2EE and contained components). What makes the AWT/SWT argument different is that there is no GUI specification in Java. All we have is an implementation. Thus, there is no basis for competition that does not splinter this aspect of Java and hence, the seemingly schizophrenic behavior from Sun. Having said this, it's not so clear that you could apply the same level of abstraction to define a GUI interface as has been done for other components, such as the JMS.
Finally, a post by Jeff Blanton identified the real target, and I quote, "NetBeans is far closer to Microsoft's Visual Basic environment, which is by far one of the best development environments ever made." One thing is for sure, Microsoft is the target and programming in VB does offer some significant advantages over coding in Java. Having said this, even if Microsoft is the target, should we (the Java community) be looking to follow or copy MS? From my perspective, if we do that, then we can never be better than they are. And it is clear, if Java is going to attract the 10 million developers that they are looking for, it will need to be better and IDEs will be an important aspect of that equation.
Published March 5, 2004 Reads 28,250
Copyright © 2004 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
- Eclipse Special: Milestone Build Now Available - Eclipse 3.0 M8
- Eclipse "Welcomes Open Dialog From Sun"
- Eclipse Special: Bill Dudney Looks at the Change Method Signature Refactoring
- Eclipse Special: Remote Debugging Tomcat & JBoss Apps with Eclipse
- Eclipse Special: Bill Dudney Looks at New Stuff in M9
- "Eclipse 3.0 is a Great Leap Forward," Says JDJ's Dudney
- ILOG Launches New Business Rule Studio for Eclipse
- SYS-CON Radio interviews the Eclipse Foundation
- Eclipse "Pollinate" Project to Integrate with Apache Beehive
- Exclusive Q & A with Mike Milinkovich, Executive Director, Eclipse Foundation
- Gosling: "Netbeans 4.0 Rocks!"
More Stories By Kirk Pepperdine
Kirk Pepperdine has more than 10 years of experience in OO technologies. In edition to his work in the area of performance tuning, Kirk has focused on building middleware for distributed applications.
![]() |
Alex 03/10/04 02:43:04 AM EST | |||
Ahhh, these good old JDJ articles: so eye-catching titles, so trivial content ;-) So why am I reading such nerd''s tabloid? well, probably the conjunction of a quickly read headlines from JDJ''s monthly email, and my mind being slowed down by watching snow falling on Paris... |
||||
![]() |
Nathan 03/09/04 11:17:32 PM EST | |||
VI? Are you kidding? *Real* developers use emacs... Ah...nothing so timeless as development tool wars :) |
||||
![]() |
Dave 03/09/04 08:19:03 AM EST | |||
Why can''t we just go back to vi and make? Real tools for real programmers. |
||||
- The Economics of Cloud Computing Analyzed
- GovIT Expo Highlights Cloud Computing
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Why SOA Needs Cloud Computing - Part 1
- GITEX TECHNOLOGY WEEK 2009 Exhibitor Profiles
- Build Reliability into Cloud Computing for SMBs
- The Cloud Transition: What Does It Mean For You?
- Cloud Computing Strategy
- Economy Drives Adoption of Virtual Lab Technology
- IBM’s Mainframe Monopoly Threatened by BMC Founder’s Shop
- Yahoo! SVP Shelton Shugar to Discuss Innovation at Cloud Computing Expo
- The Economics of Cloud Computing Analyzed
- The Difference Between Web Hosting and Cloud Computing
- GovIT Expo Highlights Cloud Computing
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Citrix Aims To Cripple VMware’s Cloud Designs
- Product Evaluation: JBoss TCO Calculator
- Platform as a Service Journal Launched on Ulitzer
- Why SOA Needs Cloud Computing - Part 1
- GITEX TECHNOLOGY WEEK 2009 Exhibitor Profiles
- Build Reliability into Cloud Computing for SMBs
- EC Wrong, Wrong, Wrong – and Sloppy to Boot: Intel
- Java vs C++ "Shootout" Revisited
- Where Are RIA Technologies Headed in 2008?
- Configuring Eclipse for Remote Debugging a WebLogic Java Application
- Migrating a JBoss EJB Application to WebLogic
- XA Transactions
- The Top 250 Players in the Cloud Computing Ecosystem
- An Introduction to Abbot
- WebLogic Tutorial: "Integrating Apache Poi in WebLogic Server"
- Eclipse "Pollinate" Project to Integrate with Apache Beehive
- Failover and Recovery of Enterprise Applications - Part 1
- Cover Story: A Practical Solution to Internationalization of a J2EE Web App
- WebSphere vs WebLogic: IBM and BEA Spar Over SPEC Results



































