Logs for the RingoJS IRC channel,
as logged by ringostarr.
2010-10-12
[08:09] <maks__> hi hannes, woudl you have time for a quick question about unit tests?
[08:19] <maks__> what happens is I cd into my app folder, run ringo test tests/api-tests.js to run my unit tests, and what happens is on the third step in the call stack, the require() of the module being called does not seemt o get resolved correctly
[08:20] <maks__> I know it should be working, because if I call the method in module directly from the another unit test it works fine...
[08:24] <mcepl> hannesw: does RingoJS provide any tools to avoid XSS and other nastiness? Try to remove the first book on http://ringojs.org/demo/storage/
[08:29] <mcepl> or later on the page "><" book (that wasn't my creation ;))
[09:25] <mcepl> http://stackoverflow.com/questions/3903829/differences-between-narwhal-and-node-js/3912411 does anybody want to comment further?
[09:43] <hannesw> good morning
[09:43] <hannesw> reminder: irc meeting in 15 mins
[09:43] <mcepl> good morning
[09:43] <mcepl> do you have a backlog of this room, or should I paste it here?
[09:44] <hannesw> ringo is big in japan right now! http://search.twitter.com/search?q=ringojs
[09:46] <mcepl> http://nighthacks.com/roller/jag/entry/peace_breaks_outhttp://nighthacks.com/roller/jag/entry/peace_breaks_out
[09:46] <mcepl> sorry, wrong paste
[09:46] <mcepl> I meant
[09:46] <mcepl> [08:24:42] mcepl: hannesw: does RingoJS provide any tools to avoid XSS and other nastiness? Try to remove the first book on http://ringojs.org/demo/storage/
[09:46] <mcepl> [08:29:02] mcepl: or later on the page "><" book (that wasn't my creation ;))
[09:46] <mcepl> [09:25:33] mcepl: http://stackoverflow.com/questions/3903829/differences-between-narwhal-and-node-js/3912411 does anybody want to comment further?
[09:50] <hannesw> mcepl thanks for letting me know about storage demo problem
[09:51] <hannesw> and thanks for the ringo comment on stackoverflow
[09:52] <mcepl> It would be really nice to have some library for input sanitation ... I am so scared of XSS et al. that I will rather make my blog form-less.
[09:52] <mcepl> (with Atom-based REST interface as the only one)
[09:55] <mcepl> hannesw: don't you have some code hanging around from Helma?
[10:11] <hannesw> mcepl: the only thing missing was an | escapeHtml filter in the remove page skin
[10:11] <hannesw> I added that now
[10:37] <mcepl> awesome!
[10:37] <mcepl> but wouldn't it be better to avoid input of nastiness rather than protecting against it in skins?
[10:38] <hannesw> mcepl: we have a stripTags function in ringo/utils/strings
[10:38] <mcepl> double awesome!
[10:38] <hannesw> but nothing that removes/encodes tags selectively
[10:56] <oberhamsi> mini featured on dailyjs.com http://dailyjs.com/2010/10/11/functional-koans/
[11:09] <hannesw> oberhamsi: cool
[11:10] <hannesw> olegp: thanks for that!
[11:11] <olegp> thanks for what? ;)
[11:11] <hannesw> i thought you were responsible for the dailyjs plug
[11:11] <hannesw> aren't you?
[11:11] <olegp> well, I keep mentioning it to Alex, but no, I guess he picked that up himself
[11:11] <hannesw> Ah ok :)
[11:12] <olegp> Im still supposed to do that interview with you for dailyjs, will send through the initial questions today
[11:12] <hannesw> great!
[11:12] <hannesw> looking forward to that
[11:12] <olegp> also, Im doing a ringojs talk at colognejs today ... might need a bit of help proofreading the slides :)
[11:12] <olegp> leaving things till the last minute, as usual
[11:12] <hannesw> this evening?
[11:12] <olegp> yea
[11:13] <olegp> I have the presentation ready, mostly what we discussed back in berlin
[11:13] <hannesw> cool. I hope i'll be online some time today, meeting with folks
[11:13] <olegp> need to polish it a bit
[11:13] <olegp> ok, will ping you an email so you can take a quick look
[11:13] <hannesw> ok, cool
[11:14] <olegp> also, does anybody here have stackoverflow points?
[11:14] <olegp> the ringojs answer on this question could do with upvotes: http://stackoverflow.com/questions/3903829/differences-between-narwhal-and-node-js
[11:16] <hannesw> no stackoverflow karma here :)
[11:18] <hannesw> although i got a "teacher badge" for answering this: http://stackoverflow.com/questions/3860853/ringojs-fileupload-example/3862194
[11:20] <olegp> ;)
[11:26] <oberhamsi> upboated though the ringo answer is kinda off topic ;)
[15:27] <hannesw> https://spreadsheets.google.com/ccc?key=0At-GsyW4f-HqdFFseEVjRlZONThZTzFSQ2hDbDhMS3c&hl=en#gid=0
[15:27] <hannesw> (link for oberhamsi)
[15:31] <olegp> Ive had to extend mustache to do some of the things that handlebars now does out of the box
[15:31] <olegp> so for the next project I think Ill give that a go
[15:37] <hannesw> we'll likely do something that is very similar to handlebars in ringo 0.7
[16:18] <olegp> here are my slides for today's talk: https://docs.google.com/a/ionsquare.com/present/edit?id=0ATijVZvCFvdmZGd0OWI3eHRfODJmM3o3bWJjNA&hl=en&authkey=CInRx6sL
[16:18] <olegp> let me know if something is completely off
[16:18] <olegp> Ill obviously say a lot more than is in the slides
[16:18] <olegp> but the idea is to get people interested enough to try ringo out
[16:36] <oberhamsi_> olegp nice one
[16:37] <hannesw> olegp: nice!
[16:37] <hannesw> one thing: ringo is almost complete JS 1.8
[16:37] <hannesw> i think there's 1 feature missing
[16:38] <hannesw> so it's JS 1.7 and most things from 1.8
[16:38] <hannesw> for example, var {x, y} = obj; is JS 1.8
[16:39] <hannesw> for the threading slide:
[16:39] <olegp> ok
[16:39] <olegp> yeah?
[16:39] <hannesw> you might mention global function spawn() and module ringo/scheduler, which are much easier ways to start a thread
[16:40] <hannesw> especially ringo/scheduler, as it provides the familiar setTimeout()/setInterval() API
[16:40] <hannesw> nice slides! I really like them.
[16:43] <olegp> cool
[16:43] <olegp> yeah, that threading slide is just an example of how to wrap around java libs
[16:43] <olegp> but Ill mention spawn etc
[16:46] <hannesw> I'd go with ringo/scheduler as the recommended way of doing threads
[16:46] <hannesw> but it's up to you of course :)
[16:47] <mcepl> olegp: two questions ... could I download the presentation somewhere, why do you like Oracle so much?
[16:48] <olegp> oracle?
[16:49] <olegp> mcepl: is file -> download what youre looking for?
[16:49] <mcepl> why should I download Oracle Java, when OpenJDK works just fine?
[16:49] <mcepl> no, because I don't have account at Ionsquare
[16:50] <olegp> ah ok
[16:50] <olegp> on call atm, gimme a few mins
[16:50] <earl> just download any jdk you are fine with
[16:51] <mcepl> earl: yeah, that's the point
[16:51] <mcepl> I don't care if you use IBM JVM (will it sill exist after yesterday's announcements?), but that this makes an impression that OpenJDK is not sufficient to run RingoJS.
[16:52] <earl> not really the point, because in the same line you could argue that due to apt-get fedora is not sufficient to run ringojs
[16:53] <mcepl> yeah, I know ... but I do expect people to be ignorant ;)
[16:53] <mcepl> s
[16:53] <mcepl> ignoramus? how to say and not to be offensive
[16:53] <earl> in the same line, if people are ignorant, how does installing 'default-jdk' indicate that you need java :) ?
[16:54] <earl> in any case, make that `apt-get install default-jdk` if it helps
[16:54] <mcepl> why not just say "RingoJS requires Java"
[16:54] <mcepl> ?
[16:54] <earl> because technical people like to speak in executable code
[16:55] <mcepl> really technical people don't need to pretend they are technical people
[16:55] * mcepl is too tired to be polite, sorry
[16:55] <mcepl> anyway, have to run
[16:56] <earl> no pretense on this slide
[16:56] <earl> it gets you up and running, nothing else
[17:03] <hannesw> I'm in Vienna this evening. Anybody wanna meet?
[17:03] <hannesw> I'll probably be here: http://www.stafler.at/
[17:04] <hannesw> but werkzeugh would be ok, too
[17:25] <olegp> right, changed that to default-jdk
[17:25] <olegp> also, changed sharing options
[17:25] <olegp> can you download it now?
[17:26] <olegp> its under Actions btw
[17:33] <earl> yep, downloading now works fine for me
[19:36] <Chris64> good evening
[19:36] <Chris64> some one here?
[19:43] <Chris64> i'm relatevly new to serverside javascript and have some questions.. are function calls executed in fifo order? and is it possible to call specific js function from java code?
[19:44] <Chris64> is it possible to implement alternative js source locations in interpreted mode than normal filesystem?
[19:44] <Chris64> :)
[19:45] <Chris64> is rhino& ringo very big in terms of class file size?
[19:48] <oberhamsi> i Chris64
[19:49] <Chris64> with fifo i mean non blocking to be able to avoid threading
[19:49] <oberhamsi> i think ringo isn't too big.. just a couple of small java files.
[19:49] <Chris64> hi oberhamsi :)
[19:49] <Chris64> and rhino?
[19:49] <oberhamsi> let me check
[19:49] <oberhamsi> why? :)
[19:50] <Chris64> thanks in advance :)
[19:50] <oberhamsi> ringo is 300KB jar file
[19:50] <oberhamsi> �h... sorry rhino is 1MB
[19:50] <Chris64> okay
[19:50] <daian> i am not sure if you can call js functions from java. i know you can call java functions from ringo though
[19:51] <Chris64> i know a java implementation for microcontrollers and wondered if it's possible to do non blocking js on it ;)
[19:51] <Chris64> of course not for serious tasks but just for fun
[19:51] <oberhamsi> Chris64, alternative js source locations.. ringo's module loader understands other locations. so you could put them in a database and load them from there, for example
[19:52] <Chris64> cool :)
[19:52] <daian> running js on rhino on a microcontroller? that sounds just crazy enough to work
[19:52] <oberhamsi> ^^ that won't work out of the box but i think the design allows it
[19:52] <Chris64> ;D
[19:53] <Chris64> i tried nodejs some days before and found it very comfortable
[19:53] <oberhamsi> oh i see that is maybe the only valid reason to ask for file sizes :)
[19:53] <Chris64> but jvm is a lot more overhead, you're right
[19:53] <Chris64> am just a student so don't mind ;)
[19:54] <Chris64> can you program ringo in a non blocking manner?
[19:55] <Chris64> would be interesting but anyway js on jvm is very interesting :)
[19:55] <oberhamsi> well not all the way down like you can with nodejs. we're on the JVM so non-blocking = threads
[19:56] <daian> so far most ringo stuff i've seen has been web based
[19:59] <Chris64> oh one thing
[19:59] <Chris64> when compiling js to java, do i need rhino to execute that?
[20:00] <Chris64> or could it run with a subset of rhino classes needed for inheritance?
[20:00] <earl> you'll need rhino to run it, as rhino also provides a "runtime"
[20:00] <Chris64> thought that java class files can run on their own, that's why i asked
[20:01] <Chris64> but you're right, js on microcontrollers isn't that good *g*
[20:01] <earl> well
[20:01] <earl> if you have a "real" java that runs on a micro, getting rhino to run atop of it should be possible
[20:02] <Chris64> there are some limitations, available classes, no long vars, ..
[20:02] <Chris64> and memory of course
[20:02] <daian> i could be wrong, but i don't think js is compiled into java by anything, it's just interpeted by rhino
[20:02] <earl> nah, rhino can create jvm bytecode out of javascript source files
[20:02] <earl> but it's nothing fancy
[20:03] <daian> ah, ok
[20:04] <earl> so you won't save much in dependencies. you'll need about as much of rhino as if running js in the purely interpreted mode
[20:06] <Chris64> okay, thank you very much for your answers :)
[20:07] <earl> what kind of micro are we talking about?
[20:07] <earl> 16b, 32b?
[20:07] <earl> 8-bit, even :) ?
[20:07] <Chris64> 8 *g*
[20:07] <daian> haha
[20:07] <earl> well, that'll be tough :)
[20:07] <Chris64> but hey, jvm runs successfully
[20:39] <Chris64> have to go now, bye
[21:12] <oleg> talk went well, thanks guys for proofreading the slides
[21:12] <oleg> I recorded the audio, so will try upload at some point