Digital Edition

SYS-CON.TV
Yet Another IDE War
Yet Another IDE War

  • To view our full selection of recent Eclipse stories click here

    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.

  • About 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.

    In order to post a comment you need to be registered and logged in.

    Register | Sign-in

    Reader Feedback: Page 1 of 1

    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...

    VI? Are you kidding? *Real* developers use emacs...

    Ah...nothing so timeless as development tool wars :)

    Why can''t we just go back to vi and make? Real tools for real programmers.




    ADS BY GOOGLE
    Subscribe to the World's Most Powerful Newsletters

    ADS BY GOOGLE

    ChatOps is an emerging topic that has led to the wide availability of integrations between group cha...
    As DevOps methodologies expand their reach across the enterprise, organizations face the daunting ch...
    As Marc Andreessen says software is eating the world. Everything is rapidly moving toward being soft...
    You know you need the cloud, but you’re hesitant to simply dump everything at Amazon since you know ...
    Is advanced scheduling in Kubernetes achievable?Yes, however, how do you properly accommodate every ...
    The cloud era has reached the stage where it is no longer a question of whether a company should mig...
    The need for greater agility and scalability necessitated the digital transformation in the form of ...
    In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an over...
    Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection...
    In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and ...
    While some developers care passionately about how data centers and clouds are architected, for most,...
    "Since we launched LinuxONE we learned a lot from our customers. More than anything what they respon...
    DevOps is under attack because developers don’t want to mess with infrastructure. They will happily ...
    "As we've gone out into the public cloud we've seen that over time we may have lost a few things - w...
    In his session at 21st Cloud Expo, Michael Burley, a Senior Business Development Executive in IT Ser...
    Sanjeev Sharma Joins June 5-7, 2018 @DevOpsSummit at @Cloud Expo New York Faculty. Sanjeev Sharma is...
    We are given a desktop platform with Java 8 or Java 9 installed and seek to find a way to deploy hig...
    "I focus on what we are calling CAST Highlight, which is our SaaS application portfolio analysis too...
    "Cloud4U builds software services that help people build DevOps platforms for cloud-based software a...
    The question before companies today is not whether to become intelligent, it’s a question of how and...