In the process of writing about the site that lets you run Linux in your web browser, I learned about Skulpt.org that is essentially the same idea only for a python command line.
The demo at www.skulpt.org is pretty cool… just modify the python code in the screen and press Ctrl+Enter to execute the code and have the output appear in the box below.
To play with it yourself, you can get the code at http://code.google.com/p/skulpt/ or as author Scott Graham shows on the Skulpt.org page you can just use mercurial to clone the repo.
I haven’t installed it myself… again, like the “Linux in your browser” experiment, I think this is very cool but I’m not entirely sure where I’d personally ever use. Still, I’m very glad people build projects like this – if for no other reason than showing that this could be done!
Watch the boot sequence… and… ta da… you’ve got a Linux root prompt! Use basic Linux commands, edit files with vi, compile apps in C using “tcc”.
Also check out:
Would you like to create your own SMS interface to Twitter? To be able to post your own tweets via SMS? Or would you like to have an IM interface to Twitter using Jabber, GoogleTalk, AIM, MSN, Yahoo, etc?
And would you like to do all this using Node.js?
Sure, Twitter already offers its own SMS interface… but hey, why not build your own to play with Node.js?
That’s exactly what my colleague Justin Dupree did and then wrote up in this great blog post:
Building a Twitter SMS/IM Service with Tropo & Node.js
I love it! I mean… combine 3 of my favorite passions: Twitter, Tropo and Node.js… mix them together, shake them a bit and out pops a very cool mashup that lets you have your own interface to Twitter using SMS or IM.
Kudos to Justin for the great way he walked through the code in the post… and also made the full Tropo-Node-Twitter code available on Github. I’m looking forward to playing with it more and seeing what else I can do with it…
P.S. I’m naturally found on Twitter at twitter.com/danyork.
While this video is from back in July 2009, it’s a great story around how JSON came to be and has some solid lessons in it for people developing new data formats:
Video: Douglas Crockford — The JSON Saga
Yahoo! thankfully provided a full transcript of the video on that page so that if you don’t have time to watch the video (I initially didn’t) you can simply scan down the text.
I enjoyed the emphasis on “less is more” and on the need to remove functionality to make it simpler. At one point Crockford says (taken from the transcript):
One of the key design goals behind JSON was minimalism. My idea was that the less we have to agree on in order to inter-operate, the more likely we’re going to be able to inter-operate well. If the interfaces are really simple, we can easily connect, and if the interfaces are really complicated, the likelihood that something’s going to go wrong goes way, way up. So I endeavored to make JSON as simple as possible.
I had a goal of being able to put JSON standard on the back of a business card. And this is the card. Come see me if you want one of these cards; it’s the JSON card, it’s got the JSON standard on the back.
He goes on at some length about XML, language design and much, much more. If you have 50 minutes to watch the video, it’s worth it. (Alternatively, the transcript is excellent.)
If you’ve been interested in learning more about Node.js, this video may help you as it helped me:
One note: It’s from November 2009, which in web language terms that is quite old… and Node.js has evolved a bit from where it was in this video. For instance, the “tcp” module mentioned in an early demo is now the “net” module. (I found some good examples of current usage.)
Ultimately my goal is to experiment with the Tropo WebAPI library for Node.js to build voice, SMS and Twitter apps using Tropo.com. Right now, though… I’m just having fun learning a new way to program!