Have you ever heard about online coding tools, browser based IDEs, social coding, collaborative development and pair programming? If not you need to sit tight and read on, this may very well be the future, and just as office tools moved to the cloud with Google Docs and Office 360, the traditional fat IDE desktop client may soon be history. Having said that, I have noticed there tend to be more solutions for front end web developers than for back end developers.
For decades, it has been the general view that hardcore programmers are isolated nerds, that like to sit alone in a dark room with an endless supply of chips and cola with fingers typing at light speed. This however, is an old and wrong perception. Software systems are the foundation that ties most businesses, their processes, employees, partners and customers together today, and in order to deliver value the systems must be perfectly aligned with the business requirements. Implementing highly complex and integrated applications require that programmers work seamlessly together and communicate efficiently with many other functions in IT. While IT architects may be used as brokers in many organizations, today programmers must learn to break the ice, and understand and talk to business people. Further many development teams today have members that are geographically separated making it impossible to look over the shoulder or solve a few important disagreements on a whiteboard.
As a response to the difficult and challenging work environment many developers face today, we have seen many new and innovative online tools on the scene lately. This includes online services for debugging, crowd-bug fixing, code sharing, and even fully featured IDEs. Working in the public cloud introduces concerns about security even if the services used provide featured to keep source code private. The big question is whether the majority of organizations currently are ready to accept the risks to collect the benefits. If core business applications are already in the cloud, giving programmers what they need, may be just around the corner!
CSSDeck Labs is a place where you can quickly find inspiration, learn advanced techniques form others and create your own experiments (or testcases) that involves HTML, CSS, JS code. The quality of the featured projects is high and it is certainly worth a visit! The code can be edited with the preview being updated in real time – really powerful. Sharing your code is simple using a share url! It is also possible to leave comments and discuss details of a project.
Koding (is in public beta)
The idea behind Koding is to make the development process more social and collaborative and is expected to have a free base setup, which is cool. It is however still to ealy to tell if Koding will become the Facebook for coders. Projects are created in the browser and runs on a development server that supports Java, NodeJS, Perl, Python, Ruby, C, C++, Go, and other languages. At this stage Koding rely on the Ace code editor and as you can see here it may be useful for WordPress themes development.
Beanstalk is an online repository service making your code available from anywhere and easy to share. Beanstalk allows you to create Subversion, Git and Mercurial repositories online and have a simple web based interface for managing code, users and access. You can also review, compare and share previous revisions of your HTML mockups and images as shown on the demo here. Besides version control Beanstalk have nice features for managing deplyments, collaborating on delivering code and it supports integration to various time and bug tracking tools.
codepad.org is an online compiler/interpreter, and a simple collaboration tool. It’s a pastebin that executes code for you. You paste your code, and codepad runs it and gives you a short URL you can use to share it. Paste the URL into chat or email to get help or to show someone how to do something. Or just try things out when you don’t have an interpreter handy. It works well on many phones.
“An online platform that allows developers to write and learn code all from the comfort of their web browser.” Compilr is a cool fully featured online IDE, compiler and runtime environment with console access. It supports various programming langurages. It is also a repository of user created projects and scripts. Unfortunately here are some “Test” projects that I beleive need to be cleaned up to make it easier to find useful code snippets in a snap. The community is a traditional forum and it is possible to rate and comment on project – it is not collaborative development though. The free version grants you 1GB of storage, but your projects are publicly listed.
Progbuddy (beta, request invite is possible)
Progbuddy allows you to collaborate on code online by setting up shared sessions. It supports various programming languages such as PHP, Java, Ruby, C, C++,
Brackets (browser based and worth checking out, but not an online tool)