Why node + chrome rules the world...

473 views
Skip to first unread message

Dennis Kane

unread,
Sep 1, 2012, 8:11:54 AM9/1/12
to nod...@googlegroups.com
I first became aware of server side javascript about a year and a half ago.  Hacking away on the server got me comfortable with JS itself, and I then started seeing the possibilities inherent on the client side.  I have just now finished the prototype for a website construct that fully leverages JS on both the client and the server.  My site (luvluvluv.info) is pretty popular because of all the craziness that I pull in the "real world".  (Let's just say that I'm an "interesting character", haha.)  Anyway, I'm trying to get my site visitors aware of what I'm really doing, in terms of this new paradigm that I'm trying to promote.

When you go to the site, it "looks" like any plain-jane site, circa 1997.  Not much to it in the visual department at the moment.  But then you see things like close buttons on the major sections of the page.  If you click one, that section will completely disappear from the page.  Then you ask, "How do I get that section back?".  Simple! If you just press the 'c' key, a "controller" menu will pop up.  The closed sections appear in red.  To bring it back up, just click on it!  And to reorder how the sections appear on the page, just right click it in the controller menu, and use the up/down arrow keys.  Then right click again to deselect it.

You can activate the major sections of the page by just clicking on them.  It should change to a light red background when you do that.  When you activate the "Journal" section, you can scroll through the entries with the right/left arrow keys.  Holding down 'alt' at the same time will scroll according to the current "skip factor" and holding down 'ctrl+alt' will zoom it to the beginning or ending (this works on Macs... other operating systems will differ on how the arrow + meta key combinations work).

Okay... so that's not the really exciting part.  Then fun only really begins when you press the 'd' key.  I don't want to ruin the surprise... try it out for yourselves!

I developed the site primarily for Google Chrome, but of course any webkit based browser is going to work well.

On the backend, I just like to have a tight little server that just keeps the connection logic in order.  I of course also need to save stuff, so I just use node-mysql for that.  But as far as most tasks are concerned, I just like to offload as much work as I can onto the powerful little JS engine that is built into each Chrome browser.  I  use HTML5 Local Storage to save the state of the client.

Dennis Kane

unread,
Sep 6, 2012, 2:13:14 PM9/6/12
to nod...@googlegroups.com

Hi!  I've got a really slick Desktop GUI working that almost rivals my MacBook:)  What I am creating is basically a browser based operating system that will allow you to plug in arbitrary application modules.  I want the modules to be dynamically loadable, using node as the application server.  So now that the "OS" is getting stabilized, I can really start to think about hardcore web-based application programming.  I want to be able to load up the Video folder with youtube icons that you can double click to pop up a youtube video player.  But really, I want to develop a crazy wicked HTML5 video player that can be used with "freeware" ogv video streams and such.  That's just a "for instance" and there is obviously an unlimited number of things that can be done.  Well, nobody has shown any real interest in this, so whoever wants to get together to hack away with me is very welcome!  I am going to want people who are comfortable with both the node and the Chrome/DOM programming environments....

Ket

unread,
Sep 7, 2012, 12:47:34 AM9/7/12
to nod...@googlegroups.com
Don't boast them much just yet they have taken down some cool MP4 video features. What do they think better video format than mp4 you guess.

Yes, I can use ogg but that is the case.

Karl Tiedt

unread,
Sep 7, 2012, 1:30:47 AM9/7/12
to nod...@googlegroups.com
Have you seen the Lucid Desktop project?
http://dojofoundation.org/projects/lucid-desktop

-Karl Tiedt

Dennis Kane

unread,
Sep 7, 2012, 4:32:12 AM9/7/12
to nod...@googlegroups.com
I think I have seen that site before... but the fact that I don't really remember is not a good thing!  I guess the first red flag about that project is the fact that the last blog entry is dated September 30 2011.  Also, I couldn't figure out how to jump through the hoops necessary to get the demo working.  Mine is painfully simple to get working, though, and I am interested in working on it and blogging about it pretty much every day for the forseeable future!  So I guess I'm just not very excited/worried about it.  

Jorge

unread,
Sep 7, 2012, 5:21:44 AM9/7/12
to nod...@googlegroups.com
On 07/09/2012, at 10:32, Dennis Kane wrote:
>
> On Friday, September 7, 2012 1:30:55 AM UTC-4, Karl Tiedt wrote:
>> On Thu, Sep 6, 2012 at 1:13 PM, Dennis Kane <dka...@gmail.com> wrote:
>>>
>>> Hi! I've got a really slick Desktop GUI working that almost rivals my
>>> MacBook:) What I am creating is basically a browser based operating system
>>
>> Have you seen the Lucid Desktop project?
>> http://dojofoundation.org/projects/lucid-desktop
>
> I think I have seen that site before... but the fact that I don't really remember is not a good thing! I guess the first red flag about that project is the fact that the last blog entry is dated September 30 2011. Also, I couldn't figure out how to jump through the hoops necessary to get the demo working. Mine is painfully simple to get working, though, and I am interested in working on it and blogging about it pretty much every day for the forseeable future! So I guess I'm just not very excited/worried about it.

