Prediction #7: Web-based code editors become viable, cloud-based IDE platforms remain a pipe dream

by Mik Kersten, February 1st, 2011

A couple of years ago, a web-based code editor called Bespin was the rage at EclipseCon, and has been reborn in the form of the Cloud9 IDE for JavaScript. Eclipse re-embraced the push towards web-based IDE technologies with the introduction of a new code editor named Orion. While activity is again heating up on this front, do not expect the enterprise developer’s IDE to be running in the browser this year. What we will see is web-based advances in specific IDE use cases, ranging from code editors for DevOps to GUI builders for mobile, with most developers staying within the comfort and native UI of their desktop IDE.

Apart from the OS, the IDE may now be the most complex piece of software running on your desktop computer. Eclipse pushes the limits of the UI element handling of the desktop OS as well as the classloader model of common JVMs. What makes an IDE platform even harder to port into the browser is the need for extensibility, ranging from interaction with the filesystem to shared data models of the large variety of code and ALM artefacts that constitute an application.

Just as mobile applications are constantly pushing the limits of the hardware behind our 3.5” handheld screens, the IDE tool suite continues to push the limits of the hardware driving dual 24” displays. Third party plug-in developers need to be very aware of the performance of their extensions to Eclipse so that they don’t bring an Intel Core i7 CPU with 8GB of RAM to a crawl. The current generation of browser-based JavaScript runtimes is not up to the task of running the IDE platform as we know it. But we are starting to see the first crop of high-performance web-based code editors. Between the drive towards cloud hosting of applications and the push to lower the barrier to entry for mobile development, there will be plenty of incentive for vendors to provide SaaS offerings that incorporate key parts of the application development experience.

The 15M or so professional developers (Evans Data, 2009) will spend their day in Eclipse and Visual Studio, but these IDEs will begin to feel more like a connected Rich Internet Application (RIA) than a desktop-bound dinosaur. The data accessed by the open source developer, including source code, tasks and builds, is already cloud hosted. Eclipse extensions like Tasktop Enterprise mash up the web browser experience with the rich IDE experience. The professional IDE will start feeling more like a connected and offline capable Mozilla Thunderbird or Microsoft Outlook, with collaboration and planning facilities taking a front seat alongside social coding tools. Just as iOS has found the sweet spot between native experience and web service-based data sources, so will the IDE.

Outside of enterprise application development, domains where a simplified tool stack is applicable will start seeing web-based IDE features. Xcode is one or two order of magnitude less complex than a full-blown enterprise Java IDE. Palm’s Ares project was the pioneering example of how effective combining Bespin functionality with a JavaScript GUI builder for webOS could be for providing a simple user experience to hobbyist mobile developers. Even our Smalltalk forefathers would be impressed with an environment that supports authoring JavaScript widgets in a JavaScript-based GUI builder. Given the lack of a clear winner for JavaScript development environment on the Eclipse front, JavaScript will continue to be a natural target driving progress on moving IDE functionality into the browser. But the amount of work here should not be underestimated, as a lot of what already exists in the desktop-based IDE will need to be re-created to get to the sort of fidelity and breadth of tool support that’s now taken for granted.


Cloud ALM hosting with the connected IDE and Browser-based clients

On the cloud hosting front, key parts of ALM data such as source code, builds and tasks, are already starting to be hosted in a unified manner, as exemplified by the upcoming Code2Cloud offering. Some stakeholders in the development process, such as DevOps and QA engineers, will start to benefit from Eclipse Orion-style code editors accessing and fixing entries in Spring config files without launching the IDE. This will lead to easier management of production since the need for console access for these sorts of tweaks will be removed.

Looking further out, the increasingly connected IDE will have all of its configuration data hosted, making the experience of the first launch of Eclipse similar to that of the first launch Skype, where entering credentials causes the rich client to instantly provision the user’s desktop. The division of labour between web and desktop based access of software artefacts will improve, with some content that was previously browser-bound, such as Scrum task boards, being supported within the IDE. The mobile hobbyist, casual web developer, and specific stakeholders such as the DevOps engineer, will see nearer term benefits from the growing convergence of the browser and the IDE.

