26 March 2011

A Better Web-Based IDE

After a few days this week without Chrome OS due to a fun error in the Dev build (though its never bad to be able to revert to Ubuntu), I am able to be a Cr-48 nerd again.  The other day one of the three readers of this blog tipped me off on Akshell, another online development environment, which I quickly dove into in order to compare it against some of my other favorites which I have checked out previously here, here, and here.  By far my favorite has been Kodingen, I still go to it to code around and generally geek it up.  This all may change.

Akshell is a brilliant development environment that utilizes JavaScript for not only the client-side programming, but also the Server-side.  There are many cool features to how apps are developed and integrated in Akshell, which can be found in their documentation here.  I have found the environment to be amazing to use utilizing the default "ak" library and their Model-View-Controller framework.  For my first test I tried to remake (and improve) the test site I created on Kodingen with Akshell.  I found it was super fast to build with the Akshell environment and enabled me to test and preview just as smoothly as Kodingen though I think the interface with Akshell is much easier to navigate (perhaps because most of the features in Kodingen are still disabled in its current Beta state).  I must admit that I did utilize jsFiddle to quickly enhance my HTML5 canvas that I had created in Kodingen and then simply copied the JavaScript to Akshell.  So what does a quick Akshell site look like?  See mine here.

One of the promising things about Akshell that I'll be getting into soon, is their relational database (PostgreSQL) that is accessible with their "Simple JavaScript API".  From the documentation and the quick test I did with their relation variables I have to agree it is simple to use.  I hope to get some time to get an app going that utilizes this database functionality soon.

I don't know if I like Akshell an better than Kodingen as far as functionality and features (they both let you code, use a database, and deploy directly within their apps) but I can say that Akshell seems to be a more elegant solution to the online coding environment so I will definitely be using it for my next online coding endeavor.

22 March 2011

JavaScript Heaven with jsFiddle

I may have finally found the perfect tool to build and test JavaScript concoctions on the fly (or at least a really cool one). I have been utilizing Kodingen (which is awesome) to code on my Cr48 and then flipping between the JavaScript code, css, html (I know I could put these all in the same document but navigating that is more exhausting to me that toggling windows) and rendered pages to test my script, styles, and html quickly.  This can get a bit cumbersome, and flipping between tabs or workspaces can get old very quickly.

So I was reading through the Chromium blog and I watched a video of Paul Irish, a developer advocate for the Chrome team, discussing some of the cool tools using Google Chrome to develop quicker.  This sparked my interest in Paul Irish and the first post I saw on his site had an embedded example from jsFiddle.  This led me to jsFiddle.net.  Perfect.  Clean.  Awesome. 

The setup of the editor reminds me of the HTML5 playground at HTML5Rocks, only without the need to switch between views of CSS, HTML, and JavaScript.  In jsFiddle the concurrent views of HTML, CSS, JavaScript, and the current render are all visible because they are each contained in their own iframe.  I decided to try it out with a quick "hello world" test which due to the ease of use and another Paul Irish contribution CSS3Please, I was able to quickly generate this little fiddle:


Another great feature is the 'TidyUp' button which will clean up your code's indents and spacing, which is super handy if you are like me and you have moved things around or copied text in from outside sources (css3please).  Also included is JSLint which is a great utility that will examine the quality of your code and "will hurt your feelings" as it tells the user exactly what is wrong with their JavaScript.  I used jQuery as my JavaScript library of choice, but also included are Mootools, YUI, Prototype, Dojo, Glow, Procession.js, ExtJS, RightJS,  Raphael, and No Library (pure JS)... so just about any flavor you might care for.   I am sold on jsFiddle and I will likely be using it as my primary tool to fiddle with JavaScript.

15 March 2011

A Beatbox in the Sky

Recently I've been trying to find less nerdy things to do on Chrome OS.  I don't know if its because I've been boring myself when I analyze new cloud based development environments, or if its because I want to become a better advocate for Chrome OS and its purpose for everyone, but I started playing around with some cool applications.

