Welcome!

Java IoT Authors: Elizabeth White, Liz McMillan, Zakia Bouachraoui, Yeshim Deniz, Pat Romanski

Related Topics: Java IoT

Java IoT: Article

One IDE to Rule Them All

One IDE to Rule Them All

At JavaOne, Jonathan Schwartz, executive vice president of Sun's Software Group, outlined his mission to increase the number of Java developers from 3 million to 10 million. The hope is to attract these extra seven million from the legions of Visual Basic (VB) developers. Visual Basic's strength comes from a tool experience that is inseparable from the language and, in order to capture their mind share, Java needs the killer IDE.

Early Java programming books were often bundled with a copy of Visual Café, allowing readers to concentrate on learning the language syntax instead of esoteric JDK command syntax. While some programmers pride themselves on writing macros to customize their favorite text editors, integrated development environments (IDEs) offer the easy life of code assist, incremental compilation, and integrated debuggers.

Since Visual Café, a number of great IDEs have been created. JBuilder, IntelliJ, and Eclipse lead the 2003 JDJ Readers' Choice Awards with TogetherJ, Oracle9i Developer, and Sun ONE all equally worthy of pole positions. The irony is that having so many good development tools is a weakness, not a strength, when it comes to tackling Microsoft.

The current Java IDE landscape makes extensibility APIs either constrained to the lowest common denominator or proprietary to each vendor. JavaBeans and JavaServer Faces (JSF) are examples of the former because, while components can be good citizens for how a tool will use them, they cannot exercise sufficient control over the environment hosting them. To truly leverage a tool requires knowledge of its object model for representing artifacts, the life-cycle API for how data is persisted, and the control of event notification between viewers. If the IDE surfaces these internals to the component, a much richer edit time experience can be created. The case in point is Microsoft Design-Time Control (DTC), which allows customization of Web page components through in-place ActiveX controls that run within the source editor. Java's answer to DTC is JSF. Without being able to surface a satisfactory mechanism to plug into the IDE's viewers, the source-editing experience relies on using the JSF component as you would any other JavaServer Page (JSP) tag library or JavaBean. This is not going to lure the VB crowd who want in-place preferences dialogs for their component embedded directly in the source page.

The most successful challenge to Microsoft tools in the Java space so far is to adopt a proprietary approach as used by JBuilder, IntelliJ, or Eclipse. These surface the APIs that tool vendors and component builders need to leverage the edit time experience. However, their bespoke interfaces cause fragmentation in the tools space, and while JSR 198 is a well-intentioned attempt to resolve this problem, it's too little too late and is fated to become the lowest common denominator.

Any successful extension API needs to be more than skin deep, and what motivation do the tools vendors have to come together and agree on a common object model or life-cycle API? It is IBM's doomed AD cycle all over again. If a compromise API is reached, the IDE vendors will do half-hearted shoe horning of this into their existing tool, while still retaining their internal extension APIs for serious platform development. The issue is further complicated by the inability of Swing and SWT to interoperate, and if the GUI toolkit can't be agreed upon, there is surely little hope that the internals can converge.

The only solution I see is for one of the existing IDEs to become the de facto tool for Java. The benefit of having only one tool is that people can program to its extension API, have access to the internals of its object model and construction and, in an ideal scenario, the tool would be offered with JDK downloads to round off the whole Java "out of the box" experience. This way when the seven million newcomers we are hoping to attract first taste Java, they feel at home with a rich set of design-time tools fully integrated with the language.

More Stories By Henry Roswell

Henry Roswell is a veteran consultant who would like to think he's seen it all, but is constantly amazed by new events every day.

Comments (7) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Greg Garcia 11/21/03 05:59:42 PM EST

Isn''t this what Eclipse is trying to do? If it''s not one thing, it''s another. I''v been writing software for over 20 years and I remember when life was simple. I could just design and write software. Now it seems like I''m forced to keep up with whichever way the wind blows because everybody (clients, employers, etc) thinks it''s THE way. In the movie "The Life of Brian" it was the gourd or the sandle, now it''s XML this or IDE that, Agile, XP, RUP, blah, blah, blah. As a consultant, I can''t simply ignore this stuff. I have to uderstand it, at least. Some of it is good stuff, and some is XBS. I''m all for progress, but let''s just keep things simple. Everybody want''s to invent the latest and greatest process or tool or whatever, but what about just getting down to business? One IDE? No, and I don''t want Eclipse to be the Mother of all IDE''s and have every vendor plug their product into it.

Marcus S. Zarra 10/15/03 03:56:45 PM EDT

Every once and a while someone will pop up with something like this. But it is never the right answer. Diversity is what pushes invention. Without diversity you have stagnation.

