Been playing with WebSockets recently, here’s one demo I’ve built that pushes iOS gestures over a socket to an EventMachine (ruby) script that pushes it down to a standard html webpage running the Google Maps JS API. You can check out the demo here on YouTube.
I’ve always been interested in building things off the desk or off the computer in front of us; that’s why I love building mobile products. But I’ve always had a passion for visual display through lighting, so with that I’ve been working and revising lightpanel for the past year.
Lightpanel is a project I’m building that comprises of three LED (7 column, 9 rows) Phidget boards that are connected to a computer over USB and exposed over the network by a lightweight and fast Java server that accepts commands over socket connections. For example if I want to switch on row 2 and column 5 at 100% I just send the command “2 5 100” to the server over a standard socket session (telnet works great)
Here is my latest demo which is a snake simulation where the snake moves around the 3 boards with its tail decaying as it moves along. Because of the great framework I’m using on Java end I actually have 5 ruby clients running an instance of the snake resulting in a pretty crazy visualisation.
I’ve recently begun work on a fun little open source project that I hope some people will enjoy using.
I am calling it Plank, it is a small discussion board that uses a standard folder on a file system as a database. This allows people to use sharing solutions like Dropbox to have a central database for their discussion board without the need for a centralised public server; instead each person wishing to access the forum just runs Plank locally on their own computer and accesses the board through their web browser.
I am trying to make Plank really simple to get going with a shared folder from the command line, all you have to do is start plank from the terminal with the shared folder as your directory then Plank will automatically provision the folder with a database and fire up the server at http://localhost:4567 for you to setup your profile and start posting.
Plank uses MessagePack to store each entry of each class as a file in the shared Dropbox and uses a simple Sinatra web instance to serve up the local discussion board.