[nodejs] My desk is URDESK (a very good client for node)
(If this is tl;dr, just go to http://urdesk.net right now) What does it mean for something to be a good node client? When I think of a client for node.js, I think of a dynamic user experience that doesn't really require any page refreshes, and that stirs up a whole bunch of good feelings as regards what is possible on the web. I started thinking about web programming in the mid-2011 time frame. I wanted to see how far I could push the concept of a dynamic user experience. Fast forward to February 10, 2014 (today), and I think that my original vision has finally come to fruition. Starting in September 2012, I began working on the current incarnation. My idea was to go all in by way of seeing if I could duplicate the OS X end user experience inside of a web browser... all courtesy of Google's V8 JS engine running inside of standard Chrome. Since that time, I've put in about a full year's worth of 8-12 hour coding days. Here is the basic setup: There is a core desktop module that performs all of the essential system level operations: window, icon, context menu, menubar, and toolbar GUI operations, as well as all of the interactions with Local Storage and the filesystem API. There are several self-contained modules of which the core has no knowledge that plug into the system through a basic interface. The most important of these modules are the Unix-style text editor (called Nanim) and the command-line interface. There are other, graphical modules that I've spent relatively small amounts of time developing, such as a media player and a prototype-phase word processor. There are several ways of thinking about the system. Most obviously, I think that it pushes the envelope in terms of how we understand the notion of an operating system. Such a thing has traditionally been written in native code, and has required a fairly sizeable cost to download, install, replace, etc. (What I mainly mean by cost is NOT the purchase price, but rather the potential for catastrophe if the installation procedures are not followed precisely. So by this definition, we can judge the commercial OSes to be much cheaper that all of the Linux distributions that require one to do things such as partition hard drives and install custom boot loaders to try them out.) We can call the OS that I've developed a trivially loadable/bootable OS. The only investment that it currently requires comes in the form of accepting the browser's this site wants to permanently store data on your computer prompt, and then waiting the minute or so for all of the resources to download. After that, everything is served locally, meaning that a network connection is not necessary for it to load. Furthermore, given that all of the locally stored data is essentially namespaced by the domain name, one can have many OS environments running alongside each other in different tabs of the same browser, with the caveat that each tab is must use a different subdomain (this just means that all of the resources owned by www.urdesk.net essentially live in a sandboxe, safely hidden away from, eg. dev.urdesk.net... or any other subdomain of urdesk.net). In this way, there is essentially zero cost involved when it comes to experimenting with a new OS, and trying out all of the different applications contained within it. Application developers will be able to write their logic without having to worry about distribution problems, given that it will be guaranteed to run on any Chrome browser, thereby eliminating all issues related to downloading (and the related issue of viruses), plugin-installing, flag-enabling, etc. The next level of thinking about the system is that the applications are not traditional applications in the sense that they run as different native processes, and thereby keep their data structures in mutually exclusive address spaces. In this system, there are precisely zero issues of interprocess communication (IPC). All applications are actually just JavaScript function objects that collectively inhabit a single browser tab address space. All complications traditionally related to IPC now become null and void. Given this fact, the possibilities in terms of the development of a holistic kind of user experience increase profoundly. (As a trivial example of this, imagine your calendar app being aware of what you are typing into your word processor and adjusting itself according.) And finally, this system allows for the emergence of a fundamentally new paradigm in terms of how we relate to our computers. I have actually had a much longer history developing AI-type command-and-response systems than I have had developing user interfaces. Within the command-line interface, there is a working prototype of a natural language REPL (read/eval/print loop) that accepts the kind of syntax that the most naive of end users would not find intimidating in the least. You must understand that I
[nodejs] Re: A decent client for a node backend...
The idea of implementing client-side data binding is something that really appeals to me, and I think it can really spur innovation in the world of tech. So, I wanted to give each terminal window the ability to have its own arbitrarily sophisticated environment that could be persisted between page loads. In normal command line mode, everything is really just treated like a string that must be interpreted based upon the particular command that has been invoked. Try doing: $ echo 1 2 3 4 5 And then: $ echo 1 2 3 4 5 ...there's really no difference between the two. But then you can interact with the terminal's environment object by running the eval command as such: $ eval one=1 This is much different than saying: $ eval two=2 After running both of these commands, you can do this: $ env ...in order to see a nicely formatted representation of the environment in which you are running. You will see that there is indeed a fundamental difference in terms of the internal representations of the variables, one and two. Now the thing that really makes this stand apart from, for example, a bash environment, is that you can create arbitrarily sophisticated object trees. One way to create an object is by using variable names that you've already declared like this: $ eval myobj={one,two} This will create a JSON object with the keys set to one and two, and the values set to the values that you've given them. But to start having real fun, you can do something like this: $ eval myobj.childobj={} $ eval myobj.childobj.which=true Then you can also make pure arrays with this kind of notation: $ eval arr=[1, two, myobj, 4, false] Okay, writing all of these eval's seems pretty tedious, no? How about running the command: $ evalon ...in order to make the initial eval implicit. And the commands will look like this: myobituary = Goodbye cruel world You can exit from this mode just by pressing ctrl+c, or simply by typing a period into the prompt and pressing enter. My motivation for all of the above is simply to allow for easy typed data binding between remote machines, whether the machines are clients or servers. That is, you can define a data structure in your browser, and then have it unambiguously persisted on the serverside, or even in other clientside desktops. I so far have done some work in terms of keeping these JSON objects on the server as python dict types, and then being able to remotely manipulate these objects via xhr POST requests. This will allow for the rapid development of application specific data structures within the browser, and then deploying these same structures with just a couple of key strokes from the browser's own terminal. Give it a try! On Wednesday, January 22, 2014 8:28:16 AM UTC-5, Dennis Kane wrote: It has been kind of an obsession for me to create the kind of end-user experience that will really allow node to start actually being put to use. I've spent pretty much an entire year of full time coding getting this thing ready for prime time. The only caveat is that you need a Chrome browser, as it crucially depends on the filesystem API. I won't get into the details of how to user it. For now, just go there and start clicking around. As people show interest, I'll start giving instructions. Where is there? HERE -- http://urdesk.net urdesk means: yoUR DESK and Uniform Resource DESK. -- -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups nodejs group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[nodejs] Re: A decent client for a node backend...
, there are Socket and Message classes that respectively allow for realtime messaging and email-like messaging. You can create a Socket like this: $ makesocket socket_name num_minutes This will create a Socket object that has a token that allows users to push realtime messages to other users. socket_name can be anything you want, and other users will need to know it in order to contact you. num_minutes can be aything up to 24 hour's worth of minutes. If the socket has been successfully created, a popup box should alert you. You can then test it out with the command: $ ping self But before I continue, let me just advise you to go to File-Create persistent session while in the Terminal. This allows you to save the command-line history (so that you can use up/down arrows to use commands from earlier sessions) and it also saves an ENV object that attaches to the terminal window (I will get into ENV some other time). A persistent session just means that an icon will be created on the desktop that will allow you to reload all of that state. You can run the command: $ sys To see some of the system-level values that are held internally in ENV. After successfully running makesocket, you should see a bunch of key/value pairs that the terminal app uses in order do all of the socket creation stuff. Back to ping. If everything is going okay, you should see a ping delay of something around 500 ms or so. But in order to ping someone else, you will need to run the command $ ping username socket_name This will let you know that the lines of communication are open. If for some reason there is a problem with your connection, the ping command will timeout after 5000 ms. Now, about email-like messaging... At the moment, the easiest way to send a message is by opening TextEdit (in the Applications folder) and then hitting ctrl+alt+shift+m in order to toggle messaging mode. My username is Dennis, so you should be able to easily figure out how to send me a message (ie, you just need to type Dennis in the 'To' field in order to address it to me.) In order to retrieve meta-information about the messages that have been sent to you, just run: $ getmessages The response will be the number of new messages that are available to view. In order to read individual messages, you just need to run: $ listmessages ...which will automatically put you into select mode. Now you can move the cursor around the screen. To view a message, just move the cursor onto the appropriate line and press enter. This should pop up a TextEdit window with the message inside of it. You can then respond to the message by hitting ctrl+alt+shift+m, and all of the necessary fields should be automatically filled in. (You can always toggle the terminal's select mode with ctrl+alt+shift+s. You will need to do this after running listmessages in order to get back to the normal CLI mode.) To try this out, just send a message to Dennis that I can then respond to. Okay, I wrote this entire post in Nanim, and I have to say it was quite a pleasing experience :-) (I'll teach you guys how to really put it to use sometime later.) On Wednesday, January 22, 2014 8:28:16 AM UTC-5, Dennis Kane wrote: It has been kind of an obsession for me to create the kind of end-user experience that will really allow node to start actually being put to use. I've spent pretty much an entire year of full time coding getting this thing ready for prime time. The only caveat is that you need a Chrome browser, as it crucially depends on the filesystem API. I won't get into the details of how to user it. For now, just go there and start clicking around. As people show interest, I'll start giving instructions. Where is there? HERE -- http://urdesk.net urdesk means: yoUR DESK and Uniform Resource DESK. -- -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups nodejs group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: [nodejs] A decent client for a node backend...
On Wednesday, January 22, 2014 2:41:17 PM UTC-5, Kevin Ingwersen wrote: This thing, is AWESOME :D I used to enjoy eyeOS…but now it has turned into, what i call it, „Businessware“. It used to be a nice open source thing, but now thanks to th virtualization and the like, it has grown into…something far away from consumers, as i feel it. I haven't seen anything in the wild that approaches this. And for me, anything not in the wild just doesn't even exist. This here however, is much more different, but an aproach that I like: A simple desktop, with a simple UI. Okay - its very Mac-ish, but I like that honestly. I Haha, it is meant to be a shameless clone of the OS X GUI. Before I put that Chrome-with-a-bite-mark logo in the top left, I actually had the Apple logo. My favorite is the terminal, that actually knows ^c :) And since it knows that, let me guess it uses something like termlib or termjs? - Because then, i guess it could run things like ssh or top too. Very cool! I made a conscious decision to not really use any kind of frameworks or huge libraries. I developed my own canvas based implementation of Linux/Unix/*nix libcurses in pure JS, from the ground up. Trying doing: $ sleep 5000; echo blah blah blah ... and then hit ctrl+c after a couple seconds to verify that it really works. (The number represents milliseconds to sleep.) At least I am totally interested in that, as it would make teamworking much easier - instead of needing to „abuse“ github repos o-o; But one question: How did you make this well done OS X menu bar? I didnt check the page source yet, but it is well done. Ahh, I knew I would have to sit down and take as much time as necessary in order to get that right. You can check out magnification by clicking on the desktop and going to System-Settings, and then clicking the Dock tab. Try moving icons from the Applications folder onto the Dock. Make the dock really small, and the maginification level really big in order to see something cool! Just that the menu doesnt close if you click te title again. Not sure quite what you mean, but I can assure you this thing is FAR from being bug-free :) But other than that - great :) Cool... thx for the feedback! Am Mi. Jan. 22 2014 14:28:16 schrieb Dennis Kane: It has been kind of an obsession for me to create the kind of end-user experience that will really allow node to start actually being put to use. I've spent pretty much an entire year of full time coding getting this thing ready for prime time. The only caveat is that you need a Chrome browser, as it crucially depends on the filesystem API. I won't get into the details of how to user it. For now, just go there and start clicking around. As people show interest, I'll start giving instructions. Where is there? HERE -- http://urdesk.net urdesk means: yoUR DESK and Uniform Resource DESK. -- -- -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups nodejs group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[nodejs] A decent client for a node backend...
It has been kind of an obsession for me to create the kind of end-user experience that will really allow node to start actually being put to use. I've spent pretty much an entire year of full time coding getting this thing ready for prime time. The only caveat is that you need a Chrome browser, as it crucially depends on the filesystem API. I won't get into the details of how to user it. For now, just go there and start clicking around. As people show interest, I'll start giving instructions. Where is there? HERE -- http://urdesk.net urdesk means: yoUR DESK and Uniform Resource DESK. -- -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups nodejs group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[nodejs] Re: Simple chat-room example?
I've recently been hip deep working on a chatroom on my site @ http://luvluvluv.info. I wouldn't call it simple, but I do use socket.io and I can testify it is da bomb. My site is supposed to be an in-browser OSX kind of thing. It's all javascript... client and server. No markup, no css, just one big blob of a script file (well, two if you count script src=/socket.io/socket.io.js!) It's kinda hard to explain... you just need to see it (with a Chrome browser, of course). On Friday, January 4, 2013 6:38:17 PM UTC-5, Josh Santangelo wrote: I'm trying to build a simple server where multiple clients connect over TCP, and any message from a client is relayed to all the others. This isn't going to be used for a chat room, but it's basically the same idea. I tried building this with socket.io but got stuck pretty quickly: var io = require('socket.io').listen(81); console.log('foo'); io.sockets.on('connect', function (socket) { console.log('connected...'); socket.on('disconnect', function () { console.log('disconnected'); }); }); I see foo trace out, and on the client side it looks like I'm connected, but connected and disconnected never trace out, so I'm guessing those event handlers aren't working for some reason. I'm not married to socket.io, and actually using fewer modules would be better, but I'm surprised I couldn't find a code sample for this use case since it sounds like it's a pretty common node.js usage. Obviously this is my first time using node.js! Any pointers would be very helpful. thanks, -josh -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: What Editor do you use?
I am using a JS implementation of an Unix style ncurses-like editor (using canvas) on my site http://luvluvluv.info that I call archiTex. I wanted it to incorporate my favorite parts of nano and vim. I like nano because of its sheer simplicity, and I like vim for all the fancy functionality. I don't use it for too much at the moment, because all my my time has recently been spent in development. But it is pretty rich in text selection/ file manipulation department. I'm thinking about doing some JS color coding using JSLint sometime in the future (if I'm bored enough). But I'm really interested in being able to construct arbitrarily structured tabular text files that can be easily used for runtime, in-browser data binding. Those are some cool netbeans! On Monday, December 31, 2012 10:07:23 AM UTC-5, Rodrigo Fonseca wrote: I'm trying to use netbeans, but when i try to put a ejs file, the netbeans doesn't recognize it, so i'm using textMate, but i really i want to use the netbeans. I'm on Mac, there is any other editor? -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] One JS interface to rule them all?
I am writing this in a canvas-based, curses-style text editor that I have incorporated into my site at http://luvluvluv.info. But more about that later... I started working on the current incarnation of my site just over 3 months ago... my challenge was to develop the best possible JavaScript Web interface, so I chose to use OSX as my model. Ever since I learned about node.js and got bitten by the JavaScript bug, I have wanted to see how far I could push the boundaries of web programming. I can honestly say at this point: pretty damn far, LOL! I finished all of the major icon and window handling work quite a while ago, and I have been recently working on window tiling, the above-mentioned text editor, and now, a chat application. I want to use this site as something that can do, well, anything really. And to be able to do anything, you really do need a text editor that is up to the task. The editor is something of a combination between my favorite aspects of nano and vim. I like nano because there are no weird major modes to trip you up. If you press a key expecting a letter to show up at the cursor, you will always get what you expect. But at the same time, I do enjoy a lot of the functionality of vim. I have put a lot of effort into allowing a lot of different ways to select blocks of text and move them around the page, as well as shifting and trimming/cutting/padding the entire file itself (or portions thereof). I wanted to be able to easily create column-based text documents that could be used for things like push-button database loading (table creation, etc) as well as even doing run time data binding from within the text editor itself (to use it as a kind of in-browser database solution). I even added a command mode that allows users to input arbitrary commands on the status line, so that it can double as a simple command shell. At the moment, there are only a few commands related to editing, but there is no reason to not extend it to more interesting functions :) It wasn't until about 3 months into the programming effort that I even start to *think* about the server side. I wanted to have a tight little chat window that could put node to good use. The chat app is currently at a very basic level, but I want to be able to extend it to allow users to construct natural language queries to submit to the server (I have done quite a bit of NatLang programming in the past, and I'm looking forward to integrating some of my old stuff onto the current site.) There is really so much possibility when using this thing as a development environment. It will allow a new kind of web programming that abstracts away the horrible DOM API very nicely. Here are some of the kinds of applications that I am interested in prototyping/developing. 1) Educational software: this will give educators the ability to quickly develop online lecture presentation material, as well as allowing for the ability to administer and monitor web-based test taking. 2) Government agency web interfaces: for any agency that is concerned primarily with getting its users to navigate to a particular resource, interfaces like this can be very valuable. The web interfaces of most governmental sites leave much to be desired, haha :) 3) Businesses: everything from online customer support to order entry screens to inventory tracking can be greatly facilitated with this technology. Well, this letter has honestly been my first real use of this cool little text editor (I call it archiTex), and I have to say that I am pretty satisfied with it. Hopefully some of you out there can give it a shot and tell me what you think. There are pretty detailed instructions on the site (just click on the Help icon on the dock at the bottom of the page). And I almost forgot to mention: I only develop for Google Chrome, so I highly recommend that you use that. Safari should be pretty much the same for most uses, and Firefox might work, but I don't really care too much if it does. I could not care less if the site causes IE to crash and burn, LOL. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Dr. Strangecode, or: How I Learned to Stop Worrying and Love the Web
A couple months ago, I started on a project to make a purely JavaScript, in-browser version of Mac OS X. This is my third attempt at creating this kind of thing, and hopefully, the third time is the charm! You can find it at http://luvluvluv.info. For obvious reasons, I am primarily interested in developing for Google Chrome, but Safari should also work pretty well, and Firefox seemed to do okay (when I checked it last). Opera didn't fare so well, and I couldn't care less about IE! Anyway, I do all my hardcore testing on current/stable Chrome, so please use it when you check out the site. When the site loads, you should be faced with a familiar interface, complete with a semi-functional dock at the bottom. The menubar on top is currently pretty useless because I've really been focusing on getting all the low level icon/window handling mechanics working. But now that all of that machinery seems to be getting worked out pretty well, I will be able to start focusing on these higher level kinds of things. I guess the main philosophical point of this kind of site is simply that web interfaces can actually be very user friendly and functional if web developers would actually will them to be so. As it currently stands, we are still stuck in the same early-to-mid-90's model of one-to-one mappings between URLs and pages of content. By the mid-2000's, of course, AJAX came into being, but this technique has only been put towards fairly trivial use cases. Now that JavaScript engines are getting blazingly fast and our in-browser API's are becoming so robust (multimedia, local file systems, etc), there is only upside when it comes to web development. However, the problem still remains as far as how all of the new fangled web apps are going to be discovered and launched by end users. Are they going to keep relying upon doing text searches and clicking on ugly blue hyperlinks? Not if I have anything to do with it! My site currently has no content on it except for a couple of iframed html documents. That is, there is, as of now, no real communication between luvluvluv.info and the outside world. My sights have so far been set purely on the client side. But now I will be able to start thinking about how to, for example, do dynamic loading of Javascript applications into the site. Say you subscribe to a certain web app developer channel. You know this developer does really good work and you want to see everything he/she/it does as soon as you can. So... you keep this kind of website always on, with a specific folder that can have new icons suddenly appear in it. Mind you, nothing's been downloaded except an image, and maybe a small html fragment with some embedded JavaScript. But when you double click on it, the full application will automatically be loaded, and you are ready to rock! The previous scenario is just a small taste of what is possible with this new kind of paradigm. The fact that Chrome automatically sandboxes everything means that everyone can have many safe and cheap operating systems with which to experiment and explore. Or, you can make break out of the sandbox by running a local node server and sending read/write requests for local resources over Websockets. You can even have your browser as an endpoint for remote http requests (or actually any kind of Websocket request) by using an outward facing node server as a proxy/router! And we haven't even start talking about Native Client yet. I haven't really even researched that yet, but once this thing starts to catch on, you can bet there is going to be a real bum rush of people looking through all of their legacy C/C++ code to see if it can be webified fairly painlessly. I also have a real love for Natural Language processing, which is something that I want to start embedding into the site pretty soon. But Natural Language is really more of a dream than anything else. I feel that this kind of website will go a long way towards enabling the kind of creative developer culture that will allow us to start turning the dream into a reality. Whoever wants to help me out is welcome, though I don't plan on giving this any kind of liberal license (like GPL or BSD) for the forseeable future. I guess I will just start working on some kind of interface that will let developers use it as a library. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Evil OS X... the perfect client to a node server!
Why do you want the code so bad? It's not like there's any kind of fancy algorithms at work. There are many many open source windowing packages out there. It's not exactly rocket science, this. It's all been done many times before. The only difference is that this one is *my* baby! Besides, you are welcome to all the code of my desktop prototype on my site at luvluvluv.info... it's just sitting there on the server for the taking. I am mainly using this thing as blackmail to get people to be interested in being my friend. I want to do some real world community building, and something like this will go a long way to get a cooperative business up and running. Furthermore... you do realize that asking another programmer to just show me your code is exactly the same as asking a girl to just show me your breasts, right? I mean, I have nothing against it in principle, but, my god... I hardly know ye!!! My lastest work includes that rubber-band selection feature as well as dropping icons directly onto folder icons (with that open folder hover trick). I have also included some basic image file support. Latest video here: http://www.youtube.com/watch?v=jL5r0b7WWvU On Friday, October 5, 2012 5:56:26 PM UTC-4, sotonin wrote: Code post it else Zzzz On Fri, Oct 5, 2012 at 4:37 PM, Dennis Kane dka...@gmail.comjavascript: wrote: See the newest features here-- http://www.youtube.com/watch?v=pF_2DwueGLM The current version of the program now includes drag and drop functionality of text files from the native desktop straight into the browser desktop or (any of the subfolders). The difference between my drag and drop and all the HTML5 demos that you see on the web is that the dropped files immediately become icons that are integrated into the program. I will soon start working on getting multimedia icons/files working, so you'll be able to drop those directly in too. Then I will probably do a very basic kind of image editing demo that will allow you to change individual pixels or some such nonsense. But I don't want to get bogged down in the details of any particular application, because I always want to stay focused on the big picture of creating a totally powerful and intuitive way to organize our online lives. Anyway, I know I am quite a controversial figure here, but there should be no controversy that this thing is just about ready for prime time. I really do need to start getting interested people on board who would like to help me push the web forward. The basic mission statement for the venture will basically be that the old web (HTML4/version 1.0) is dead and gone. If anyone calls in search of help on their Flintstone era html documents with all of their a href and div tags laying about, we'll just point them in an entirely new direction. If they still insist on doing things the old way, we'll just hang up on them… This thing is all about the future! We can easily develop libraries of high-level interface widgets that people just need to attach event listeners to. There will be no angle brackets in sight! handcodedhtmlmarkup/is/so/last/millenium! Come one, come all, for the thrill of your lives :) On Tuesday, September 25, 2012 7:36:37 PM UTC-4, Dennis Kane wrote: I was thinking of just responding to this old threadhttps://groups.google.com/forum/?fromgroups=#!topic/nodejs/bEhSbsm24Y4, in which I talk about the browser based Desktop that I've been working on, but the new thing I've been doing for the past week is so superior that I thought it deserved a completely new thead. By the way, I know this forum is all about server side Javascript, but there is not really any serious place one can go on the web that talks about the client side. Besides, with socket.io websockets... I don't really make much of a distinction between client and server anymore. I just know that there's no reason to do a document.getElementById() call in node :) This new thing is a totally shocking clone of OS X. I knew I was going to have to start over from the ground up, because my previous code base was so sh*tty, haha! I have really been concentrating on getting a nice, tight little API that developers will positively drool over. I don't want to make this thing publicly available for many reasons... but you can check out a youtube vid (http://www.youtube.com/watch?**v=Tq_W19QokXkhttp://www.youtube.com/watch?v=Tq_W19QokXk) that shows it in action, and I still have my same old crappy prototype online at http://luvluvluv.info. Well, hopefully this is proof that I am able to do some cool stuff, and hopefully summa yous will want to start being my friend now, LOL!!! And get this... the current, uncompressed js file size is only 54kb! -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received
[nodejs] Re: Evil OS X... the perfect client to a node server!
See the newest features here-- http://www.youtube.com/watch?v=pF_2DwueGLM The current version of the program now includes drag and drop functionality of text files from the native desktop straight into the browser desktop or (any of the subfolders). The difference between my drag and drop and all the HTML5 demos that you see on the web is that the dropped files immediately become icons that are integrated into the program. I will soon start working on getting multimedia icons/files working, so you'll be able to drop those directly in too. Then I will probably do a very basic kind of image editing demo that will allow you to change individual pixels or some such nonsense. But I don't want to get bogged down in the details of any particular application, because I always want to stay focused on the big picture of creating a totally powerful and intuitive way to organize our online lives. Anyway, I know I am quite a controversial figure here, but there should be no controversy that this thing is just about ready for prime time. I really do need to start getting interested people on board who would like to help me push the web forward. The basic mission statement for the venture will basically be that the old web (HTML4/version 1.0) is dead and gone. If anyone calls in search of help on their Flintstone era html documents with all of their a href and div tags laying about, we'll just point them in an entirely new direction. If they still insist on doing things the old way, we'll just hang up on them… This thing is all about the future! We can easily develop libraries of high-level interface widgets that people just need to attach event listeners to. There will be no angle brackets in sight! handcodedhtmlmarkup/is/so/last/millenium! Come one, come all, for the thrill of your lives :) On Tuesday, September 25, 2012 7:36:37 PM UTC-4, Dennis Kane wrote: I was thinking of just responding to this old threadhttps://groups.google.com/forum/?fromgroups=#!topic/nodejs/bEhSbsm24Y4, in which I talk about the browser based Desktop that I've been working on, but the new thing I've been doing for the past week is so superior that I thought it deserved a completely new thead. By the way, I know this forum is all about server side Javascript, but there is not really any serious place one can go on the web that talks about the client side. Besides, with socket.io websockets... I don't really make much of a distinction between client and server anymore. I just know that there's no reason to do a document.getElementById() call in node :) This new thing is a totally shocking clone of OS X. I knew I was going to have to start over from the ground up, because my previous code base was so sh*tty, haha! I have really been concentrating on getting a nice, tight little API that developers will positively drool over. I don't want to make this thing publicly available for many reasons... but you can check out a youtube vid (http://www.youtube.com/watch?v=Tq_W19QokXk) that shows it in action, and I still have my same old crappy prototype online at http://luvluvluv.info. Well, hopefully this is proof that I am able to do some cool stuff, and hopefully summa yous will want to start being my friend now, LOL!!! And get this... the current, uncompressed js file size is only 54kb! -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: Evil OS X... the perfect client to a node server!
I hope you are all aware that I fully expect the reception that I have gotten here. The accusations of mental illness and trollishness are fully expected. The only problem is that I have a real life outside of professional programming circles. I know what it takes to make real things happen in this world. The fact is that it requires much, much more that mere programming talent to have any kind of impact. The importance of fact that I put my physical ass on the line in the *real world* in order to make profound connections with *real people* is something that the vast majority of you will never be able to comprehend, which is extremely sad. I mean, I am here in the deep south, for chrissake, where there are so many hillbillies with shotguns who are constantly on the lookout for guys like me to sneer at and intimidate. So please, be my guest and continue to ridicule in those pithy, sardonic ways that have been perfected over the years on message forums like this. I am beholden to no one, and it will remain like that. But please understand that people are falling head over heels for me on a mass level here in the *real world*. It is just a matter of time before I am able to command their attention and educate them about the Web and about computing in general... so that they will eventually need precisely zero of the services that any of you are offering. Cheers! -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: Evil OS X... the perfect client to a node server!
Respectfully, I am not the typical poster here. I am a revolutionary and a trailblazer, and everything I do is geared for maximum effect. I have precisely zero interest in working for paychecks or even creating something for the purpose of selling out to a corporation. I am interested in starting a truly socialist movement... one whose participants understand that like it or not, we are constantly moving into a post-capitalist future. This ultimately just means that the historical corporate/ad buying business model will slowly give way to models that have the notion of social capital at their core. For any arbitrarily complicated web domain that does not live and die by the ad revenue sword -- for example a university or a municipality -- there is the ever present problem of getting naive users to navigate the domain. Today's websites typically do not use much logic when organizing their resources. It all comes down to physical page space. So if one page becomes too crowded with content, then another page must be created. Then the problem reduces to how to develop a menu of links that allows to user to navigate to the appropriate resource. At the moment, there are no standards as to how a site should organize its content. Everyone has to roll their own navigation solution, and when happening upon a new domain for the first time, a user has to spend an arbitrary amount of time parsing the visual layout, in order to create a site tree in their minds. For everyone who says that the desktop environment is simply a metaphor, I would have to disagree. Our modern desktop GUI's are the result of a evolutionary process... a process that has resulted in the most intuitive and powerful of navigation systems. All that I am saying is that we stop thinking of the client-side as a mere afterthought. For anyone who wants to devote their efforts towards codifying a standard client-side browser web-app interface, there will be countless service providers who will breathe a sigh of relief that they will no longer be forced to worry about layout and navigation. And yes, I know there have been many many efforts in the past that have tried to bring the desktop experience into the browser. The first obvious problem is that Javascript has only recently become performant enough to allow there to be pretty much zero difference from the native OS in terms of icon/window handling. Next, all of those other efforts were pre-HTML5, which pretty much forced the applications to rely upon a back end for the purpose of saving state. But now, there are so many different ways to save to the client, it actually makes me blush! And last but not least, we are really talking about doing a kind radical paradigm inversion that conservative corporate interests just have no interest in. The politics of the modern WWW is such that most websites are completely in service of the corporate bottom line. And since corporations have historically been all about buying up ad space/ad time in whatever medium it can (print, radio, TV...), the Web has inevitably found itself as having this exact same kind of role. So there really is not allowed to be very much creativity on the Web, if this creativity would only confuse/aggravate the corporate bosses who are just trying to hawk their wares to as many naive consumers as possible. The result of all of this political mumbo-jumbo is that the lowly web developer is forced to think of him/herself as a mere layout designer... such that the given layout gives sufficient prominence to whatever ad space it is trying to sell. So the Web becomes nothing but a series of static magazine-like page layouts. The only difference being that Web pages have magic hyperlinks that quickly move us between arbitrary pages. In this case, the programming language of the Web (Javascript) is completely in service of the thing (the DOM) that allows for the representation of the layouts. The paradigm inversion ultimately comes down to making the layout representations completely in service of the programming language. The popular view is that Javascript exists primarily to allow for popup menus and client-side form validation. This view holds that Javascript is fundamentally incapable of allowing for the kind of functionality that I have demonstrated. So anyone who tries to do what I am attempting must be fully aware of all of these issues, and must have the appropriate battle plan in place. Anyone who simply has the bright idea to start using Javascript in order to mimic desktop functionality is pretty much doomed to irrelevance if they are not able to mount a good enough challenge against the corporate interests of yore. Which brings me back to the original point I made on this post. In order to pull off this paradigm shift, I realize that I have to become a larger than life figure. I have to turn myself into a kind of heroic figure in the
[nodejs] Re: Evil OS X... the perfect client to a node server!
My most recent work can be seen here: http://www.youtube.com/watch?v=-NTjmy7PbD0 I have added functionality to the bottom dock, including a working Trashcan. I have still received precisely zero real interest in any of this I am really eager to get together with programmers who want to get something beautiful started! My theory is basically that the nature of the front-end experience crucially determines how much excitement the back-end administrators will have. At the moment, the web is filled with absolutely boring/unresponsive front-ends. So anyone who wants to work with me will really have a leg up in terms of offering the kind of user experience that will keep the back-enders on their toes (on their toes == gamefully employed ;) By the way, I am well aware that any business that comes out of this will not want to offer an exact replica of OS X as their front end. I am using OS X as the ultimate challenge to see how awesome I can make the end user experience. Once I can get this prototype working as well as possible, then I can start to think about how to make it even better than OS X! I am all ears in terms of what kinds of services can be offered up through this kind of interface... -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: Evil OS X... the perfect client to a node server!
Cool! When I scrolled down to the section called The Central Role of Language, I realized that the anti-mac concept was something I could work with. I am a believer in the concept of leveraging Javascript in order to devise a kind of higher level computing language that can deal very well in human concepts. Think of it as a kind of highly structured natural language, and we can start really getting on our way. The problem is that programmers and logically-minded people in general need to start getting creative with how they think about computers. When I scroll through this list on any given day, I am often quite disheartened by the utter lack of trying to think of Javascript at a higher level. There is often so much discussion concerning issues that are well on their way to becoming irrelevant anymore. Whether to fork off node or whether to make it threaded, for example. But node is really good enough for anything that can be reasonably thrown at it. I remember hearing Ryan talking about the fact that node can always be made to be faster, but that the real increase in speed occurred between the leap from the pre-node world to the post-node world. I think it's high time for many programmers to just take a little breather to think about where we can go next. I recommend really meditating on some of those Crockford youtube videos, and start thinking about what it really means that we have a blazing fast DOM-aware prototypal scripting language that uses first order functions. It's all pretty mind blowing when you really think about it. Developers are just so damn scared to actually *use* the language rather than just using some dumb library that forces you to think in a certain way about in-browser programming. My API is currently a little messy, but from the beginning, I wanted to focus on keeping it exceedingly simple and intuitive. There are function calls like make_desktop(), make_window(), and make_icon(). Kids will be able to type these into their browser consoles and see magic happen in front of their eyes. I'm talking about giving kids of the same kind of experience that us 30 or 40-somethings had when we tapped those BASIC programs from BYTE magazine into black screens with glowing green characters. In today's world, there is such a schism between the experiences of end users and developers. When I was in 5th grade, we had a programming class taught by our Math teacher. These kinds of things are extremely important to teach kids when their minds are eager to learn. So basically, the way that we think about what our computers are all about needs to start evolving, and it is really up to programmers to start programming in ways that are new/exciting/experimental (just like when we were kids!) rather than so mind numbingly dull. On Thursday, September 27, 2012 1:26:06 PM UTC-4, P. Douglas Reeder wrote: One mashup to rule them all? That's a tall order. If you're looking to supplant the WIMP paradigm, you should be familiar with The Anti-Mac Interface (really a post-Macintosh UI): http://www.useit.com/papers/anti-mac.html -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: Evil OS X... the perfect client to a node server!
Well, I think that we can all agree that the idea of a purely portable desktop environment is a highly compelling one, and that there are many ways to approach the problem. There is, of course, the VNC approach, wherein all of our actions are transmitted over the wire in order to control a remote computer. The problem of having to wait on all of the network delays obviously leaves much to be desired. Another way of approaching it is to think of a desktop as a purely logical construct that can be represented fairly well by, for example, a JSON object. This will allow us to abstract way the form of the desktop from its content fairly well. (What I mean by the form is simply the locations of icons and the locations + sizes of windows. By content, I am talking about the actual data in the files that the icons represent.) All of the form related stuff can be transmitted by JSON blazingly fast, and the local user will be able to control his/her in-browser desktop without delay. But the content may very well still be sitting on the remote server, so double clicking on an icon might result in an indeterminate delay before the content is fully loaded, depending on file size and network conditions. But now we can cache the content, and we won't have to suffer the same delay again... as long as the cache is still intact, of course. But even beyond the idea of desktop portability, there remains to crucial problem of how to locate, retrieve, and render the various bits of information that are scattered all over the WWW. In my opinion, all of the past attempts at developing web based desktop environments have failed because they were, at their hearts, focused primarily on replicating native desktop functionality by any means necessary (eg, Flash based desktops) rather than on making actual, functioning websites more responsive and comprehensible. All of those past efforts amounted to nothing but curiosities because we just don't need our web browsers as gateways to hackish, barely responsive desktop environments. We will always need our web browsers as gateways to the wild, wonderful, weird place that is the WWW! As it currently stands, it is next to impossible to reason with the content that is contained on remote machines. This is because the URL schemes that we use are fairly arbitrary strings of text. That is, in order to locate a remote resource, we have to get our grubby little hands on some string that looks something like http://www.somedumbdomain.com/stupidpage?crazy_param=fluxdumb_arg=spamweird_sid=Gjsk3MKs5hsgf6jeO7Iwjn8YUKs;, and on and on it goes. To the end user, these are incomprehensible, indecipherible messes. They only make sense to the backend URL parsing algorithms. And even when we are able to locate a remote resource, due to the fact that the crucial information is usually buried inside of a messy HTML document, we are often no wiser because of our inability to sift through the layout markup in order to finally get to the data that we seek. So in order to inject some sanity into our online experiences, we have to start thinking about how to allow users to locate the various bits of content that they are after in much more intuitive ways. And you can't get more intuitive that icons sitting on desktops and in folders! In this case, a user is no longer forced to remember a random string of text known as a URL... all he/she has to do is know what the icon looks like, and in which folder it might be located. And power users will be able to reason about remote content using familiar Unix path notation (/path/to/the/file). They will be able to trivially write scripts that perform various actions depending on whatever state the remote content is in (eg current weather or traffic conditions). No longer will developers be forced to construct convoluted GET requests in order to retrieve some little bit of information. There can simply be a file named something like /home/dennis/weather.info that we can open up by double-clicking or via script... and now we are enlightened! I am simply trying to make our web browsing experiences better rather than making our desktop experiences worse. No one will ever get excited about offers of desktops that sit in browser windows. But the idea of having the world at our fingertips from within the context of a familiar, intuitive interface is something entirely new and exciting! And being able to reason about the world via programs that are trivial to write is something that should make all of us programmers positively delirious!! So the trick now is to get web developers to stop obsessing so much over serving up full fledged HTML documents, and to start thinking about how to offer services that deliver compact, essential nuggets of JSON data that can be delivered into these kinds of in-browser GUIs at blazingly fast speeds. On Tuesday, September 25, 2012 7:36:37 PM UTC-4, Dennis
Re: [nodejs] Evil OS X... the perfect client to a node server!
Have I ever seen a bunch of google links that talk a lot of smack, but that don't really deliver anything of substance? Why, yes I have, hahaha :D! Seriously, though, I know there have been quite a few attempts over the years to do things like this in our browsers, but the technology has only caught up to the dreams over the last couple years. I think it's really taken a massive undertaking like the V8 project to allow things like this to become truly viable. Anyway, the entire concept of a clean, intuitive browser based operating system is something that traditional online content providers (based on link clicking ad revenue) should be positively petrified of. The entire business model of the current Web is that there be an incomprehensible array of sites, each with incomprehensible interfaces, that reduces each one of us to rabid, slobbering link clickers. From what I've seen of the recent crop of Google IO videos on youtube, there are some real efforts to try to inject some sanity in our online experiences. But Google is not bigger than the entire universe of web developers who are each beholden to the profit motives of the corporations that they work for. We know that the Web is an ugly mess. The entire problem at hand is how to go about locating remote resources. Currently, we type text strings into input boxes, and are met with thousands and millions of choices. And even when we do find the best site to help us out, there is often very little help in deciphering how to navigate the thing. But we all know how to navigate our own native operating systems, because we collectively have a decades long history of doing this. There is just something about windows, icons, and folders that just makes sense to us in a very basic way. Now, with this browser based OS concept in full throttle, we can start thinking about organizing the remote resouces that are most important to us in highly comprehensible ways. Then, once the organization makes sense, we can actually start to reason about them, and then develop truly semantic interfaces (APIs) into their content. I mean, all of Google's talk of tomorrow's cutting edge web applications is great and all, but if the problem of locating them persists, then it is really all for naught. We really need to begin thinking about the Web at a higher level than just one-to-one mappings between HTTP URLs and pages of HTML content. On Tuesday, September 25, 2012 8:17:14 PM UTC-4, Rick Waldron wrote: Dennis, Have you ever seen this? https://www.google.com/search?q=webos+erik+arvidsson -Rick On Tuesday, September 25, 2012 at 7:36 PM, Dennis Kane wrote: I was thinking of just responding to this old threadhttps://groups.google.com/forum/?fromgroups=#!topic/nodejs/bEhSbsm24Y4, in which I talk about the browser based Desktop that I've been working on, but the new thing I've been doing for the past week is so superior that I thought it deserved a completely new thead. By the way, I know this forum is all about server side Javascript, but there is not really any serious place one can go on the web that talks about the client side. Besides, with socket.io websockets... I don't really make much of a distinction between client and server anymore. I just know that there's no reason to do a document.getElementById() call in node :) This new thing is a totally shocking clone of OS X. I knew I was going to have to start over from the ground up, because my previous code base was so sh*tty, haha! I have really been concentrating on getting a nice, tight little API that developers will positively drool over. I don't want to make this thing publicly available for many reasons... but you can check out a youtube vid (http://www.youtube.com/watch?v=Tq_W19QokXk) that shows it in action, and I still have my same old crappy prototype online at http://luvluvluv.info. Well, hopefully this is proof that I am able to do some cool stuff, and hopefully summa yous will want to start being my friend now, LOL!!! And get this... the current, uncompressed js file size is only 54kb! -- 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 javascript: To unsubscribe from this group, send email to nodejs+un...@googlegroups.com javascript: For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr
[nodejs] Evil OS X... the perfect client to a node server!
I was thinking of just responding to this old threadhttps://groups.google.com/forum/?fromgroups=#!topic/nodejs/bEhSbsm24Y4, in which I talk about the browser based Desktop that I've been working on, but the new thing I've been doing for the past week is so superior that I thought it deserved a completely new thead. By the way, I know this forum is all about server side Javascript, but there is not really any serious place one can go on the web that talks about the client side. Besides, with socket.io websockets... I don't really make much of a distinction between client and server anymore. I just know that there's no reason to do a document.getElementById() call in node :) This new thing is a totally shocking clone of OS X. I knew I was going to have to start over from the ground up, because my previous code base was so sh*tty, haha! I have really been concentrating on getting a nice, tight little API that developers will positively drool over. I don't want to make this thing publicly available for many reasons... but you can check out a youtube vid (http://www.youtube.com/watch?v=Tq_W19QokXk) that shows it in action, and I still have my same old crappy prototype online at http://luvluvluv.info. Well, hopefully this is proof that I am able to do some cool stuff, and hopefully summa yous will want to start being my friend now, LOL!!! And get this... the current, uncompressed js file size is only 54kb! -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: Why node + chrome rules the world...
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... On Saturday, September 1, 2012 8:11:54 AM UTC-4, Dennis Kane wrote: 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. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Why node + chrome rules the world...
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!! On Monday, September 10, 2012 4:47:43 AM UTC-4, Daniel Sousa wrote: 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. On Fri, Sep 7, 2012 at 3:43 PM, Dennis Kane dka...@gmail.comjavascript: wrote: 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! On Friday, September 7, 2012 9:35:53 AM UTC-4, Karl Tiedt wrote: 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 -- 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.comjavascript: To unsubscribe from this group, send email to nodejs+un...@googlegroups.com javascript: For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Why node + chrome rules the world...
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. On Friday, September 7, 2012 1:30:55 AM UTC-4, Karl Tiedt wrote: Have you seen the Lucid Desktop project? http://dojofoundation.org/projects/lucid-desktop -Karl Tiedt On Thu, Sep 6, 2012 at 1:13 PM, Dennis Kane dka...@gmail.comjavascript: 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 -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Why node + chrome rules the world...
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! On Friday, September 7, 2012 5:22:03 AM UTC-4, Jorge wrote: 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. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Why node + chrome rules the world...
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! On Friday, September 7, 2012 9:35:53 AM UTC-4, Karl Tiedt wrote: 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 -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Why node + chrome rules the world...
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. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: Your thoughts wanted on a node AI project
Jesus, dude, thanks for the psychoanalysis. Anyone reading this thread can see what turned into a slow moving train wreck. I posted my thing and some people said: Cool! In the first post, I said something about eventually doing an open source thing. Someone said: I want the source! I said, Haha you probably don't really want it. People started getting serious about the holy node ecosystem and chastising me for my tone. I started getting bitchy cause I found myself having to defend myself about my politics (or rather my lack of caring) rather than having fun with the issues that I really enjoy. Haha whatevs... Anyway Isaac, tl;dr. Yes I'm trying to do something big. Big things are the only ones that interest me. I'm trying to change the world, sorry. I have psychological issues, so what? But I can program, dammit! Anyone that wants to learn and help out is welcome. You have my site and my email is on there. I'm assuming that no one here is interested in NatLang issues or how to implement them in Javascript?! On Apr 28, 9:31 am, Isaac Schlueter i...@izs.me wrote: On Thu, Apr 26, 2012 at 10:53, Dennis Kane dkan...@gmail.com wrote: Let's all remember what open source is really all about. A program is called closed source if it is distributed in binary format only. The open source movement makes the demand that one cannot distribute a binary program using, for example, GPL'ed code without also making the source code available. But a server side process has nothing to do with any of this! The GPL and BSD/MIT licenses are very different. What you describe is copyleft. There's also the LGPL, which *may* be linked against or depended upon by non-GPL programs, but may *not* be extended or used to create non-GPL derivative works. And there's AGPL, which states that you may not use the software in network programs unless all those who use the software over a network *also* have access to the source. Ie, it's like GPL, with a broader definition of distribution. The MIT and BSD licenses are much more liberal, and as far as I've ever seen, they're pretty much equivalent. They are not copyleft, and not viral. GPL is much less popular in the node community than MIT and BSD. The Apache license is similar in intent to MIT and BSD, but with additional language regarding copyrights an patents. All I'm saying is: saying the point of open source is like saying the goal of american politics. There are a lot of different conflicting goals, and groups, and ideologies. Lumping it all into a single bucket loses a lot of details. In fact, many in the Free Software movement would object to even being associated with the term Open Source at all, since to them, it's more about freedom to modify and extend than having access to code, which is viewed as merely a means to an end. I've already been told more than once to rethink/change my approach. Seriously? I mean, let's get serious here. The only time I get snarky is when people get pushy with their demands to just hand out something that has resulted from years of torment. This just is not any old program. It just isn't. Period. There's a pattern you're matching here, which I'm sure many of us have seen many times in software communities. I have a really awesome killer idea. This is going to change everything! No, you can't see it. But it's going to be amazing. I've put *so much* time and effort into it. I've been slaving away for years. If you come join me (which you will have to be very motivated, lucky, and exceptional for me to allow you to do), then untold riches will be yours to share! The pattern is: 1. Vague promises of paradigm shifting software of epic proportions. (The Noble Ambition) 2. Self-congratulatory claims of effort and sacrifice that went into its production. (The Quest) 3. A promise to share with a special few who are up to the challenge. 4. An resistance to sharing *any* relevant details. (When pressed, reacting with indignant objections regarding principles and propriety.) I've taken to think of this as the Genius Martyr syndrome. It doesn't always present with crippling insanity, but that is a common pathology. It isn't always a technical idea, either; sometimes it's a new way to handle governance in the group, or a revolutionary business plan (where they're refusing to take any investment), etc. It may be that there may come a time when some GM exhibits this pattern in a technical community, and does in fact have some awesome thing. Perhaps a few GMs have ideas which are actually worth more than the paper they refuse to print them on. If that time comes, if that idea shows up, and it's presented this way, I'll probably miss out on it. Why? Because in my years in software communities, 100% of the time that this pattern has presented (and it is sadly not rare at all), the result has been the same. A few people react
Re: [nodejs] Re: Your thoughts wanted on a node AI project
On Thursday, April 26, 2012 3:35:48 AM UTC-7, shawn wilson wrote: Per parsing language, you might want to look at what python's nltk and Java's gate (less familiar with the later) have done for inspiration Yeah, I saw the python nltk yesterday just to see what was currently out there. Despite the fact that I absolutely abhor the indentation enforcement of python (neither here nor there), that whole project is just more of the same everything and the kitchen sink mentality. There is so much in the way of graphical representation that has nothing to do with a program that just gets things right. That 's all I care about. As long as the parsing works very well (the logic of 'and', 'or', 'if', 'then', 'because', etc), then everything else will start falling into place. Just think of this as you would any c compiler or script interpreter. The compiler must be able to get the intended logic right. As long as that is the case, the user/programmer can do whatever the frick he or she wants as far as creating meaningful content. This thing is doing pretty damn good with the logic on some highly convoluted statements and sequences thereof. Forward thinking businesses will have to take note of this fact... they have no choice. Then we can all start getting together to determine how to develop the exact dictionaries and statement types that will fit their needs as well as possible. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Your thoughts wanted on a node AI project
On Wednesday, April 25, 2012 7:07:52 PM UTC-7, Isaac Schlueter wrote: The MIT license in node (as well as the MIT and BSD licenses in the vast majority of open source node programs) explicitly allows use for closed-source commercial applications. If Dennis wants to keep his source closed, then that's his prerogative. In fact, he can take all the modules we create, and use them in his closed-source proprietary thing, so long as he abides by the extremely liberal licenses that most of them use. If you think he's wrong about the value of open source, or its overblownness, refute it with data. (Or don't, and just go back to cranking out awesome open source software.) Let's all remember what open source is really all about. A program is called closed source if it is distributed in binary format only. The open source movement makes the demand that one cannot distribute a binary program using, for example, GPL'ed code without also making the source code available. But a server side process has nothing to do with any of this! I am not distributing the program... I am interested in running a service like Google (which will hopefully eventually overtake them... but don't tell anyone I said that). Is anyone seriously demanding Google to freely distribute all of their painstakingly developed search algorithms? Not likely! The basic fact is that this thing is the result of years and years of absolute psychological warfare between me and my computers. And given the fact that robust NatLang Processing (weak AI) is something of a holy grail for tech enthusiasts, the stakes in all of this are quite big. I am not saying that releasing the code for this won't ever happen. But I am saying that releasing code is a very major decision that should never be taken lightly. All I do know is that now is not the time. But I will talk about it. I won't want to give away too many of the technicals in an open forum, but I will give some of them away to people who I can trust. And in order to me to be able to trust someone fully, I have to feel that they actually have an interest in the problems surrounding NLP. The Net is absolutely littered with freely available NLP projects, code and all . They are just not interesting. But you know what is interesting? A site with a lone input box on a white background with a snazzy, colorful logo above it (sound familiar?) that just works as advertised. I want to get something like that on the site pretty soon. Now that I'm pretty well done with the hair-pulling aspects of my coding, I can start having fun with putting variety into the thing (giving it the wow factor). Different kinds of words, statements, sense checking, etc. This kind of stuff should not be very difficult for any competent programmer. That's what I really want to start getting on the same wavelength with people around here. Stop thinking that this thing has to be some kind of end-all-be-all killer app from the outset. I mean, there are so many things to be done. I want to be able to translate natural ways of referring to time points (last week, the day after tomorrow, etc) into their precise Unix timestamps. Not very difficult work, but it's something that really should start getting worked on. I really feel that this thing could give quite a few of you out there a comfortable living. This could open up totally new vistas of the tech sector. This has the potential of going places pretty quickly, and the earlier that people get in on it, the greater the potential for reward. Dennis, since you came here ostensibly trying to raise interest among other developers (and have been mostly successful, reading through the thread), I would suggest re-thinking your approach somewhat. I'm not talking about what's right or wrong, merely what's effective. Many people come to a project like Node.js because they feel strongly about open source software. If your goal is to recruit them, you should think about the effects that your words have. If you want to recruit developers who *aren't* passionate about open source software, then you're in the wrong place. I've already been told more than once to rethink/change my approach. Seriously? I mean, let's get serious here. The only time I get snarky is when people get pushy with their demands to just hand out something that has resulted from years of torment. This just is not any old program. It just isn't. Period. Again, I have to reiterate that there is a vast difference between the philosophy of open source as espoused by Eric Raymond, Richard Stallman and company and the reality of people actually opening up source code in order to actually *improve* it. Please someone break open the source for emacs right now and make it better. I dare you. My philosophical views are always changing. Conservative, liberal, whatever, blah blah. I'm just not dealing with any of it
Re: [nodejs] Re: Your thoughts wanted on a node AI project
On Thursday, April 26, 2012 10:57:26 AM UTC-7, Mark Hahn wrote: I guess the question everyone is thinking (or asking) is why are you here? I can understand the recruiting, but I can't think of any other reason. Which means: if I don't want to give away the entirety of my labors that I've been agonizing over for all these years, then I have no legitimate reason to post to this forum. I already said that I will talk about it. But if no one is interested in the coolness factor of the thing, then I guess there's nothing else for me to talk about. I can just move on to other places to find people who want to help me get something pretty awesome started. No worries. I'm just looking for friends who would like to work together. I can't force anyone to get interested. Oh yeah, there's always this reason: this thread has top ranking on google search node ai, and my site is now listed on the engines. Before I posted here, my site wasn't even on google! -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Your thoughts wanted on a node AI project
Was just saying it is, a tad. Maybe pointless was a bad word choice. Overblown is probably better. Don't think you can deny that without those other things, the source code of any non trivial program is quite a worthless commodity in and of itself. The entire node ecosystem, at the moment, is at the point where the programs are still fairly trivial, and so the value of source code is still relatively high. That state of affairs won't last forever. Anyway, I guess the larger point is that I feel my program has the potential to be quite profitable in the future. I still am fairly young and quite hungry. I would much rather be very close with a few business associates than just another anonymous user on github who everyone takes for granted. I have ambitions, and I won't apologize for that. On Wednesday, April 25, 2012 5:33:36 AM UTC-7, Matt Sergeant wrote: On Wed, Apr 25, 2012 at 1:03 AM, Dennis Kane wrote: I do find the whole open source movement a tad pointless. For me, the source code always takes a back seat to good API documentation, well commented header files, decent man pages, a good bug reporting/fixing system, etc. I think you're probably in the wrong place to make that kind of comment. The entire node ecosystem is built on open source. It's OK to be pragmatic and say there's a place for closed source too (I would agree), but don't call open source pointless. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Your thoughts wanted on a node AI project
Was just saying it is, a tad. Maybe pointless was a bad word choice. Overblown is probably better. Don't think you can deny that without those other things, the source code of any non trivial program is quite a worthless commodity in and of itself. The entire node ecosystem, at the moment, is at the point where the programs are still fairly trivial, and so the value of source code is still relatively high. That state of affairs won't last forever. Anyway, I guess the larger point is that I feel my program has the potential to be quite profitable in the future. I still am fairly young and quite hungry. I would much rather be very close with a few business associates than just another anonymous user on github who everyone takes for granted. I have ambitions, and I won't apologize for that. On Wednesday, April 25, 2012 5:33:36 AM UTC-7, Matt Sergeant wrote: On Wed, Apr 25, 2012 at 1:03 AM, Dennis Kane wrote: I do find the whole open source movement a tad pointless. For me, the source code always takes a back seat to good API documentation, well commented header files, decent man pages, a good bug reporting/fixing system, etc. I think you're probably in the wrong place to make that kind of comment. The entire node ecosystem is built on open source. It's OK to be pragmatic and say there's a place for closed source too (I would agree), but don't call open source pointless. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Your thoughts wanted on a node AI project
Was just saying it is, a tad. Maybe pointless was a bad word choice. Overblown is probably better. Don't think you can deny that without those other things, the source code of any non trivial program is quite a worthless commodity in and of itself. The entire node ecosystem, at the moment, is at the point where the programs are still fairly trivial, and so the value of source code is still relatively high. That state of affairs won't last forever. Anyway, I guess the larger point is that I feel my program has the potential to be quite profitable in the future. I still am fairly young and quite hungry. I would much rather be very close with a few business associates than just another anonymous user on github who everyone takes for granted. I have ambitions, and I won't apologize for that. On Wednesday, April 25, 2012 5:33:36 AM UTC-7, Matt Sergeant wrote: On Wed, Apr 25, 2012 at 1:03 AM, Dennis Kane wrote: I do find the whole open source movement a tad pointless. For me, the source code always takes a back seat to good API documentation, well commented header files, decent man pages, a good bug reporting/fixing system, etc. I think you're probably in the wrong place to make that kind of comment. The entire node ecosystem is built on open source. It's OK to be pragmatic and say there's a place for closed source too (I would agree), but don't call open source pointless. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Your thoughts wanted on a node AI project
Seems like you still have a long way to go to reach that. :D I don't think it should be too much longer before I can start making some sales calls based on the progress I've already made. Well, your long-time goal is to make a good program that can answer questions using some logic if necessary, right? Well, I think you'll have to make your program able to parse Wikipedia texts and so on for that. Maybe start with the simple english wikipedia ( http://simple.wikipedia.org/wiki/English_language )? Good luck. :P And before you can do that, you'll probably have to build in a dictionary backend. Nah, wikipedia is made for human consumption. As long as there is a good enough parser on the market, there will be plenty of people motivated enough to write compliant programs directly into it. I see this thing eventually taking a pretty good bite out of Wikipedia's market share. The way it'll work, for the forseeable future, I think, is that we will work heavily with corporate clients on what kinds of words and statements they would like their customers and employees to be directly executable. Trying to do everything for everyone all at once is simply a prescription for a major disaster. I see many clients supplying the dictionaries themselves. Oooh, and when all of that works, make it able to accept commands. :) Make me a sandwich Funny, but I think we're gonna need alot of help from MIT's AI robotics department before that becomes anywhere close to feasible. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Re: Your thoughts wanted on a node AI project
You don't come off as an asshole -- and besides, we have no problem with assholes: we're developers. Saying the things you're saying, to the audience you're saying them to -- well, it's that you come off as an idiot. The good news is this is a lot easier to fix. I'm an idiot because of my political views, and not my programming ability, I assume. The only thing I'm worried about is the programming. If you've got some criticism about that, I'm all ears. Oh, you're looking for help? Here's a suggestion: you could open up the code and see what people do. No. Now chill out about the open source thing. It's boring. Redundant. Etc. Far be it from us to tell you what to do with your code, but you're the one asking for help, and this is naturally the first bit of feedback you're going to get. Why would any of us invest much more of our precious time helping you improve your proprietary product? The world doesn't work that way -- at least, not anymore. Dude, I'm looking to get a business off the ground. People work with each other and try to make money off of their labors. It has happened once or twice before. You say the word proprietary as if its one of the seven deadly ones. So yes, back to the thing itself: node.js (this is the node.js list, after all). You've expressed clearly that you have no interest in making your work part of node's ecosystem. So at this point you're just noise, no different than a recruiter. You just said as much yourself: I'm here because I can't do this thing by myself. At least recruiters, even the worst of them, have a payed position to offer and the good sense not to directly insult the target audience :P Sorry. I don't have any personal feelings about node's ecosystem. It's just a tool that I take for granted. I set up the site with express, and now I don't think about it. It just works. I have a server hooked into the main parser to shuttle stuff between it and express. Sometimes I need to make use of the filesystem. Other that that, I'm pretty much using straight javascript. It's google's v8 work that's doing most of the heavy lifting for me. Besides, I didn't know that I had to have feelings for the tools that I use in order to be accepted in the development community. And yes, I am recruiting people who are interested in doing something awesome with this tool. And I'll offer something even better that paychecks: how about co-ownership? Good luck to you and your product, but kindly take your noise elsewhere. Nah, I think I'll chill here for awhile. I'm sure there are some people around here like me that appreciate new technology over the same old politics. -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Re: Your thoughts wanted on a node AI project
Hi Jann, I'm not sure you really want the source at this point... at least not without some pretty detailed explanation to go along with it! I first started working on the algorithm six years ago in perl, which also happened to be when I was first learning how to program. Given my inexperience, that effort didn't amount to much. But it has only been less than a month since I began from scratch in Javascript. So the overall algorithm has been sitting in my head for quite some time, but it has only been very recently that I've decided to take up the AI challenge again... this time with far more programming ability. As far as it goes, I have so far put zero effort into having a decent variety of words being recognized. On the site, you will find instructions to see what words are recognized, and how to add to the list. At present, there is no facility to refer to things without using some kind of article or possessive... So to do something like what you want, you will have to type the following two lines to get it to recognize the words: nouns:cake adjs:delicious Then you can type something like: There is a delicious cake or... There is a cake It is delicious or even... There is a cake and it is delicious Then you can say... There is a boy named mike He has the cake Mikes cake is blue The idea of saying cake is delicious is much more dangerous because it labels an entire type class. This would disallow the existence of bad tasting cakes. I think at this early phase, it is much better to think in terms of instances rather than entire classes. Then once the logic of instances gets worked out, we can start thinking about classes (carefully!). The program does allow you to give arbitrary names like this: There is a boy named Zebulon or There is a girl She is named Zelda It currently looks for any arbitrary sequence of characters after the word named and then adds this sequence into the list of recognized names. On Apr 24, 7:51 am, Jann Horn jannh...@googlemail.com wrote: On Mon, Apr 23, 2012 at 10:50:25AM -0700, Dennis Kane wrote: Detailed instructions can be found at ai.webcyte.net. This project is currently meant to be a prototype in order to build interest in developing a robust AI system that just works (read: NOT another chatterbot!). It can possibly be used as the intelligent backend to a Siri-like voice interface in the not too distant future. Will probably want to develop an open source version for non-business purposes that can be used on the client side (eventually) and keep the supported commercial version well hidden from prying eyes on the server side. Thoughts? Looks cool, I want the source! :D How much time did you spend on that so far? I think you should query wiktionary.org or so for unknown words. It doesn't even understand cake is delicious. :( Also, you'll have to somehow support names it doesn't know about - how do you want to do that? application_pgp-signature_part 1KViewDownload -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Your thoughts wanted on a node AI project
To open source or not to open source... THAT is the question! Do I want to SAVE the world or do I want to OWN it, haha ;) I really do want to keep it close to the vest at the moment. I am not feeling too liberal right now. But I would like to start getting a team together to help make it commercially viable (wink wink nudge nudge). This, to me, is by far the best way to attract the best talent for such a demanding sort of project. Will keep my ears open for any interested VC's sniffing around here... On Tuesday, April 24, 2012 12:35:43 PM UTC-7, tedsuo wrote: Haha I used to think that way too. But it's better to just open source early if open source is your goal, and slap a warning label on it saying it's in the very early stages. I've found people to be pretty understanding and non-judgemental about code quality, unless you are proposing that it is production ready when it is not. :) -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
[nodejs] Your thoughts wanted on a node AI project
The site is powered by an express server, which exec's a separate node AI process for each new IP address. Each process will automatically end after 10 minutes of inactivity. You can interface with the process either through a browser at ai.webcyte.net or by sending a URL encoded GET request to http://ai.webcyte.net/send. So, the comand line for the phrase, there is a boy named joe using curl will look like: $ curl http://ai.webcyte.net/send/there%20is%20a%20boy%20named%20joe Detailed instructions can be found at ai.webcyte.net. This project is currently meant to be a prototype in order to build interest in developing a robust AI system that just works (read: NOT another chatterbot!). It can possibly be used as the intelligent backend to a Siri-like voice interface in the not too distant future. I am interested in getting in touch with academic/research types as well as business types. Will probably want to develop an open source version for non-business purposes that can be used on the client side (eventually) and keep the supported commercial version well hidden from prying eyes on the server side. Thoughts? -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en