I like music.  I like thinking I am a musician (I know cover bands don't really count, but almost...).  So when I saw in the Chrome Web Store a program from Aviary that would allow me to create music right in my fancy home in the cloud, I quickly installed it.  The interface is super intuitive (i.e drag n drop or click a button), so I was off and running.  There is about any sound you would need for a solid beat including drum kits, guitars, voices, even random sounds from around the house.  My first beat tracks were based off of the standard acoustic drum kit, but I soon moved myself to using claps snaps and an 8 bit organ (<<have a listen if you must).

So Aviary is an amazing website that has loads of amazing artist tools, not just music creation.  They have an audio editor where one can edit and mash together tracks, so the next step is to set up a drum track and try to play some music over the top of it in the music studio (or at least sample some of the creations that are out on Aviary's site).  The other tools all seem to be likely candidates for common use for my everyday clouding needs like screen capture and image editing.

Update:  Shortly after I posted the link to my sample sound Aviary's creation listening tool crashed.  I checked a couple creations from other folks and those were broken as well.  I'll update again when I see the link is working again.


Update: the link to the creation should work now.

09 March 2011

RAD with WaveMaker

Yesterday VMware announced they had acquired WaveMaker.  I had not explored WaveMaker, but luckily the news exposed this wonderful development tool for me.  WaveMaker is a tool for Rapid Application Development (RAD) that is perhaps the worlds greatest WYSIWYG editor.  Not just WYSIWYG for HTML or page layout, but it can completely eliminate the need for Java coding and with its integrated data structure mappings with Hibernate it can easily integrate with any enterprise database.  The point is that anyone who is computer capable can write a fully functional web application and maintain it without the need for developer time.  As a bonus, there is integration with the big names in cloud hosting like Amazon EC2, Rackspace, Eucalyptus, and OpSource

I checked out the example videos and was amazed.  I was especially excited because I of course noted there was a cloud version available.   Of course the site is down for maintenance without any idea as to when service would be restored.  Being an avid user or Chrome OS on my Cr-48 I was extremely bummed.  So I decided to  cheat a little (its still browser based app development, however it required installing software) and I cranked up developer mode on my Cr-48 and entered my Ubuntu Linux boot.  I downloaded WaveMaker and kicked it off.  

Amazing.  I created a test project with one of the provided templates and started dragging objects onto my web page.  Styling is available at the click of a button, and wiring up events to buttons exposes so special handling can be added.  I can already grasp the power of this tool and I have not spent a whole hour in it.  I can imagine in the coming days and weeks as I get the chance to get more familiar with it, I will be even more amazed.  I am also excited for when the cloud.wavemaker.com site is operational again when the true power of being able to code an application in the cloud and even deploy to a cloud host like EC2 without leaving the comfort of the browser.

03 March 2011

Remotely Coding

A few weeks ago I wrote a review of some web-based tools to remotely control my PC from my Cr-48.  I have to admit that after spending a real work day remotely coding while using my Cr-48 to connect to my PC at work, the win has to go to LogMeIn.  I had thought I could ignore some of the minor issues of TeamViewer because I really enjoyed how simple it seemed, but the character mismatches from what I typed on this end to what resulted on my work PC were not tolerable.  So I think the results should really be that TeamViewer is a simple solution for perhaps remotely helping a relative with an issue on their PC, but for coding remotely, my vote is now entirely for LogMeIn.

02 March 2011

Coding in the Cloud: Part ?

"your Cloud9 beta account has been activated".  I had been anxiously awaiting this email (although one can sign up now without a wait period) to continue my quest to find the best coding environment for use with my Chrome OS on my Cr-48.  Cloud9 is another development-as-a-service platform that claims to be the go to solution to marry HTML5/JavaScript development with github and has received some decent reviews lately after  its presentation at DEMO Spring 2011.  So I had to login and get coding.

I followed the link provided and once signed in I was able to quickly create a new project.  I added an html file and a JavaScript file to create a simple "hello world" website to test how the cloud9 development environment worked.  I saved my work, then clicked "Preview" and my boring website was previewed in a new tab.  Everything was working well until I returned to my project files and decided I wanted to rename them from untitled.html and untitled.js to test.html and test.js.  Moments later as I was about the check out the "Run" and "Debug" options mysteriously the screen flashed and the files were once again named as the default "untitled".  I saved the project to return later and investigate.

So I signed back in to my account and saw my previously saved project and selected "Open".  This took me to the sign in screen only the styles were all gone and it was a bunch of blank screen with the login box.  I of course had to try again, and after repeating this behavior a few times I thought, "maybe this is because its a beta account".  So I created a new account and thought "at least I can get a test project started to my testing so I can do a good comparison of cloud9 with kodingen and coderun" but I was not able to create a project at all.  I tried to use the shared github project that cloud9 provides as an example and that to failed.

Apparently cloud9 is getting hit hard with tons of new users who are experience some issues similar to mine, at least according to some of their twitter posts.  I'll be anxious to get a real review of this cloud based development environment because in my brief time on the inside, it seemed very easy to use and elegantly constructed.