Yeah, that (lucid-desktop) seems to be a dead project...

Here's the pioneer of "web operating systems" (+6 years old) that's cool and awesome and still alive and kikin':

http://eyeos.org/
http://en.wikipedia.org/wiki/Eyeos

There's also Dan Ingalls' more academic experiment:

http://lively-kernel.org/repository/webwerkstatt/gettingStarted.xhtml
http://en.wikipedia.org/wiki/Lively_Kernel

And WebShaka's (dead) attempt at it:

http://www.youos.com/
http://en.wikipedia.org/wiki/YouOS
--
Jorge.

Dennis Kane

unread,
Sep 7, 2012, 8:48:55 AM9/7/12
to nod...@googlegroups.com
EyeOS might be technically wonderful, but it is a corporate/commercial/pay thing, so that makes it pretty much completely irrelevant to me.  But... given the fact that when I clicked the "What's eyeOS" link under "About Us" at the bottom of the page only to be met with a "404 not found" page , I guess I'm just a tad skeptical about the whole venture :D The "academic" one, I dunno, it's just weird and sluggish.  The dead one... well I guess that just speaks for itself.

Anyone know of any other contenders?

Anyone have any thoughts on mine?

Cheers!

Brandon Benvie

unread,
Sep 7, 2012, 8:54:16 AM9/7/12
to nod...@googlegroups.com
It's not an OS, but it does some of what you're talking about: https://github.com/appjs/appjs http://appjs.org/

Karl Tiedt

unread,
Sep 7, 2012, 9:35:43 AM9/7/12
to nod...@googlegroups.com
Yeah, Lucid started years ago now, and it was very active, not sure
what happened with it, but it was pretty amazing at what it did for
its time.. If nothing else, it may be good for some ideas, I didnt
realize it has fell by the wayside :/

-Karl Tiedt

Dennis Kane

unread,
Sep 7, 2012, 10:43:29 AM9/7/12
to nod...@googlegroups.com
Well, the necessary technology didn't really exist years ago.  I rely very heavily on node/socket.io/websockets for the server side and Chrome's constantly developing API in the client.  Trying to implement my current site with older JS engines and HTTP servers along with AJAX would be next to impossible.  So I'm pretty excited about what I'm doing... the GUI is pretty intuitive and the websocket connection is lightening quick!

Daniel Sousa

unread,
Sep 10, 2012, 4:47:43 AM9/10/12
to nod...@googlegroups.com
eyeOS used to be great on the 1.x versions, but in 2009 the eyOS Team abandoned the 1.x series and started developing eyeOS 2.0 almost secretly and since then eyeOS has been more a commercial software than an open source project. Currently their website doesn't even mention there's an open source project.

Lucid 2.0 was supposed to be developed on node.js, but there was basically just one person around it and he hasn't worked on it for a long time.

These desktops were a great idea 5 years ago when there weren't any web apps and the word "cloud" wasn't even used, now these small projects would have a hard time competing with Google Docs et al.

--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
nodejs+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Dennis Kane

unread,
Sep 11, 2012, 5:44:18 PM9/11/12
to nod...@googlegroups.com, dan...@sousa.me
In my opinion, there *still* aren't any "web apps" around, hahaha :)  When I think about an "app", it's gotta look and feel just like a desktop thing.  Yeah, my project is real small right now, but I'm about to put something up that's pretty mindblowing.  It's a kind of realtime, distributed community programming thing.  I want it to be a combination of stackoverflow + github  on steroids.  You'll be able to dynamically update the Javascript that runs the site.  Working code can now be deployed from my local console text editor to the remote clients in a small fraction of a second.  It's all pretty hairy at the moment, but I should be able to smooth things out real nice in the next few days.  I'm really investigating the possibility of an entirely new paradigm of programming...  I must just go nuts in the process, though :P!!

Dennis Kane

unread,
Sep 14, 2012, 10:31:14 PM9/14/12
to nod...@googlegroups.com
When one person gives up, another one doubles down.  It's the way of the world... yin and yang and all that happy crap.  I've just added a youtube feature to my website/desktop thingy (http://luvluvluv.info).  The info for the artists and videos are kept on the server, and are only downloaded via socket.io when you do some kind of mouse event.  Hopefully I can start convincing summa you's that this new concept is worth a little of your time and energy!  About the other crazy stuff I've been talking about recently, I realized that it's not really possible with the current state of my code (and the current state of my coding skills :)  I need to refactor the hell out of this thing and approach it from a much higher level before I can start thinking about doing dynamic code insertion...
Reply all
Reply to author
Forward
0 new messages