MS is the great creator of Stagnation. Java does not need some 800lb. gorilla on its back dictating exactly how everyone is to develop code. Why must everyone use one IDE? Java was built to be extremely diverse. Lets not hamper that with forcing people to use one IDE.

Personally I use project builder. I have tried every IDE I can get my hands on. Some I loved some I hated. But I am betting that what I think makes a perfect IDE would be considered junk to someone else. Fortunately in Java space we don't have to care about someone else's opinion since there are so many IDEs to choose from.

It sounds to me like this guy needs to go back to Visual Basic.

Guio 10/07/03 07:21:03 PM EDT

NetBeans!!!

How can you forget the best and maybe first java opensource IDE.

Got a lot more feature that eclipse, plus is pure java.

The only missing thing is refactoring, just get that and you kill eclipse.

Man, IBM bought your soul, or what?

Tyrone Hed 10/07/03 01:31:42 PM EDT

I have used so many IDEs along my career. Started on notepad, found textpad, the the company bought VAJava, which I love to this day. Then, used VisualCafe, which was puke in comparison. Then next company JBuilder which was alright. Then I tried Eclipse and now I use a free copy of JDeveloper. The issue is this: how much damned configuration do you have to do to get it to work. That's the nuisance. I don't care what IDE it is as long as it makes debugging easy (meaning stepping the code and seeing what is invariables) and that it comes with a J2EE load already configured. It should come with a Tomcat or JBoss server included. We want something so good it stops us from moving from IDE to IDE looking for something that doesn't aggravate us.

Tyrone Hed 10/07/03 01:31:35 PM EDT

I have used so many IDEs along my career. Started on notepad, found textpad, the the company bought VAJava, which I love to this day. Then, used VisualCafe, which was puke in comparison. Then next company JBuilder which was alright. Then I tried Eclipse and now I use a free copy of JDeveloper. The issue is this: how much damned configuration do you have to do to get it to work. That's the nuisance. I don't care what IDE it is as long as it makes debugging easy (meaning stepping the code and seeing what is invariables) and that it comes with a J2EE load already configured. It should come with a Tomcat or JBoss server included. We want something so good it stops us from moving from IDE to IDE looking for something that doesn't aggravate us.

Arron Bates 10/07/03 10:03:47 AM EDT

One article to rule them all. No more cracked records on the topic of "we need this to combat Microsoft, and we all have to do it now, or we're all going to die!".

It's really getting thin.

It'd be better use if everyone friggin clammed up about "sun should, or we should...", and just got back to coding!

vinay soni 10/07/03 08:49:52 AM EDT

If every one started looking alike what would happen. We would have no variety. IDEs are exactly the same.

IoT & Smart Cities Stories
Early Bird Registration Discount Expires on August 31, 2018 Conference Registration Link ▸ HERE. Pick from all 200 sessions in all 10 tracks, plus 22 Keynotes & General Sessions! Lunch is served two days. EXPIRES AUGUST 31, 2018. Ticket prices: ($1,295-Aug 31) ($1,495-Oct 31) ($1,995-Nov 12) ($2,500-Walk-in)
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
Nicolas Fierro is CEO of MIMIR Blockchain Solutions. He is a programmer, technologist, and operations dev who has worked with Ethereum and blockchain since 2014. His knowledge in blockchain dates to when he performed dev ops services to the Ethereum Foundation as one the privileged few developers to work with the original core team in Switzerland.
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to ...
The challenges of aggregating data from consumer-oriented devices, such as wearable technologies and smart thermostats, are fairly well-understood. However, there are a new set of challenges for IoT devices that generate megabytes or gigabytes of data per second. Certainly, the infrastructure will have to change, as those volumes of data will likely overwhelm the available bandwidth for aggregating the data into a central repository. Ochandarena discusses a whole new way to think about your next...
CloudEXPO | DevOpsSUMMIT | DXWorldEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more busine...
All in Mobile is a place where we continually maximize their impact by fostering understanding, empathy, insights, creativity and joy. They believe that a truly useful and desirable mobile app doesn't need the brightest idea or the most advanced technology. A great product begins with understanding people. It's easy to think that customers will love your app, but can you justify it? They make sure your final app is something that users truly want and need. The only way to do this is by ...
DXWorldEXPO LLC announced today that Big Data Federation to Exhibit at the 22nd International CloudEXPO, colocated with DevOpsSUMMIT and DXWorldEXPO, November 12-13, 2018 in New York City. Big Data Federation, Inc. develops and applies artificial intelligence to predict financial and economic events that matter. The company uncovers patterns and precise drivers of performance and outcomes with the aid of machine-learning algorithms, big data, and fundamental analysis. Their products are deployed...