Cloud 9 sucks dead rats through a straw

Oddly (or interestingly), the board ships with a web based tutorial which includes a scripting environment based on javascript, HTML5, and Node.js. This is not bad in itself, but the introductory tutorial immediately drags you into using the Cloud 9 IDE. This is bad.

It is most definitely possible (and in my view far superior) to use Node.js along with the Beagle IO bindings they call "bonescript" (groan!), without using Cloud 9. What Cloud 9 is striving to do is to provide a dumbed down programming environment in the spirit of the wretched Arduino GUI, which I also despise and hate.

I have my own reasons for disliking IDE's like the Arduino GUI and Cloud 9, but I wouldn't mind them so much if they simply worked. The unhappy truth is that Cloud 9 is full of bugs, and of course I immediately ran into a serious one when trying out the introductory tutorial, which tends to leave a lingering bad taste in my mouth.

In some ways though this is a good thing. It saved me from investing any significant time and energy working with Cloud 9 and redirected me towards what I have found a far more productive way to get things done.

My initial experiences

As you may know there are 4 user LED's on the beaglebone, with nicknames USR0, USR1, USR2, and USR3. As long as we are making up friendly names for people to use, we may as well start counting from zero, eh?

A script to turn on one of these LED's would look like this:

var b = require('bonescript');
b.pinMode('USR0', b.OUTPUT);
b.digitalWrite('USR0', b.HIGH);

To use their "Cloud 9" web based IDE, point a browser at port 3000 . Cloud 9 has a support page forums, and website.

It deleted all my files!!

Apparently this is a known "feature" of Cloud9. If you run the introductory tutorial, it may at unknown times and for unknown reasons, delete all the files in the /var/lib/cloud9 directory. It may even delete the /var/lib/cloud9 directory itself. After this unhappy event, whatever it is that runs on port 3000 will not be running (though the regular port 80 server is OK). The recommended fix:
opkg install bonescript
--reboot
It is suggested you may want to try "opkg install cloud9", but it will take a long time. This is actually what I had to do. To check on the port 3000 "cloud9" dingus, use:
systemctl status bonescript.socket

Feedback? Questions? Drop me a line!

Tom's Computer Info / tom@mmto.org