If development is being democratized, then there needs to be a change in the way we access and use development tools.
The last decade has seen the web become a richer, more dynamic place. HTML 5 tools and techniques have given us complex user interfaces and large scale business applications. Tools like Google Docs and Microsoft’s Office Web Apps have shown we can use the web for productivity. So why not use the same technologies to deliver a development environment?
JavaScript and other scripting languages don’t need the complex multi-environment, multi-platform integrated development environments developers are most familiar with. There’s no need to use massive IDEs like Xcode or Visual Studio, or even Eclipse, to build and test a simple node.js application, or to mash-up a set of cloud APIs and load code onto a platform-as-a-service cloud.
The Bridge Between DIY Electronics and The Internet of Things
FINAL WEEK to register for CITE! Don’t miss the Sunday interactive workshops.
Web-based development tools have been around a long time – as long as there have been forms with text boxes. Some, like Yahoo! Pipes, have been visual programming environments that graphically show connections between web APIs, with tools for adding scripts to transform input and output, while others, like Salesforce’s development tooling, have allowed you to add scripts to existing web services, letting you customize them to fit in with your business processes.
Now, the two trends have met. There’s a new generation of web-based and hosted development tools that give you the rich design, editing, and testing experience of a desktop IDE, while running in a modern browser – for free, or for a low-cost subscription. If you want to build a quick web app to solve a pressing business need, all you need is a browser – and possibly a credit card.
One of the first Cloud IDEs was Mozilla’s Skywriter project (originally named after the Star Wars cloud city Bespin). Now abandoned and transitioned into the open source ACE code editor, Skywriter aimed to deliver a complete cloud-hosted JavaScript development environment. While it was hard for Mozilla to justify hosting a cloud development service, ACE has become the standard code editor at the heart of many cloud IDEs. There’s support for over 40 different languages, and you can add others by using TextMate and Sublime language highlighting files. It’s become a popular tool, and is used in many CMS systems and online training tools as well as in cloud-hosted development platforms.
Credit: Screenshot
Perhaps the best known ACE implementation is Cloud9’s IDE. With tools for working with common web technologies, like Python, PHP, Ruby and JavaScript – as well as CSS and XML – it’s a quick way to get coding, and to share your code with colleagues. There’s also tooling for working with node.js and with the popular Express application framework, ideal for building cloud-hosted applications that work with multiple services and data sources. You’re not limited to building web apps, either, as you can work with languages like C# and even PowerShell.
There’s a base free service, designed for public application development, and a $12/month service that lets you work privately. Apps can be deployed to cloud platforms like Azure and Heroku, and you can link projects to source code management tools like git.