# Wednesday, November 11, 2009
CodeRun is a fantastic site. I'm not sure how long it's been around, but sure wish I'd discovered it earlier.

While I'm impressed with any attempt to deploy a cloud-based IDE, most editors have their limitations, leaving me to fall back to using Visual Studio, Eclipse, or Notepad++ for 90% of all development work.

This leaves me to wonder if the web is so unique that the traditional IDE as a design metaphor perhaps shouldn't be carried forward. Since the cloud is a completely new way of managing IT assets and applications, should the development environment also be as innovative?

The CodeRun IDE first presents itself as a web version of Visual Studio.NET. It was almost scary to see such a faithful replication of the Windows based application entirely in HTML.

CodeRun has a fantastic Freemium model where you can start creating projects without even registering an account (I did in order to save my projects). When you're ready to deploy your application to the web, they provide paid services for hosting.

There are several project template options. It's weighted towards traditional C#/ASP.NET development, but there are options for both JQuery and PHP projects. I only played with the ASP.NET, ASP.NET Web Service Application, and JQuery templates.



I was most impressed by the built-in Intellisense. Just type a scoped entity and a drop down list of methods, properties, and interfaces appears (clicking tab to select an intellisense option didn't work like it does in VS). On the fly code highlighting is pretty good. I imagine tab and space management must be difficult to do in a browser IDE, and the code templates I played with had some problems with whitespace.

One use case I focused on was a State Tax webservice for an eCommerce shopping cart application. State sales tax rates don't change very often, which makes it easy to create a webservice that takes a US State input and returns a tax rate (I didn't delve too deep into return types. A production quality web service would be better off returning a more complete data structure).

Coding in C# then pressing "Build" to compile the project seemed very natural. Clicking on a build error took me to the offending line of code.

The "Debug" feature didn't work for me. Best I can tell, you're getting an actual virtualized ASP.NET instance for each project. I changed a namespace which resulted in a cryptic error, and when Debug didn't work I was able to access the actual ASMX file to update the namespace in code front.

The "Databases" feature didn't work either. It says it's in alpha, which I guess means it's a UI prototype (?). Anyway, most web apps would be better served to start from the ground up without a relational database. I would really like to see the concept of a cloud DB be something like CouchDB or a smart JSON store.

Overall, very amazing little tool. I think its borrowed enough from the old school to be familiar to many developers, and therefore easy to adopt. The challenge will be adding the cloud-specific features that help differentiate it from traditional IDEs.

The "I" in IDE is "Integrated". So, in a cloud context, I think this should mean exposing Google Code, Charts, Maps, Amazon S3, Force.com, StrikeIron, Facebook, Twitter, and any number of APIs directly in the IDE.
Wednesday, November 11, 2009 9:26:16 PM (Pacific Standard Time, UTC-08:00)