Coding in the Cloud: Part II

Coding in the cloud is something I feel I need to be able to do easily now that I'm utilizing my Google Chrome OS notebook.  Last post I discussed utilizing an online development environment called CodeRun and found it to be quite useful, but it is not my favorite cloud development environment.  My favorite (so far) is called Kodingen.

Kodingen is "The Cloud Development Environment, Online Code Editor, Cloud Hosting, Web-based access to file system, Web-based ftp & svn integration" or at least it will be all of those things.  Currently Kodingen is in Beta v3 so not all of those features are available as of this writing.  Even though this cloud development environment is not fully operational it is still fantastic.  As shown on their site, there is code support for php, perl, and python [with future support of django, ruby on rails, fastcgi,...].  The site you create is hosted on Kodingen, and they offer a default 500mb of diskspace, 1000mb of monthly traffic, 1 domain, 6 subdomains, and 5 databases by default (of course you can "get extra resources").  So I set out to play around with Kodingen.

Setting up an account was easy enough, so I logged in an got to work.  I quickly created a website with an HTML5 canvas star field plastered on it all from the comfort of my Cr-48.  As far as code editor selection, currently there is support for Bespin, CodeMirror, and Ymacs.  I found that CodeMirror suits my needs best, though I might have been inclined to choose Bespin (probably because of its name), but it lacks good support for copy/paste in Google Chrome.

A couple features I have not utilized more than a simple evaluation are the database support and the image editing.  Creating a MySQL database was a snap (PostgreSQL, and SqLite support to come) so I created a simple database with a couple tables that seemed to perform well enough.  Image editing is currently supported using Pixlr (support for Aviary to come) and again seemed to perform well enough.  Kodingen also reports future support for code repositories such as svn, git, and mercurial where one can create teams to manage joint coding efforts (can't wait to try it out).

So after my week of trialling CodeRun and Kodingen, I must lean toward Kodingen based mostly on personal preference, but I feel that both systems create a sound cloud based development environment.  As I mentioned in the last post I think these systems would be ideal for educators wishing to introduce their students to web development or as a great code on the go environment.

Comments

Cory Gack
@Petrichor I haven't yet, but I'll try it for sure. Thanks for the tip.
Petrichor
have you tried shiftedit.net

Coding in the Cloud: Part I

As a web developer I feel tethered to my desktop workstation, sure I can work remotely, but how can I code in the cloud without the need for a desktop development environment.  There are several cool tools for cloud-top development environments two of which I have been trialling recently.

CodeRun is a development platform for three main types of applications, C#, JavaScript, and PHP.  To get started all you need to do is go to the CodeRun IDE select "New" and you can choose the project template of your choice and go.  Most templates start with a clever label or button as a started, for example the jQuery UI project template starts with a "HelloWorld" dialog.

One can also upload an existing project which I have stored elsewhere and get to work.  This could be a great alternative to remotely connecting to an office based IDE and coding through that connection.  With the CodeRun platform the user has access to debugging tools and an in browser secure "temporary sand-boxed environment" in which to run your projects.

In my opinion a fantastic feature of this platform is the repository of code samples.  CodeRun allows a user to share their code, assigning it a unique URL that the user may share.  Just browsing through these projects would give a developer a great view of the power that this tool holds, or ideas for their own projects.  I could see this as a great way for educators to get students to learn programming, without a need to buy/download/install massive amounts of expensive applications.  A student could code their program and turn it in by sending their linked URL to their instructor for grading.

So I think that CodeRun is a powerful application that is great for all levels of developers or even those with no experience coding who want to learn a new skill.  Go for it.  Happy Coding!

To The Cloud?

I want to maximize my time in the cloud, but as a Software Engineer, I currently spend a majority of my day developing web applications tethered to a desktop development environment loaded onto a workstation running a popular operating system developed in Redmond, WA.   This is a fine environment when I am capable of getting to my cubicle at the office, but when a massive ice storm (as an example) prevents my journey to the office park, I must be able to work remotely.  

There are many solutions to this problem, and most require some form of secure connection to my work network followed by a remote desktop session to control my machine at the office.  Traditionally (before my chrome notebook) I had no reservations doing this as an adequate means to get my work done.  On my Cr-48 my traditional methods of remotely connecting to my workstation are not possible, so I set out to find my new solution, a web-based remote desktop solution.

There are plenty of these remote desktop solutions to choose from.  A popularized method in recent commercials stating "to the cloud" is not applicable here since it would require a cloud connection via "Internet Explorer 6 or later (32-bit version only)", which is probably not how I'll be connecting using my Google Chrome OS notebook.  A couple of other web applications that will allow remote access that I have tested since getting my Cr-48 are LogMeIn and TeamViewer.

After trying out both of these I think I'll settle on TeamViewer if I need to connect remotely.  This application is extremely user friendly and quick to set up.  Download the installer onto your remote PC, get the connection information, log into the web access site and you are looking at your remote PC.  Just as with other remote connections it seems to lag a bit but I was connected and able to navigate my applications remotely without much trouble.  I did experience one minor issue where the character mappings from keyboard input were a bit off, i.e.  '/' key became 'ยง' but still nothing to prevent me from utilizing TeamViewer in a pinch.  

After going through all of this I feel that my real goal should be to get all of my work including the code base to the cloud so no matter where I am, what computer I'm sitting behind, I can get to work.  Thats what I plan to do next with some amazing new tools like KodingenCodeRun, and once I get my hands on the beta, Cloud9

Want a Chrome OS notebook? There is still a chance you could get one.

This morning Google sent out massive amounts of spam to us Cr-48 pilot program members as they published the posts of a new chrome notebook pilot program users group.  Sure it was a lot of emails, but Google has sent out an apology email explaining how it all happened.  Apparently a user found the group which was configured such that when he posted to the group it auto emailed everyone subscribed (some 25k members), who then replied causing more emails to flood in.  There are a couple of interesting points I have gathered from this incident.

1) A post I read was from users who have yet to receive a Cr-48.  This is either a really mean mistake by Google, or more likely, the users should make sure they check their front door for UPS deliveries in the coming week(s).

