Jorge Villalobos
Ideas, technology and the occasional rant

Friday, July 29, 2005

My crazy idea to create a Java IDE on XUL

Ain't crazy ideas fun? No? Well, you're not me so back off.
So, last night, when I was trying to sleep (I have this slight insomnia situation going on) I had one of my somewhat frequent crazy ideas. I usually end up letting them go since I don't have the will or time to follow them, but now I think it might be good to just write them down and at least give them to the world so someone actually does acts out on them, if they're any good that is. And some are.
I anticipated Google Groups, since a couple of friends and I use this "forum" started out from a Gmail message and persisted by a constant use of "Reply To All". It was the obvious next step: allow users to create discussion groups so they only have to click on Reply and easily manage users included in them. This also allows the creation of public groups and a whole bunch of other useful functionalities. Too bad for the 1Mb attachment restriction.
The idea. Right. I haven't forgotten about it. Yet.
I had this idea of creating a Java IDE on XUL, the application architecture in which Firefox, Thunderbird and several other Mozilla applications are based. Actually, XUL is just the XML language with which one creates the interface of the application. The combination of XUL, JavaScript, CSS, XPCOM and a couple of other technologies is what makes the creation of these applications possible.
Anyway, since there's so many Java IDEs out there, it won't hurt to have another one. The most popular currently would be the Eclipse IDE. What makes it so great is the fact that I can be very easily extended with various plugins that allow radical changes in its interface and behavior. That sound very familiar to me. The same is being done with Firefox extensions, so there's an interesting parallelism here. The biggest con of Eclipse is the fact that is sucks all your memory and processor due to the fact that it's written in Java itself.
So, what about other IDEs that aren't created in Java? They are not nearly as complete or extensible as Eclipse. The XUL architecture would allow to create an efficient application, written with C++, JavaScript and XML, featuring enormous extensibility as well. There's a great deal of gain here, I think.
What else is great? Eclipse is free and open. This application could be some of port of Eclipse to the XUL architecture, following the appropriate channels and respecting copyright and licenses, of course. I can't even begin to describe how great Eclipse has been to everybody.
Cons? There are some obvious ones. Since Eclipse is a Java IDE, and it's written in Java, the Eclipse platform can be used to create Eclipse plugins. This wouldn't be the case in this application I thought of. Plugins could be easily written in XUL and JavaScript, but if there's important backend functionality in the plugin, it's probably going to be written in C++. One could think on a more mixed approach, allowing Java and C++ plugins, but things would get really confusing really fast.
Another important con is that for the moment the application would completely depend on another XUL application, such as Firefox. Isn't Mozilla working on and independent XUL environment? Yes, XULRunner is under development, but it might take some time before it's out. Creating this application would take plenty of time anyway.
So this is my crazy idea: a Java IDE created in XUL and based on the Eclipse architecture. I might give it a try if I have the time. Probably not, though. This is why I give my idea to the world. You can take it if you want it. I would appreciate some credit, though.

Get Firefox!


Post a Comment

<< Home