The following is a reprint from 2013 that originally appeared at developinthecloud.drdobbs.com
Cloud IDEs are getting real, fast. We kicked the tires on half a dozen of them and can report that the desktop IDE might be an endangered species.
Thanks to cloud development tools we can finally work from almost any machine or mobile device. No longer must we remain tethered to our desktop machines. Before you choose a provider you’ll need to ask eight important questions of your provider, review the pros and cons of a cloud IDE, and decide how your team will work together.
I look forward to a day when developing from the browser is as comprehensively rewarding as working from a traditional desktop IDE. I’m not the only one. Stack Overflow is filled with questions about Cloud IDEs. As it turns out, the cloud IDE market is booming, at least in the sense that there are plenty to choose from. Many are still in early versions and are free to use.
I tested a handful of cloud IDEs you may or may not have heard of before now. For added fun, in addition to my desktop version of Google Chrome, I tried each from my iPad2 running iOS 5.1.1 with Chrome. The browser isn’t stock and I didn’t think the services would run properly from the mobile Web, but they did better than I expected. Response times were a tad sluggish compared with a traditional desktop IDE, but I blame my WiFi connection for that.
Umbrella SDK
This is a small but promising Web-based Android IDE complete with emulator. The emulator runs alongside your editor windows and updates as you edit code. The response time was great from a desktop browser. Unlike many other supposed Web-based Android development tools, Umbrella SDK is an editor, not a pre-made app factory.
Once you’ve completed an app you can request the APK or have them submit your app to the Google Play store on your behalf. Updated terms of service require developers to submit apps on their own without third parties, so this feature may not be around in future releases. Overall, I was pleased with this service. Setup was as easy as signing up for the service — far simpler than setting up an Android development environment on the desktop.
Code Anywhere
This service, which started out life as PHP Anywhere, is a fully Web-based development environment. The service allows access to files from Github, Dropbox, or via FTP on your own server. Supporting multiple Web development languages, Code Anywhere really does let you code anywhere. You can access the editor from the browser or from the mobile device of your choice (including Blackberry Playbook). The only issue I had with the service was the lack of file creation options. New files cannot be created — you must open existing files. You can code anywhere as long as you remember to upload your files to a remote server before you leave home base.
Cloud IDE
This product, from eXo Platform, offers not just an editor, but a complete development solution for remote teams. It supports multiple languages and five SaaS suppliers. Cloud IDE is currently focused on Java development and is steadily adding support for the entire Google stack with the exception of Android. The service is currently free and will eventually have a commercial offering complete with secure file encryption and backup. Access from a mobile device isn’t possible yet, but the service runs smoothly from a desktop browser.
Cloud IDE differs from the other services I tested in that it allows for simultaneous collaborative development. Tyler Jewell, CEO of Exo, explained in an email interview:
Within our cloud, developers can collaborate on a project to do real time pair programming, run parallel builds (we’ll scale up resources to compile multiple files simultaneously), do server-side debugging (breakpoints and introspection), along with pushing deployments to the runtime target of choice.
Eclipse OrionHub
This service, still in beta, offers a hosted development stack that includes an editor and live test server. It supports front-end development with Javascript, HTML, and CSS. As Ken Walker wrote in a blog post: “Orion is not just a sexy editor and some navigation, it has a distributed plug-in architecture, a micro-services framework and reusable components.” I was impressed with the service’s handling of Google Chrome for iPad. Most menu options and navigation responded well. I even created a test HTML5 site.
Neptun IDE
Neptun is currently in a closed beta. It will support the CAKE PHP framework among other languages and frameworks. I didn’t get into the beta prior to this writing but I still think it’s worth mentioning. The site describes the upcoming IDE as comparable with the desktop environment. Choosing a code library and repository are all that’s required before working on a project.
Wifino
This is a cloud-based Arduino IDE. If you’re still paying attention, you might wonder if I tested this one in Google Chrome for iPad. I did, and it performed better than most other IDEs in that environment. Wifino lets you develop Arduino applications, compile code, and fix errors in the cloud.
Arduino development has traditionally been “tied to a minimal, desktop-based development environment with limited tools and a USB interface for code uploads,” acording to the Wifino page linked above. Wifino frees Arduino develoment from bondage to the desktop. This IDE is in beta and has a growing userbase. I noticed no significant issues with this early beta. It looks like a promising tool for Arduino developers.
The desktop development environment may indeed become a relic of the past. These cloud-based development tools work as well as desktop development tools, and almost as well from a mobile browser.
What cloud-based IDEs are you working with and what has your experience been?