As part of a series of articles on cloud based IDEs, we are going to look at Cloud9.
The Cloud9 team aims to allow developers to create, run, debug and deploy applications using just a web browser. Indeed, Cloud9’s tag line is “Your code anywhere, anytime”. The Cloud IDE is being used by over 30,000 developers, and is seen as one of the leading companies in the emerging Development as a Service (DaaS) sector. The company has recently raised $5.5 million in venture funding, and sees itself as challenging the existing desktop providers such as Microsoft Visual Studio and the open source Eclipse IDE and its derivatives.
To get started on Cloud9, you need to create an account. The basic free account allows you create an unlimited number of projects, but they are all publicly viewable. In fact, when you use the free account, all projects created are open source projects, and you are expected to meet open source licensing requirements. To create a private project, you need to upgrade to the premium account.
Once you create your free account, you can use nearly all of the features offered by Cloud9. And there are many:
- Node.js support, with an option to deploy to the Joyent No.de service, a hosted version of the Node.js platform.
- Integration with existing GitHub and BitBucket projects.
- Team collaboration, including:
- Simultaneous read/write access to multiple team members on the same project.
- Integrated chat client to communicate with other team members.
- Cloud9 developed ACE, an open source online code editor that is supported by Mozilla and has significant community support. The community support has lead to additional languages being supported by the editor.
- Line error reporting – the editor will report on syntax errors as you type in the browser.
- Syntax highlighting for the languages supported.
- An offline mode to allow you to continue making changes to your code even without an internet connection. Any changes made are merged back to the server repository once an internet connection is re-established.
Features that are planned in the Cloud9 roadmap:
- Database support – probably MySQL and Couch DB.
- FTP access.
- Additional deployment options.
- Cloud9 is currently developing a version of the IDE for Python that will integrate with Google’s App Engine.
What is it like to use?
Support for the other dynamic web languages (PHP, Python and Ruby) isn’t quite as good, but the Cloud9 team plan on adding support for debugging soon. The team collaboration features are particularly impressive. Even on the basic account, you are able to pair program on the same project with other developers in separate locations.
Additionally, the offline capability of Cloud9 sets it apart from the other online IDE we have considered so far.
The major disadvantages of Cloud9 are the lack of hosted database integration and deployment options. The FTP and integration with hosting companies other than Jolent for Node.js mean that the deployment functionality is incomplete. Also, there is no option to download your code files, unless you are using the source code integration with BitBucket or Github.
Overall, the Cloud9 comes across as being the cloud IDE closest to being production ready. However, it’s focus on web development means it is unlikely to get much attention in an enterprise setting, with no support for .NET or Java.