Welcome!

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

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
Founded in 2000, Chetu Inc. is a global provider of customized software development solutions and IT staff augmentation services for software technology providers. By providing clients with unparalleled niche technology expertise and industry experience, Chetu has become the premiere long-term, back-end software development partner for start-ups, SMBs, and Fortune 500 companies. Chetu is headquartered in Plantation, Florida, with thirteen offices throughout the U.S. and abroad.
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
DXWorldEXPO LLC announced today that All in Mobile, a mobile app development company from Poland, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. All In Mobile is a mobile app development company from Poland. Since 2014, they maintain passion for developing mobile applications for enterprises and startups worldwide.
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.
Cloud-enabled transformation has evolved from cost saving measure to business innovation strategy -- one that combines the cloud with cognitive capabilities to drive market disruption. Learn how you can achieve the insight and agility you need to gain a competitive advantage. Industry-acclaimed CTO and cloud expert, Shankar Kalyana presents. Only the most exceptional IBMers are appointed with the rare distinction of IBM Fellow, the highest technical honor in the company. Shankar has also receive...
DXWorldEXPO LLC announced today that ICOHOLDER named "Media Sponsor" of Miami Blockchain Event by FinTechEXPO. ICOHOLDER gives detailed information and help the community to invest in the trusty projects. Miami Blockchain Event by FinTechEXPO has opened its Call for Papers. The two-day event will present 20 top Blockchain experts. All speaking inquiries which covers the following information can be submitted by email to [email protected] Miami Blockchain Event by FinTechEXPOalso offers sp...
Headquartered in Plainsboro, NJ, Synametrics Technologies has provided IT professionals and computer systems developers since 1997. Based on the success of their initial product offerings (WinSQL and DeltaCopy), the company continues to create and hone innovative products that help its customers get more from their computer applications, databases and infrastructure. To date, over one million users around the world have chosen Synametrics solutions to help power their accelerated business or per...
DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
@DevOpsSummit at Cloud Expo, taking place November 12-13 in New York City, NY, is co-located with 22nd international CloudEXPO | first international DXWorldEXPO and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time t...
When talking IoT we often focus on the devices, the sensors, the hardware itself. The new smart appliances, the new smart or self-driving cars (which are amalgamations of many ‘things'). When we are looking at the world of IoT, we should take a step back, look at the big picture. What value are these devices providing. IoT is not about the devices, its about the data consumed and generated. The devices are tools, mechanisms, conduits. This paper discusses the considerations when dealing with the...