2)  There are only approximately 25,000 users.  This means if Google is keeping its word on delivering 60,000 for the pilot program there are plenty of users who signed up for the pilot that can still hope for a delivery in the coming weeks or months.

So for those of you who are wishing to join me and my 25,000 friends in testing the amazing Chrome OS on this lovely Cr-48 notebook, you still might get the chance.

cloud anywhere

A Wi-Fi connection is pretty easy to find just about anywhere these days.  There are however times when it might become necessary to get into the cloud by other means, and luckily the folks at Google were clever and kind enough to equip the Cr-48 with the means to do so with its Gobi 2000 3G radio and 100MB/mo of free Verizon Wireless access.  So I set out to activate this cloud anywhere service.  This was a very easy task with one tiny hangup that made it just a little annoying, but still simple.

I was able to view 'Activate Verizon Wireless' from the network status menu in the upper right.  I clicked it and a page opened with helpful information about how the service was being activated...it might take a few minutes...and it was quick and easy (along with a friendly comment about how they were striving the make it quicker and easier).  Sure enough a few minutes passed, I had a couple of bars showing I was connected to Verizon, but my account settings showed "partially activated" with an  message stating there was a slight problem (I can't imagine how partially activated wouldn't be) and a number to call if the problem persists.

Not being one to call customer support the first time I get an information message like this, I clicked 'Activate' again and was greeted again with the friendly connecting message followed by the unsurprising "there was a problem" message.  So I called the number.  I was greeted by the friendliest computerized voice telling me the number provided is not available in my area so I should call a different number (awesome).  I did that got in touch with Colin (or something) who kindly asked my situation but cut me off when I said anything related to Google, Cr-48, chrome notebook, and asked "is that like a tablet or something?".  Clearly he was not the person to talk with, but I eventually got patched through to technical support and Nick who had clearly dealt with this before. After I dodged the standard up-sell to a higher data plan, I was granted access to the 3G wonderland (at least what 100MB/month will get me).  

The connection has not let me down yet.  In my few days of testing I have shut down my wireless connection and the 3G seamlessly picks up and quickly eats into my data plan. I can see the options of having unlimited all day access ($9.99) or a higher rate (up to 5GB/mo for $49.99) to be quite tempting if I were ever: a) stranded somewhere without Wi-Fi and really needed to get in the cloud, or b) I did more than go from Wi-Fi at home to Wi-Fi at the office.

Home in the Cloud

Three days ago I received a marvelous gift from Google in the form of my very own CR-48 notebook.  In December I had submitted my application to the Chrome OS pilot program, crossed my fingers, and a half dozen weeks later was lucky enough to receive my very own chrome notebook, and it is amazing.

This stealth notebook comes complete with a fledgling operating system (chrome os) that is proving to be powerful enough for all my everyday computing needs.  The boot time is remarkable, with the removal of standard operating system boot bloat, Chrome OS is running in ~10 seconds.  There are plenty of sites discussing the specifications of this device in detail, and I am not going to review the device here.   Other reviews state this device and the Chrome OS are dead in the water, but so far I have to disagree.  I can see a bright future for a fast, affordable, notebook with a lightweight operating system designed so that no matter what my location, I am able to connect to the cloud quickly and accomplish all the tasks I need to. I am going to push this device to it limit and see what, if any, limitations it has.

I have been courting the cloud for some time, working in Google Docs, syncing photos to the web with Picasa, and loading a lightweight linux distro on an old HP laptop for nothing but netbook purposes, but now with the chrome notebook and Chrome OS I am going for a more committed relationship, attempting to detach myself completely (or as much as possible) from the standard operating system and live in the cloud.