Your browser (Internet Explorer 6) is out of date. It has known security flaws and may not display all features of this and other websites. Learn how to update your browser.

October Development Update

Liquid Canister Icon by Brent Cameron
Liquid Canister Icon by Brent Cameron

Lots of goodies in this update! Before getting to those I have one quick housekeeping note.

I’m moving away from the weekly goal setting concept. It seems to work great when the goals fall into the right sweet spot of available time and smooth development. But outside of that narrow window it ends up creating un-needed stress and pressure.

Onto the goodies! After trying a few different approaches with Websockets I went with and I’m really happy with how its turned out. All existing API calls are working over both regular HTTP requests and Websockets!

While working on the websocket integration I came across a plugin architecture for Node.js from Tim Caswell. It’s aptly named architect.

I was hoping to have a chance to put a plugin architecture in place shortly after launch but when I came across architect I couldn’t resist re-factoring the existing server api code into architect compatible plugins. It was super easy to integrate with and provides a great starting point for a modular, plugin friendly Ubuntu Server API from day one!

Saving the best news for last I put the server api code up on github! To get the code in your hands earlier I decided to hold-off on Ubuntu packaging and start sharing the code as an npm package. You can start experimenting with the code now by cloning the repo and running “npm install” in the root directory.

I encourage everyone to try it out and take a look at the code. Any and all feedback is appreciated!

Having the server api code available feels great! I’m working hard to get the first version of the client-side code available as well. As soon as the flow for getting a server added is useable from end to end it’ll be in your hands!

  • Evan Anderson

    There’s a small bug in node-authenticate-pam that causes it to fail compilation. This is remedied by downloading the source (git clone and editing the Line 28 should read #include instead of #include . Then place the source in a folder named authenticate-pam in the node_modules folder.

  • David Feinberg

    Thanks for that tip Evan. I didn’t run into that issue on Ubuntu 11.x. What version where you running when you ran into it?

  • Evan Anderson

    I’m using 12.04. I’m also getting an issue with the sqlite version not being available. It tries to use 2.1.5 or greater but the highest version available is 2.1.1.

  • Evan Anderson

    Solved by downloading the sqlite source from github (git clone git:// and placing it in the node_modules/sqlite3 folder.

  • David Feinberg

    Glad you got it worked out! Thanks for sharing the feedback. I’ll update the readme tonight with better instructions starting from a fresh 12.04 install!

  • Evan Anderson

    Update: All that needs to be done to get working is to update node to v0.8.12 so that it uses sqlite3 2.1.5. There is no need to do the previous step of downloading the sqlite source.

    Now it’s throwing this error when I run “make test”

    throw arguments[1]; // Unhandled ‘error’ event
    Error: SQLITE_CANTOPEN: unable to open database file


  • Guest

    Hi, I’d really like you idea.
    It is possibile to have a screan shot or something that gives an idea of how the final ui will be?

  • Anonymous

    I’d really like this idea.
    It’s possibile to have a screenshot or something that gives an idea of how the final interface will be?

  • Schiwe

    Release Date?

  • David Feinberg

    working really hard to release as soon as possible!

  • David Feinberg

    stay tuned, almost there!

  • Tino Bed

    any recent developments?

  • David Feinberg

    Thanks for the kick! Lots of development has been happening but I keep procrastinating the blog post to code more. I’ll post an update this weekend!

  • vali reality

    can you give some build for testing?

  • David Feinberg

    I’ll have a build for testing on December 26th in the meantime you can try out the server side API.