Watch Tasktop webinars

About Mik Kersten

Dr. Mik Kersten is the CEO of Tasktop Technologies, creator of the Eclipse Mylyn open source project and inventor of the task-focused interface. At Tasktop, Mik sets the strategic direction of the company as well as drives many of Tasktop's key partnerships and key customers accounts. He created Mylyn and the task-focused interface during his PhD in Computer Science at the University of British Columbia. Mik has been an Eclipse committer since 2002, is a 3-time elected member of the Eclipse Board of Directors and serves on the Eclipse Architecture Council. Mik's thought leadership on task-focused collaboration and improving the software economy makes him a popular speaker at software conferences, and he was voted a JavaOne Rock Star speaker in 2008 and 2009.

Tags: , , , , , , ,

9 Responses to “Prediction #7: Web-based code editors become viable, cloud-based IDE platforms remain a pipe dream”

  1. Prediction #7: Web-based code editors become viable, cloud-based IDE platforms remain a pipe dream Says:

    [...] re-embraced the push towards web-based IDE technologies with the introduction of a new code… [full post] Mik Kersten Tasktop Blog eclipsemik on eclipsemylyntasktop 0 0 0 [...]

  2. Mik Kersten: Prediction #7: Web-based code editors become viable, cloud-based IDE platforms remain a pipe dream Says:

    [...] Go here to read the rest: Mik Kersten: Prediction #7: Web-based code editors become viable, cloud-based IDE platforms remain a… [...]

  3. Bob Bickel Says:

    Have you taken a look at http://cloud-ide.com/? eXo seems to be doing interesting things here and will hook to all the PaaS vendors as they come out.

  4. Mik Kersten Says:

    Yes Bob, eXo’s strategy of hooking into the Java app hosting services makes sense, especially as the hosting offerings start to grow their PaaS features. The gap I see is that for enterprise Java, in the foreseeable future the majority of developers will want to stay in their desktop-based IDE. Not because the web-based IDE efforts aren’t increasingly impressive or credible. But unlike simpler stacks like the Ruby-based ones, a good chunk of the enterprise Java’s success comes from the heterogeneity of its stack. With Spring, Hibernate, JSF, GWT and a dozen other frameworks being commonly used for building enterprise Java apps, Eclipse’s key success has been to establish itself as the de facto tool platform for developer tooling for each of those frameworks. Once such a platform is established, the slope becomes slippery for other vendors or tools that need to play an ongoing game of catch-up in trying to implement the third part framework support themselves (eg, NetBeans, IntelliJ). Given the critical mass of its ecosystem, Eclipse will remain as the standard for enterprise Java for the foreseeable future. That said, as described in the post, this is less true for other targets such as JavaScript. Also, as more of the continuous integration and deployment part of the Java development loop moves into the cloud, I do see some more limited and specific use cases arising where web-based code editing and IDE functionality become relevant.

  5. Bob Bickel Says:

    Totally agree – 99.9% of developers will want a full fledged IDE like Eclipse on their desktops for a long time. The CloudIDE comes in for two use cases IMHO. One for quick access when a developer is not at their desktop/laptop. Two for lightweight developers that may be doing some “simpler” development like wiring Gadgets to REST services – this was the original use case for eXo’s CloudIDE in fact…

  6. Will Orion get developers to code in the cloud? | Educational Blogs From 2Tav Says:

    [...] Tasktop Blog » Blog Archive » Prediction #7: Web-based code … [...]

  7. Ivan Says:

    Hello,
    Why don’t you try http://www.codeanywhere.net ? It is a service we launched and even gives you a Sandbox to play with and is available for mobile devices.

    Check it out and let us know what you think!
    Cheers!

  8. Ivan Says:

    If your are looking for a cloud based IDE please do check out our service http://www.codeanywhere.net

    And let us know what you think!

    Cheers

  9. auto Says:

    Very good article!

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.