Did you know? DZone has great portals for Python, Cloud, NoSQL, and HTML5!

I've been a zone leader with DZone since 2008. I work as a technical lead on a next generation tool suite using based on Eclipse. This means that I get to use Java everyday, and a selection of the best Eclipse technologies, from EMF to GEF to Xtext. Along with all of this, I do iOS development in my spare time. James is a DZone Zone Leader and has posted 527 posts at DZone. You can read more from them at their website. View Full User Profile

Eclipse Orion: A Web Experience for Software Development

03.15.2011
Email
Views: 8949
  • submit to reddit

Since it was unveiled earlier this year, Orion has received a lot of focus. Currently under the E4 incubator, Orion will provide the possibility to develop through your web browser. Providing a browser based IDE isn't a new thing within the Eclipse eco-system: early versions of e4 had prototypes of such functionality. However, this is a new implementation, contributed by IBM. The project mission statement can be condensed into:

"we will move software development to the web as a web experience, not by cloning the desktop IDE experience."

I caught up with Boris Bokowski, one the of the driving forces behind the project, to find out more.

 


DZone: Hi Boris, the buzz around Eclipse Orion has been huge. Can you explain what Orion actually is?

Boris Bokowski: Orion is two things in one: it is a concrete code contribution to Eclipse, but it is also a vision. This long-term vision is to make it natural for software development activities to happen on the web, using a web browser. Orion makes it possible to edit code, navigate folders and files, do full-text searches, run unit tests etc. from within web pages that live in separate browser tabs. These web pages can be linked with each other using hyperlinks, but also to other places on the web that can be reached through hyperlinks: bugs in bug trackers, builds happening on a server that can be monitored through a web page, etc. I like to think of the vision, and the API and specifications that enable this vision, as the important thing. The code contribution is a humble start, an initial step towards realizing the vision.

DZone: Could you give a little history of the project? When did it start?

Boris Bokowski: It started a few months ago when we started to work on the editor component and then later on the features around it. I am not sure if you remember this, but we've demoed a web-based Eclipse back at EclipseCon 2008. None of that demo code has been reused - we've started fresh, using only JavaScript, HTML, and CSS. Our thinking has evolved quite a bit - we are no longer trying to translate the existing desktop IDE into a web browser.

DZone:  How does Orion relate to e4? Will it be part of that release?

Boris Bokowski:  The initial code contribution went into e4, our incubator project. Within the next couple of months, we would like to move the code into its own separate project at Eclipse, together with other contributors. It would be too early to talk about releases, and there are no plans to make Orion part of any existing desktop Eclipse release at this point.

DZone: There have been a few attempts to create an IDE on the web in the past. What makes Orion different?

Boris Bokowski:  The main difference is that Orion does not try to recreate a classic IDE in a web page. By using the browsers' facilities to manage multiple web pages and tabs, the end result is much more open for any kind of content that can be accessed through a web browser. I frequently have a number of Orion editors open in separate tabs, along with other tabs with snippets and documentation on HTML and JavaScript, one tab for running unit test, etc. By design, there is no strict differentiation between what is part of the IDE and what is just another web page that I happened to have a link to.

DZone: How difficult was writing the entire client in Javascript? Are you using any particular libraries to make it easier?

Boris Bokowski: Writing the client in JavaScript wasn't particularly difficult, apart from the usual growing pains that come from embracing a completely new platform. At this point, we are still learning quite a bit and expect lots of things to change. Because of the code separation between the different pages, we could be using different libraries on each page, but in practice, we are currently using Dojo when we need APIs that work across the different browsers.

DZone: For those who haven't received an invite yet, when can they expect to be able to have a go?

Boris Bokowski:  So far we've been very conservative with how many people we are inviting. Since our focus has been more on the client side than the server side, we are not sure how well our simple demo server will scale, but first load testing experiments were encouraging. If anyone feels left out, you can always download a pre-built version and try it on your own machine.

DZone: With the source code available, would it be easy for someone to just host their own instance of Orion?

Boris Bokowski: You should be able to download and start a recent build on Linux, Mac, or Windows within five minutes, assuming you have a Java VM already installed. This will give you an instance of Orion running on localhost. Our download page is at http://download.eclipse.org/e4/orion/. If you want to host an instance for use by others, you should have a look at a wiki page we created for this audience: http://wiki.eclipse.org/Orion/Server_admin_guide

DZone: What are the future plans for Orion?

Boris Bokowski: The short term plan is to start a formal project for Orion at eclipse.org, together with other contributors. We will be holding a planning meeting on March 17th and 18th, in Palo Alto, California, and the list of people who signed up is starting to look interesting. The long term plan will be made at the planning meeting. Then there is our development focus over the next few months - we are working on features that make the self-hosting experience better, as well as features that show how other existing web-based tools and services can be integrated with or accessed from Orion.

Tags:
Published at DZone with permission of its author, James Sugrue.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Jacek Furmankiewicz replied on Tue, 2011/03/15 - 8:38am

The buzz around Orion has been huge?
From whom? Where? Show me the proof. The only place I hear Orion mentioned is Planet Eclipse blog posts (presumably from the guys who coded it).
A web-based IDE seems like a solution in search of a problem. Instead of wasting their resources on stupid projects like this, how about giving us JDK 7 support in Eclipse on the day JDK 7 gets released?
I think that would generate a lot more buzz.

Rob Williams replied on Tue, 2011/03/15 - 1:49pm in response to: Jacek

Amen, Bro. Or making web development really work inside the 'ecosystem' rather than with a ton of little sidecar, CLI pump shots...

Ian Skerrett replied on Tue, 2011/03/15 - 5:35pm in response to: Jacek

FWIW, work is proceeding on Java 7 support in Eclipse. http://wiki.eclipse.org/JDT_Core/Java7 I think the relative merits of Orion will depend on individuals points of view. :-) Ian

Jacek Furmankiewicz replied on Wed, 2011/03/16 - 9:26am in response to: ian skerrett

Let's call it a matter of priorities. JDK 7 support is way behind NetBeans at this point. Javascript development in Eclipse is a mess (it doesn't even parse jQuery source properly and throws exceptions all the time on any code completion)...it feels like the Eclipse team is losing its focus (being the best Java IDE) and instead wasting a lot of valuable resources on misc projects that have very little payback (Orion, Virgo, RAP, etc.).

Caspar MacRae replied on Thu, 2011/03/24 - 8:35am

@Jacek - completely off topic rant?

So you'll be deploying Java 7 to production on day 1 of it's release?  Or rather waiting for the dust to settle with some incremental releases first?

Looking at the link provided by @Ian it would seem the (massively important, can't live without) diamond operator isn't implemented yet - OH NOES I'd set aside a whole day to refactor all existing code to use this shorthand generic, because it has real business value.

Wasn't Virgo donated by SpringSource as a mature product (Spring DM)?  And don't they continue to develop it? (So this has actually increased the number of developers with some quality folk like Glyn Normington from SpringSource/VMWare) 

Also a quick google news search shows there is some "buzz" about Orion (at 70% of the number of posts compared to "Eclipse Java 7")

Frankly if the Eclipse foundation chooses to position itself more like Apache, and offer production projects like Equinox rather than just developer tools, then that's their choice - from which I've benefitted greatly and paid nothing.

I'd completely agree on the piss poor support for Javascript, but maybe Orion will help with this situation no?

 

(Apologies but trolling trolls is a hobby of mine, read http://www.paulgraham.com/disagree.html and replyto:/dev/null )

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.