Use the Cloud9 online IDE to hack on WordPress

Published on 31 January 2012

As some of you may know, I have been hacking on this WordPress blog site recently.  The decision to "improve" this site has really come from the realisation that WordPress is actually very good at what it does, and I am going to continue using it for the foreseeable future.  With that in mind, there were a few things that were annoying me about the site, so I started digging around the innards of WordPress to figure out what could be changed, and more importantly, how to do it.  To start with, this was done using the always useful FTP application, FileZilla.  I would download a .php file locally, make some changes to it, and then upload it again.  This cycle repeated for a few iterations, until I realised that there must be a better way to do this!

Using the WordPress Editor

Now, WordPress comes with its own built-in file editor, which gives you the ability to edit individual files.  This can be pretty much any file within WordPress, be it, plugins, themes, script files, etc.  However, the editor itself is very basic, and I quickly became annoyed at using it:

WordPress Editor

Using an Online IDE

Then I remembered about a conversation had with Phil Leggetter (@leggetter) and Daniel Elliot (@agileguy) while I was at GiveCamp UK last year, and the idea of using an online IDE to do the work started to become more appealing.  This would mean that I could "hack" on the files directly from within the browser, but still get the added benefits, such as syntax highlighting.  A quick search, and it turns out that there are lots of online IDE's out there.  Here are some of the ones that I tried out:

The requirements for what I wanted were quite simple:

  1. Be free (yes, I am a cheap skate, but for now, what I need to use it for doesn't warrant paying for the service)
  2. Allow editing of files on a FTP Server
  3. Syntax Highlighting
  4. Allow private projects

Due to requirement 1 coderun was not able to be used.  Don't get me wrong, this is a GREAT application, and if I was looking to code full-blown ASP.Net applications in the cloud, this would definitely be one of the go to applications.  That left three applications to whittle down.

Although it claims to be able to do it, I couldn't get codeanywhere to connect to my FTP Server (and this wasn't for want of trying) so I gave up on using that.  That left ShiftEdit and Cloud9 IDE.

I played with both of these, on and off, while I was doing my hacking, and I have to say that they are both very good.  Both are free (depending on what you want to do with them), and I found it hard to choose between them.  After a good bit of consideration, I have decided to continue using Cloud9 IDE.  This was for a couple of reasons:

  1. Although ShiftEdit is free (for what I wanted to do) it didn't offer SSL access, which was a bit of a downer
  2. Cloud9 IDE seems to be under far more active development, with exciting recent announcements about Azure integration

One thing I should note about Cloud9 IDE, is that in order to secure access to your projects you normally need to purchase the premium subscription, i.e:

Create New Project

However, when it comes to FTP projects, it is only you that gets access:

Create New Project FTP

Now, I have to admit that other people getting access to my FTP Server was something that I was worried about, and I wanted to test to make sure that it wasn't publicly accessible.  To test this I sent a DM on Twitter to Phil Leggetter and asked him to try to get in, and this is what he was met with:

Denied Access

However, what is interesting, is that you "can" grant access to users through the Cloud9 IDE dashboard, once they request access, which is a really nice touch:

Cloud9 Dashboard

Sorry Phil, I denied your request to join the project :).

All in all, this is a VERY polished application, and I would highly recommend checking it out.  The GitHub and BitBucket integration is seamless, and just works!  Make sure you check it out.

If you are interested in checking out the result of my hacking I have uploaded my changes to my GitHub site here.

comments powered by Disqus