[12:25] frigg: VERSION
[12:25] nodelog has joined the channel
[12:26] nerdEd has joined the channel
[12:26] Stephen: \hmm..
[12:31] Stephen: Alright, and it's done!
[12:31] Stephen: Methods calling in both directions now
[12:32] _announcer: Twitter: "already in # devinsampa viewing lecture node.js" [pt] -- Edgar F. da Silva. http://twitter.com/edgarfs/status/21146268853
[12:33] karboh has joined the channel
[12:36] marshall_law has joined the channel
[12:39] SingAlong has joined the channel
[12:47] SingAlong: how can i execute a system command in node?
[12:48] SubStack: require('child_process').spawn
[12:48] SingAlong: SubStack: does it return errors of that child processes also?
[12:49] SingAlong: SubStack: ah its ok. thanks. I just found the doc page
[12:52] hansek has joined the channel
[12:53] nerdEd has joined the channel
[12:53] dylang: mape: I'm trying out connect-assetmanager-handlers and getting an error: "Cannot find module 'node-base64/base64'". I've installed node-base64 and base64. Typo?
[12:57] MattJ has joined the channel
[12:58] Tim_Smart has joined the channel
[13:01] _announcer: Twitter: "@ Rafaelhbarros node.js uses, you can create the daemon then javascript" [pt] -- Julio Greff. http://twitter.com/juliogreff/status/21147811569
[13:03] _announcer: Twitter: "very nice talk about node.js by @emerleite #devinsampa" -- Diego Carrion. http://twitter.com/dcrec1/status/21147927530
[13:06] SamuraiJack__ has joined the channel
[13:07] shockie has joined the channel
[13:09] _announcer: Twitter: "The lecture on emerleite @ @ # nodejs in devinsampa was great!" [pt] -- Jonas Alves. http://twitter.com/jonas_alves/status/21148260454
[13:15] aho has joined the channel
[13:18] davidc_ has joined the channel
[13:19] davidc_ has joined the channel
[13:20] _announcer: Twitter: "To get node.js working on my plug computer, I need to compile V8 from the bleeding_edge SVN branch. Seems like a lot of effort." -- _duncan_. http://twitter.com/_duncan_/status/21148915033
[13:21] mpoz2 has joined the channel
[13:24] d0k has joined the channel
[13:25] pydroid has joined the channel
[13:25] _announcer: Twitter: "#node.js seems a good match to run on #chromeos ... small, fast, webby" -- Jerome Etienne. http://twitter.com/jerome_etienne/status/21149227724
[13:31] codemariner has joined the channel
[13:33] Throlkim has joined the channel
[13:33] Throlkim has left the channel
[13:35] keeto has joined the channel
[13:36] Throlkim has joined the channel
[13:39] _announcer: Twitter: "webshell: A console-based JavaScripty web client utility (using node.js) - thechangelog: http://tumblr.com/xgxfr0f7j" -- Jack Russell SC. http://twitter.com/jackhq/status/21150095385
[13:42] hansek has joined the channel
[13:44] skampler: node.js on the front page
[13:48] _announcer: Twitter: "@der42 agreed but pretty crap for server side like node.js :(" -- nathan. http://twitter.com/webr3/status/21150707731
[13:49] mscdex: hooray for neat bitwise operations in javascript
[13:50] Egbert9e9 has joined the channel
[14:05] zapnap has joined the channel
[14:06] _announcer: Twitter: "Node.js talk by @eibaan. Nice! #bcki http://yfrog.com/ht59oj" -- Ⓙohannes Ⓕahrenkrug. http://twitter.com/jfahrenkrug/status/21151908287
[14:17] fearphage has joined the channel
[14:18] rnewson has joined the channel
[14:20] softdrink has joined the channel
[14:23] jamescarr_: what is AntiNode???
[14:28] stride: a static http file server module iirc
[14:29] Draggor: that's handy
[14:34] zapnap has joined the channel
[14:36] siculars has joined the channel
[14:36] _announcer: Twitter: ""Ruby on Rails developers are indeed generating test Nazis" quip from the node.js Session # bcki" [de] -- Florian Bender. http://twitter.com/fbender/status/21153899012
[14:36] c4milo has joined the channel
[14:38] mu-hannibal has joined the channel
[14:39] _announcer: Twitter: "@map_it there's much more than Rails out there; Ruby is a player for sure, but there are other opts: node.js, Python, php..." -- michelemauro. http://twitter.com/michelemauro/status/21154119635
[14:40] keeto has joined the channel
[14:42] SubStack: excellent all is going according to plan
[14:43] SubStack: for now we bide our time, watching
[14:43] jb55: ACTION watches
[14:44] pdelgallego has joined the channel
[14:44] _announcer: Twitter: "I'm playing with node.js, cool thing. Long awaited her)" [ru] -- Eight Buddha. http://twitter.com/eight_buddha/status/21154490488
[14:46] maushu: ACTION plans to conquer the world using node.js
[14:47] Egbert9e9 has joined the channel
[14:49] bryanl has joined the channel
[14:52] allengeorge has joined the channel
[14:58] _announcer: Twitter: "@ Juliogreff if I install ruby on ubuntu here makes no difference, but if I want to use it somewhere else different is bad. node.js FTW" [pt] -- Rafael Barros. http://twitter.com/rafaelhbarros/status/21155443917
[15:00] FransWillem has joined the channel
[15:05] _announcer: Twitter: "nosql and node.js sessions at #bcki were great. I really like to do a project using them" -- splitbrain. http://twitter.com/splitbrain/status/21156007438
[15:05] zomgbie has joined the channel
[15:06] maushu has joined the channel
[15:07] maushu: Anyone thought of building a mud in node.js?
[15:10] scoates: I started one, but got stuck yak shaving my time machine.
[15:10] scoates: zing! (-:
[15:10] hansek has joined the channel
[15:17] fod has joined the channel
[15:18] maushu: ...wat.
[15:18] mscdex: So is there a way to add additional constructors to an existing "class" in node? I'm wanting to add an additional one for Buffer within js if I can
[15:20] SubStack: you could hack in a Buffer.fromSomeCrazyParams(...)
[15:20] Stephen: pkrumins SubStack Just watched the StackVM videos.... So full of win. Nice Octopus
[15:20] SubStack: ^_^
[15:20] c4milo: how would be this new constructor ?
[15:21] daleharvey has joined the channel
[15:22] mscdex: c4milo: want to create a buffer from a number
[15:22] mscdex: :->
[15:22] c4milo: how ?
[15:23] mscdex: c4milo: by reading in octets of the number
[15:24] SubStack: Buffer.fromOctets
[15:24] mscdex: heh
[15:24] charlieyan has joined the channel
[15:25] mscdex: actually... maybe i will just pass in an array of octets since that is supported...
[15:25] c4milo: you can create a new Buffer constructor but you must use the Buffer existing constructor from your js constructor
[15:25] mscdex: yeah, that's what i was thinking
[15:26] SubStack: Buffer.fromOctets = function () { var args = [].slice.call(arguments); var b = new Buffer(args.length); args.forEach(function (arg,i) { b[i] = arg }); return b };
[15:26] jakehow has joined the channel
[15:27] c4milo: otherwise you may fork node and write the new constructor in C++ :)
[15:27] _announcer: Twitter: "I´m very impressed with the growing of #node.js project... may be the next #web #framework?" -- Javier Juarez. http://twitter.com/thejtoken/status/21157611999
[15:27] SubStack: node> Buffer.fromOctets(97,98,99)
[15:27] SubStack:
[15:27] mscdex: SubStack: Buffer already has a constructor that takes in an array of octets
[15:27] mscdex: :-)
[15:28] SubStack: oh well that's even better
[15:28] mscdex: hehe
[15:28] rnewson has joined the channel
[15:28] rnewson has joined the channel
[15:29] SubStack: as an aside, I hate it how people use Array.prototype when [] works
[15:29] SubStack: so many wasted keystrokes
[15:29] jb55: didn't know that
[15:29] jb55: neat
[15:29] SubStack: ^_^
[15:30] _announcer: Twitter: "@christkv Nice work on Node.js MongoDB native drive http://bit.ly/c5i8BS I really like it. And I'm also impressed! #nodejs #mongodb" -- Ladislav Martincik. http://twitter.com/martincik/status/21157834541
[15:30] _announcer: Twitter: "interate node.js / express with Twitter oauth sample: http://bit.ly/b6MMZI" -- Yohei Sasaki. http://twitter.com/yssk22/status/21157867498
[15:32] mau has joined the channel
[15:32] charlieyan has joined the channel
[15:32] bentomas has joined the channel
[15:35] _announcer: Twitter: "I had a great feedback from my lecture NodeJS and still met the @ renatoelias, who knows the node and can swap good ideas" [pt] -- Emerson Macedo. http://twitter.com/emerleite/status/21158184979
[15:36] _announcer: Twitter: "Wa wa wee wa! Oracle is hire @ryah for rewrite node.js use Java green threads! I am think they sue Joyent next." -- DevOps Borat. http://twitter.com/DEVOPS_BORAT/status/21158312038
[15:38] polotek has joined the channel
[15:38] _announcer: Twitter: "Fnando @ @ @ dcrec1 jonas_alves Glad they liked the lecture. Thanks! # # Devinsampa nodejs" [pt] -- Emerson Macedo. http://twitter.com/emerleite/status/21158448816
[15:43] maushu: Hmm, if entities have size, position and material in a mud world...
[15:43] maushu: Add IO to each entity, and relationship with other entities.
[15:44] robotarmy has joined the channel
[15:46] tekky has joined the channel
[15:47] feroz_: /join scala
[15:48] feroz_: Sorry
[15:48] maushu: No thanks.
[15:48] SingAlong has joined the channel
[15:48] SingAlong: hi all
[15:48] SingAlong: http://pastie.org/1092156 how do i print the output of the command?
[15:49] SingAlong: I'm trying to print the output of the command pwd after it's run as a child process.
[15:51] maushu: SingAlong, the data event doesn't work?
[15:51] SingAlong: maushu: nope!
[15:52] SingAlong: maushu: updated the pastie with the output
[15:53] maushu: Huh, you got the output.
[15:53] SingAlong: maushu: ya. but not the output of the pwd command.
[15:53] maushu: Of course, you are using the "ps" command.
[15:53] SingAlong: maushu: it's supposed to print the current directory right?
[15:53] maushu: Tried to change the "ps" to "pwd" up there?
[15:53] SingAlong: maushu: oh crap! sorry
[15:54] SingAlong: maushu: ya just noticed it lol
[15:54] SingAlong: maushu: thanks!
[15:55] maushu: No need to thank me. I'm captain obvious. It's my job.
[15:55] SubStack: hey now
[15:56] SingAlong: :)
[15:56] SubStack: maushu does the work that Americans won't do
[15:57] SingAlong: I've just started building another package manager for node. I hope dont piss anyone off with a zoden pkg managers already available
[15:57] SingAlong: *dozen
[15:57] maushu: You're dead meat.
[15:57] SingAlong: maushu: haha. i dont know what else I can write with node. No app ideas for now. so building one :)
[15:57] maushu: The npm army will show up and rampage your stuff.
[15:57] maushu: Build a game.
[15:58] Stephen: Already am
[15:58] SubStack: write a program that writes package managers
[15:58] Stephen: And I tell you what
[15:58] SingAlong: maushu: any app ideas?
[15:58] SingAlong: SubStack: haha :D
[15:58] maushu: Hmm, well, the section regarding games is lacking.
[15:59] SingAlong: i have a fancy name so if anyone wants to rename their pkg manager please do so. "Mesh". it sounds good and goes well with "Node" :)
[15:59] SubStack: actually it could have just two radio buttons and a generate button
[15:59] SubStack: "be awesome" and "suck"
[15:59] Stephen: Ooohhh... How far along converting do i have to be before I can list?
[15:59] Stephen: Heh
[15:59] SingAlong: maushu: if you can give me an idea. i'll start building on it.
[15:59] SingAlong: some base idea will do.
[15:59] maushu: How old are you?
[15:59] SingAlong: 20.
[15:59] maushu: Hmm. Too young for muds.
[15:59] SingAlong: but most say i'm kiddish
[16:00] maushu: Try making a web game or something.
[16:00] Stephen: SingAlong: A package manager which requires your peers to vote on a list of repos instead of you choosing.
[16:00] maushu: A website to make tiny urls.
[16:00] maushu: A file uploader.
[16:00] mscdex: mush!
[16:00] maushu: Heck, just copy something. xD
[16:00] mscdex: moo!
[16:00] SingAlong: maushu: I loved the app that mape made. the War Games one. awesome stuff. i've been showing it to people for abt a month
[16:00] maushu: Then make an interactive one.
[16:01] SubStack: build a radical web framework that fundamentally changes how servers and clients interact
[16:01] mscdex: Buffer.prototype.htonl! woo :-D
[16:01] Stephen: How about an app which uses localStorage and node-image to combine images stored on multiple user's caches into a file repository only available when they are all signed on to a page
[16:01] maushu: mscdex, I want to brainstorm a mud/mush architecture with you.
[16:01] SubStack: it's all been sinatra and rails clones in node so far
[16:01] SubStack: (unless somebody can point be to something amazing)
[16:01] mscdex: maushu: it seems you have the wrong forecast, because i'm in no condition to brainstorm
[16:01] mscdex: i'm on a programming roll!
[16:01] maushu: ACTION fixes the forecast.
[16:02] SingAlong: SubStack: I hate. I love crazy stuff like the WarGamez app that mape made.
[16:02] Stephen: mscdex: Double stacked?
[16:02] SingAlong: I'm thinking of a DSL. been wanting to make one since ages
[16:02] SubStack: SingAlong: what do you hate?
[16:02] mscdex: what about a cable?
[16:02] mscdex: huhu
[16:02] SubStack: I'll just assume you hate everything like me.
[16:02] SingAlong: SubStack: the rails app clones that are made in node like you just said.
[16:03] SubStack: oh yeah those
[16:03] SubStack: but I also hate rails so there's that
[16:03] SingAlong: SubStack: no actually :) i like your nick.
[16:03] Stephen: Hate is a strong word, it implies effort put into negative thought
[16:03] mscdex: that's why i always try to work on unique stuff
[16:03] SingAlong: SubStack: rails is awesome for web dev.
[16:03] Stephen: I;m lazier than that
[16:03] Stephen: Ooohhh.....
[16:03] SubStack: shit I should write some code this morning/evening
[16:04] SubStack: I was doing that until I got distracted
[16:04] mape: There is always time for some code
[16:04] SingAlong: SubStack: you can get a simple prototype app up and running in minutes in rails. so get feedback quickly. chuck app and move on or continue developing it.
[16:04] polotek: SubStack: what kind of framework do you want to see?
[16:04] Stephen: How about a time sync beacon to match a pulse between multiple clients?
[16:04] SubStack: polotek: one based around event emitters and persistent connections
[16:04] SubStack: also callbacks if it's not too much trouble (and it isn't)
[16:05] polotek: SubStack: not following you exactly, all node frameworks are built on those things
[16:05] polotek: are you just talking about the api?
[16:05] SubStack: yes, what else would I be talking about?
[16:05] Stephen: beer
[16:05] SubStack: possibly
[16:06] SubStack: it feels strange to wake up at 17:30 and have a beer at 23:00 with friends
[16:06] SubStack: because 23:00 is my noon
[16:06] Stephen: See... the timing pulse could help us all to time our mini-brews to the same moments
[16:06] hansek has joined the channel
[16:06] Stephen: that way we could all drink the same tasting beer brewed in different rooms all over the world
[16:07] bentomas has left the channel
[16:07] polotek: SubStack: can you give me an example
[16:07] polotek: quick gist?
[16:07] polotek: I'm interested in different ideas for frameworks
[16:07] SubStack: polotek: this idea is too half-baked for code right now
[16:07] Stephen: ACTION --troll=disabled
[16:07] polotek: SubStack: nah, we're just talking apio
[16:07] polotek: api
[16:08] polotek: and looking at code is a good way to bake it some more
[16:08] polotek: just an example of how it would be used in your mind
[16:08] SingAlong: polotek: like Express? the sencha labs framework
[16:08] SubStack: better if I describe it
[16:08] _announcer: Twitter: "http://bit.ly/azFI2z written blog! Node.js finally feel ready to make the application." [ja] -- Yohei Sasaki. http://twitter.com/yssk22/status/21160597648
[16:09] polotek: SingAlong: Express isn't by Sencha
[16:09] polotek: Connect is the sencha framework
[16:09] polotek: Express is an abstraction on top of that
[16:09] dnolen has joined the channel
[16:09] _announcer: Twitter: "Change(b)log: Getting Started with Node.js: Installation and Resources: http://bit.ly/cR4kRV #nodejs" -- Maciej Zgadzaj. http://twitter.com/maciejzgadzaj/status/21160662585
[16:09] polotek: SubStack: go for it
[16:09] SubStack: so anyways, clients {,un}subscribe to server resources which are actually event emitters and emit updates in real-time
[16:09] mape: but it is created by the same person working on connect :)
[16:09] Stephen: SubStack: What about designing an evented data system which causes data to be pushed to other random systems which parameters are met.
[16:09] JimBastard has joined the channel
[16:09] Stephen: when^
[16:09] SubStack: and then clients can emit events back to the server and to other clients
[16:10] Stephen: A repulsive data store
[16:10] _bastardbot has joined the channel
[16:10] SingAlong: polotek: http://expressjs.com/ says sencha on top
[16:10] SubStack: Stephen: I don't see the utility of pushing data around randomly
[16:10] Stephen: Ugh, screw sencha
[16:10] SubStack: whycome?
[16:10] SingAlong: anyone got access to the Node.js beta by heroku?
[16:11] hammerdr has joined the channel
[16:11] JimBastard: olowut Stephen
[16:11] JimBastard: SingAlong: i did
[16:11] Stephen: We use the Ext.JS framework at work
[16:11] polotek: SubStack: that's not a "framework". it's a pubsub system
[16:11] Stephen: and yes, it's wonderful
[16:11] JimBastard: !translate English:Spanish where are the beer and women, i want to party
[16:11] _bastardbot: ¿dónde están la cerveza y las mujeres, quiero a la fiesta
[16:11] Stephen: But they've dirtied the name of open-source with their License games
[16:11] SubStack: polotek: what should a framework do then?
[16:11] JimBastard: gracious!
[16:12] polotek: SubStack: sorry, not trying to be pedantic
[16:12] sudoer has joined the channel
[16:12] polotek: but when I say framework I'm thinking web application stack
[16:12] SubStack: no, I'm just curious
[16:12] JimBastard: these potatoes taste shallow and pednantic
[16:12] JimBastard: you dont need web frameworks for node really
[16:12] Stephen: Substack: Data shouldn't be pushed around randomly. Data should have events that indicate it should not be stored with other kinds of data
[16:12] JimBastard: just lots of pieces
[16:13] JimBastard: eventually we can make a nice stack of these pieces
[16:13] SubStack: polotek: and web applications should have real-time updates and websocket/long-polling baked in from the start
[16:13] JimBastard: but the pieces arent done yet
[16:13] polotek: JimBastard: true, but frameworks are nice for getting shit done
[16:13] SubStack: I think a pubsub system like this would be pretty nice to those ends
[16:13] bronson has joined the channel
[16:13] JimBastard: polotek: of course, having a good domain glue is essential
[16:13] polotek: SubStack: I don't disagree with that
[16:13] JimBastard: but i think starting with the pieces, versus the glue is the right approach
[16:13] JimBastard: the pieces should work decoupled before you glue them
[16:14] polotek: SubStack: but the niceness of the framework still depends on the framework
[16:14] SubStack: circular what
[16:14] polotek: I think Connect is an awesome piece of tech. But I don't like how it hides
[16:14] Stephen: polotek: I disagree
[16:14] polotek: the niceness of the framework still depends on the *API*
[16:14] marshall_law has joined the channel
[16:14] Stephen: polotek: the framework niceties hinge on proper model inheritance
[16:15] polotek: Stephen: that's one part of the api, yes
[16:15] mape: polotek: The idea with connect is to be built upon, not be the endpoint?
[16:15] polotek: sorry if I'm not being clear
[16:15] polotek: mape: yes, which is why it bothers me that there's stuff still hidden
[16:15] polotek: well not *hidden* but tucked away
[16:15] SubStack: Stephen: screw models, I want transparent persistence
[16:16] polotek: you give a list of these middleware filters/providers, which is fine, but you're not really sure how it does what it does
[16:16] polotek: that next() function is cryptic
[16:16] mape: next passes the req/res?
[16:17] polotek: SubStack: you can have that with couch or mongo or whatever
[16:17] Stephen: SubStack: Heh, had to look that term up
[16:17] polotek: but models are useful for integrating with a domain
[16:17] Stephen: SubStack: And you're right. Come to think of it that's why I enjoy using LINQ so much in .Net development
[16:18] Stephen: IRL job is M$ hell
[16:18] polotek: Stephen: sorry man
[16:18] polotek: mape: that question mark is what bothers me :) what does it do exactly?
[16:18] polotek: it doesn't take params
[16:18] JimBastard: polotek: ive been having qualms about connect a bit lately
[16:18] Stephen: But at least we've convinced the entire team to move to MVC.net and Ext.JS (Some Ext.Net for the uninitiated)
[16:19] SingAlong: ah i got an idea! i'm going to make an online stickman game :D
[16:19] JimBastard: do it SingAlong
[16:19] SingAlong: using html5 canvas and node
[16:19] JimBastard: if you need hosting let me know i can hook it up
[16:19] mape: polotek: I assume it passes req/res, or executes the next function in the middleware array
[16:19] SubStack: do a sing-along with
[16:19] polotek: mape: right, but it's not obvious
[16:19] Stephen: I read that as online matchstick man game.... I was wondering "what;s the scam?"
[16:19] SubStack: holy damn that would be awesome
[16:19] polotek: and I don't like how you have to modify the req/res in place
[16:19] SingAlong: JimBastard: any places to host it? I mailed heroku abt their nodejs beta a month back. no replies
[16:20] JimBastard: SingAlong: yeah i work for a node.js hosting company, we are in private alpha, going beta soon
[16:20] JimBastard: http://github.com/nodejitsu
[16:20] polotek: can anybody point me to a good example of online wiki documentation
[16:20] JimBastard: www.nodejitsu.com
[16:20] polotek: on github would be ideal
[16:20] jetienne has joined the channel
[16:20] polotek: api documentation for a library is what I'm talking about
[16:20] JimBastard: SingAlong: you can dev locally right? if so just get your app ready and i can help deploy it to our cloud for you
[16:21] Stephen: Rackspace, nice, local boys
[16:21] JimBastard: Stephen: hell ya
[16:21] SingAlong: JimBastard: Ya I'm developing locally.
[16:21] creationix has joined the channel
[16:21] Stephen: ACTION is in Dallas, TX
[16:21] SingAlong: JimBastard: Just asked you abt it now so that I dont miss you the next time I need it :)
[16:22] JimBastard: SingAlong: im here all the time :-)
[16:22] Stephen: I'm a firm believer in the coming garage/appartment dweller cloud services which will be coming soon
[16:22] JimBastard: http://stats.nodejs.se/
[16:22] Stephen: Just like the eletric companies
[16:22] JimBastard: Stephen: on whose hardware?
[16:22] Draggor: so libxmljs still has quite a few memory issues apparently
[16:23] polotek: Draggor: let's talk about it
[16:23] polotek: ACTION used to own a hosting company back in the day
[16:25] Stephen: Nothing like Rackspace mind you
[16:25] Stephen: but we were 5 servers, 500 websites strong. Even had a WWE wrestler at one point
[16:26] _announcer: Twitter: "@ Rafaelhbarros node.js works only on * nix too: P" [pt] -- Julio Greff. http://twitter.com/juliogreff/status/21161862215
[16:26] Stephen: But then godaddy came along, ruined it for all of us little guys
[16:26] Stephen: :-P
[16:27] jakehow has joined the channel
[16:27] JimBastard: !tweet @Rafaelhbarros node.js works on windows too
[16:27] JimBastard: !tweet @juliogreff node.js works on windows too
[16:27] Stephen: Hmm... Rackspace just released and API of their own design not too long ago, right?
[16:27] stagas has joined the channel
[16:27] JimBastard: Stephen: the cloudservers api? its been around for over a year
[16:28] wllm has joined the channel
[16:28] Stephen: Really? Hmm... must have just been a press release or something
[16:28] JimBastard: could be something else
[16:28] polotek: Draggor: got questions about libxmljs?
[16:28] JimBastard: we were trying to roll a cloud hosting service two years ago for ruby apps (heroku clone), so we've been looking into this stuff for a little while
[16:29] Stephen: Hmm....
[16:29] Stephen: What would Node (or javascript) need to truely support portable continuations?
[16:30] CrabDude has joined the channel
[16:30] Stephen: ACTION ponders how to store the state of an anonymous method utilizing "yield"
[16:30] SingAlong has joined the channel
[16:31] BrianTheCoder has joined the channel
[16:32] _CrabDude has joined the channel
[16:33] scoates: Stephen: openstack?
[16:34] cardona507 has joined the channel
[16:34] Draggor: polotek: well I keep having segfaults and with one test just nuked all my free memory
[16:34] polotek: Other than easing cognitive dissonnance, what are the advantages of continuations?
[16:34] polotek: are you using v0.4.0?
[16:34] polotek: send me some test code
[16:34] polotek: gist or pastebin
[16:35] Stephen: Porting and securing application states without serialization
[16:35] polotek: Stephen: why do you need to do that?
[16:36] Stephen: One could separate the state of an app from its data and find useful ways to template that information onto other data sets
[16:36] polotek: I'm genuinely curious
[16:36] polotek: I'm perfectly fine with the async callback structure of node
[16:36] Stephen: More experimental than anything
[16:36] Stephen: It's not for lack of anything node has
[16:36] zomgbie has joined the channel
[16:36] Stephen: I'm sure a state could be serialized and stored as json
[16:37] polotek: lots of people putting time into creating or simulating continuations
[16:37] Stephen: But serialization of anything implies developer interpretation to some degree
[16:37] polotek: I just want the spiel on why it's desirable
[16:38] Stephen: Allowing for a method to be paused and resumed across multiple instances or machines would cut down on some of the more expensive areas in recursive code
[16:38] Stephen: k, wife needs attention
[16:38] Stephen: bbiab
[16:39] SubStack: with dnode, I'm using continuations for authentication
[16:40] SubStack: it's impossible to access resources that aren't explicitly provided in the object generated at sign-in
[16:40] JimBastard: Stephen: there use to be promises in node, there are promise libraries now
[16:40] JimBastard: i think a promise is a continutation? i could be wrong
[16:41] polotek: JimBastard: not exactly
[16:41] _announcer: Twitter: "node.js / express to run as a daemon ... going to do this." [ja] -- Yohei Sasaki. http://twitter.com/yssk22/status/21162899642
[16:41] polotek: as I understand it a continuation represents a stack in mid execution
[16:41] polotek: that can be restarted at some later time
[16:42] polotek: a promise is a different solution to the same problem continuations are trying to solve
[16:42] Draggor: polotek: http://github.com/draggor/GnuCard/blob/master/src/nodejs/spoiler.js line 67 is the start of the function I'm running. That will always eventually segfault, depending on what the interval time is
[16:42] polotek: or at least one of the problems
[16:43] polotek: where does it segfault?
[16:43] Draggor: I have a setInterval going, and in running that it eventually blows up
[16:44] Draggor: all I'm doing is printing out a libxmljs object
[16:44] polotek: yeah I can see what you're doing. can you tell me what line it actually drops out at?
[16:45] polotek: Draggor: the first thing is you you'll always get a doc object back, but you should check whether it has parse errors
[16:45] polotek: if(doc.errors) ...
[16:45] Draggor: Ooh, okay
[16:46] tmpvar has joined the channel
[16:46] JimBastard: jesus christ
[16:46] JimBastard: let the horrible node.js apps come, http://github.com/mrohad/Alligator/blob/master/lib/jssp.js#L215
[16:47] polotek: Draggor: I'm definitely interested in preventing segfaults though
[16:47] JimBastard: http://github.com/mrohad/Alligator/
[16:47] JimBastard: does that guy idle in here? someone needs to shoot him
[16:47] polotek: if you can provide a really simple test case including the xml you're using I'll take a look
[16:47] mu-hannibal has joined the channel
[16:47] polotek: JimBastard: yeah I saw that. he's definitely trying to recreate php in node
[16:48] _announcer: Twitter: "@maciejzgadzaj How's things Mac? Nice to see you're interested in #nodejs too :D" -- Tane Piper. http://twitter.com/tanepiper/status/21163402392
[16:48] Draggor: polotek: is it errors or errors()?
[16:49] polotek: oh yeah, it's a function call
[16:49] pdelgallego: hi anyone using the node repl inside of emacs ?
[16:50] Draggor: no errors it seems
[16:50] polotek: Draggor: gist me your xml
[16:50] Draggor: oh never mind, errors
[16:51] Draggor: what's the thing that errors() returns?
[16:51] Draggor: this is what I'm doing a GET on: http://magiccards.info/search.html
[16:51] JimBastard: polotek:
[16:52] JimBastard: Marak said less than a minute ago: your alligator project makes me cry a little on the inside. :-(
[16:52] JimBastard: i had to message the guy, before he went too far
[16:52] JimBastard: Draggor: are you using jsdom + jquery for parsing?
[16:52] _announcer: Twitter: "@splitbrain after my rambling in JS writing #zimlets for #zimbra, I, too, find node.js and V8 interesting." -- Dennis Plöger. http://twitter.com/dploeger/status/21163674631
[16:53] Draggor: JimBastard: newp, just libxmljs
[16:53] JimBastard: Draggor: do you enjoy punishment?
[16:53] JimBastard: xpath is brutal
[16:53] JimBastard: jquery is easy
[16:53] Draggor: it's not that bad really, and if I'm getting segfaults, aren't those using libxmljs under the hood anyway?
[16:54] JimBastard: i really gotta get someone to blog about the jQueryify method in jsdom
[16:54] JimBastard: Draggor: yep. we are using it aggressively on a few sites, and we have no issues like the ones you do
[16:54] tmpvar: i want to get it passing all of the sizzle tests
[16:54] Draggor: I can give jsdom and jquery a try, I do very much like jquery
[16:54] polotek: JimBastard: http://github.com/dachev/node-sizzle
[16:55] JimBastard: polotek: why use that over jsdom?
[16:55] sh1mmer has joined the channel
[16:55] polotek: JimBastard: the reason I'm maintaining libxmljs is because libxml is a faster alternative to jsdom
[16:56] polotek: jsdom is definitely better covered by tests and stable
[16:56] polotek: cause it's just js
[16:56] polotek: no segfaults
[16:56] polotek: but libxmljs is dumb fast
[16:56] polotek: and some people like that
[16:56] JimBastard: well i mean, xml is xml and the dom is the dom
[16:56] JimBastard: if i had to deal with webapges, i'd rather use the dom
[16:56] JimBastard: brb, sorry
[16:56] polotek: JimBastard: right, libmxljs provides a dom
[16:57] polotek: that can be wrapped in a w3c environ
[16:57] _announcer: Twitter: "Sick but awesome: PHP based sign-in, pass OAuth tokens from browser to my new WebSockets adapter for the Twitter API, built with #nodejs." -- Jeff Waugh. http://twitter.com/jdub/status/21163980013
[16:58] tmpvar: polotek, i actually tried using libxmljs' sax parser to parse some nasty markup, but it segfaulted up gc
[16:58] tmpvar: s/up/on
[16:58] polotek: tmpvar: how long ago was this?
[16:58] tmpvar: last week
[16:58] polotek: it definitely had memory issues before 0.4.0
[16:58] polotek: and that's still not perfect by any means
[16:59] polotek: the thing I don't really know how good libxml is supposed to be parsing crappy html
[16:59] tmpvar: im pretty sure its awesome
[16:59] _announcer: Twitter: "Haven't done the sign-in process in #nodejs thus far because basic routing, sessions and so on is still a bit wonky." -- Jeff Waugh. http://twitter.com/jdub/status/21164118406
[16:59] tmpvar: anyhow, have you done any benchmarks?
[16:59] polotek: tmpvar: yeah many of the problems are with my bad v8 code :)
[16:59] polotek: but that's why I keep working on it
[17:00] polotek: if I can get it stable, it'll be a nice alternative to jsdom
[17:00] Draggor: JimBastard: got an example of jsdom?
[17:00] polotek: your work is awesome
[17:00] polotek: but alternatives are good
[17:00] tmpvar: yep, i agree
[17:00] tmpvar: ACTION is curious as to the actual speed difference though
[17:00] polotek: tmpvar: let's develop some benchmarks
[17:01] polotek: I'm not that good at it, but I'm up for it
[17:02] tmpvar: sounds good, i guess since jsdom doesnt do "parsing" it should be a pure dom manipulation bench
[17:02] scoates: asking about jQuery in node? (-: http://paste.roguecoders.com/p/9fc0c7a38c3f98cabdc903226fd5084a.txt
[17:02] _announcer: Twitter: "@jdub If you're using connect, check out connect-auth as that supports twitter sign in #nodejs" -- Ciaran Jessup. http://twitter.com/ciaran_j/status/21164360501
[17:02] tmpvar: scoates, wth is that?
[17:03] scoates: (-: experimental branch of webshell with jQuery running
[17:03] tmpvar: i like, what's under the hood?
[17:03] tmpvar: (dom)
[17:04] scoates: http://github.com/fictivekin/webshell/tree/envjs
[17:04] polotek: scoates: webshell uses libxmljs doesn't it?
[17:04] scoates: libxmljs, yeah
[17:04] amerine has joined the channel
[17:04] polotek: tmpvar: the segfaults are definitely centered around dom manipulation
[17:05] pzich has joined the channel
[17:05] _announcer: Twitter: "@ciaran_j Using node-oauth but not connect -> mostly doing ws plumbing in #nodejs for now, will move the rest of the app in there later. :-)" -- Jeff Waugh. http://twitter.com/jdub/status/21164509563
[17:05] polotek: I blame the api for the most part
[17:05] polotek: you have to do lots of parameter cleaning in C++
[17:05] polotek: error prone
[17:05] tmpvar: ah that sucks, how actively are yoou persuing the fixes?
[17:05] polotek: I would like to change things so there's more js
[17:05] polotek: well I"m sitting her yakking with you guys instead ;)
[17:05] tmpvar: ah, yeah.. that sounds smart hehe
[17:06] polotek: but seriously I"m working on it
[17:06] tmpvar: fair enough :)
[17:06] polotek: but right now my priority is porting the api docs to the github wiki
[17:06] polotek: I don't actually have control over the current doc site
[17:07] JimBastard: i gotta go to this company thing, ill bbl
[17:07] tmpvar: peace
[17:07] polotek: JimBastard: later
[17:07] polotek: tmpvar: then there's the one other major issue with using lixml memory
[17:07] polotek: I have to constantly tell v8 about it, make sure it gets GCed
[17:07] polotek: but not before it's supposed to
[17:08] polotek: and minimize how often I have to create the v8 wrappers
[17:08] _announcer: Twitter: "“@_duncan_: To get node.js on plugcomputer,I need to compile V8 from bleeding_edge SVN branch.” good information I need to do the same !!" -- Vincent RABAH. http://twitter.com/itwars/status/21164732031
[17:08] polotek: it's actually pretty crazy
[17:08] _announcer: Twitter: "“@thomasfuchs: In Rails 3, I need a 175 LoC external .js file to do what 1 or 2 lines of inline JS code [did] in Rails 2.” ...hmmmm, #nodejs" -- hij1nx. http://twitter.com/hij1nx/status/21164743542
[17:09] _announcer: Twitter: "@jeremyvisser yeah. most of the app is in the browser, but uses #nodejs as a websockets/twitter-api (rest, stream and user-stream) adapter." -- Jeff Waugh. http://twitter.com/jdub/status/21164802888
[17:11] karboh has joined the channel
[17:12] polotek: Draggor: you still there?
[17:12] Aikar has joined the channel
[17:13] polotek: I'm able to parse and use your html file just fine
[17:13] _announcer: Twitter: "@jdub I'm about to push some updates to node-oauth to provide a better API, I hadn't realised that my post methods sucked so bad. #nodejs" -- Ciaran Jessup. http://twitter.com/ciaran_j/status/21165052432
[17:13] Aku has joined the channel
[17:13] _announcer: Twitter: "WebSockets are awesome... http://socket.io/ delivers cross-client compatibility and a beautiful integration with #nodejs. #html5" -- Jeff Waugh. http://twitter.com/jdub/status/21165070794
[17:13] Draggor: polotek: Yar, got distracted, I'm back now
[17:13] javajunky has joined the channel
[17:13] javajunky: back of holiday.
[17:13] javajunky: 'woot'!
[17:14] polotek: Draggor: can't reproduce your segfault
[17:14] polotek: you've gotta be doing something besides just printing out nodes
[17:14] polotek: are you accessing attributes anywhere?
[17:14] _announcer: Twitter: "@ciaran_j one thing i've had to work around is how node-oauth takes over the response handling #nodejs" -- Jeff Waugh. http://twitter.com/jdub/status/21165156628
[17:14] Draggor: polotek: 32 or 64 bit system?
[17:15] _announcer: Twitter: "@jdub no streaming api support ? .. I do pass back the response object as an optional argument normally, or did I miss one ? #nodejs" -- Ciaran Jessup. http://twitter.com/ciaran_j/status/21165201368
[17:15] _announcer: Twitter: "@ciaran_j node-oauth assumes an immediate transaction, but that doesn't work for, say, the twitter streaming api #nodejs" -- Jeff Waugh. http://twitter.com/jdub/status/21165212735
[17:16] polotek: 64bit mac os x 10.6
[17:16] _announcer: Twitter: "@jdub yeah, this is true, I'd be interested in seeing how I could improve that with your suggestions ? #nodejs" -- Ciaran Jessup. http://twitter.com/ciaran_j/status/21165263802
[17:16] zomgbie has joined the channel
[17:17] _announcer: Twitter: "@ciaran_j so the missing api i'd want is basically, "give me an oauth-ed request instance" #nodejs" -- Jeff Waugh. http://twitter.com/jdub/status/21165309757
[17:18] _announcer: Twitter: "GTUG Campout hackers - come join us in #gtugcampout on irc.freenode.net port 6667. #html5 #nodejs" -- Carlos Cardona. http://twitter.com/cgcardona/status/21165421053
[17:19] _announcer: Twitter: "@ciaran_j (right now i'm calling lots of _ functions, pretty much replacing _performSecureRequest) #nodejs" -- Jeff Waugh. http://twitter.com/jdub/status/21165455957
[17:19] _announcer: Twitter: "# devinsampa node.js is love:) # # mode # on passionate" [pt] -- RoadHouse. http://twitter.com/roudi/status/21165464934
[17:20] _announcer: Twitter: "@jdub there is another oauth (that was based on mine) that provides that api, I forget its name though. Is your code up somewhere? #nodejs" -- Ciaran Jessup. http://twitter.com/ciaran_j/status/21165529147
[17:21] zomgbie has joined the channel
[17:22] javajunky: twitter conversations can be so painful..especially when they're mirrored in here.
[17:22] polotek: is ciaran_j in here?
[17:22] javajunky: ;) yes
[17:23] polotek: javajunky: is it you?
[17:23] javajunky: yes
[17:23] polotek: yeah I was thinking the same thing about node-oauth
[17:23] polotek: I need a signed request
[17:23] overra has joined the channel
[17:24] polotek: javajunky: check this out
[17:24] polotek: http://github.com/polotek/evented-twitter/blob/master/lib/evented-twitter.js#L123-128
[17:24] javajunky: polotek: someone else did write a library that attempted to do this.. I'd be interested to see the use-cases to look at what pattern to implement, as creating the requests can be a faff so by understanding how people use it I could perhaps figure a neat way of doing it
[17:24] javajunky: polotek == @jdub ?
[17:24] polotek: http://github.com/polotek/evented-twitter/blob/master/lib/evented-twitter.js#L161-163
[17:24] polotek: no I'm not @jdub
[17:24] polotek: I'm polotek :)
[17:24] javajunky: ;)
[17:25] polotek: almost everwhere
[17:25] daleharvey has joined the channel
[17:25] polotek: javajunky: my oauth knowledge is limited
[17:25] javajunky: ah you both appear to be trying to solve the same problem I'll see if I can bring him in , we can have an offline discussion perhaps ?
[17:25] polotek: but for requests it amounts to signing it with the proper headers right?
[17:25] _announcer: Twitter: "@jdub can you join me in the nodejs irc room ? #nodejs" -- Ciaran Jessup. http://twitter.com/ciaran_j/status/21165871333
[17:26] javajunky: polotek: yes, taking into account the body of the request in the case of post/put and the url parameters in the case of all etc. etc.
[17:27] polotek: right, so what I want is a little handler that'll take any info it needs
[17:27] polotek: and give me back what I need
[17:27] polotek: in the case of basic auth it just modifies the header object and passes it back
[17:28] jdub has joined the channel
[17:28] javajunky: polotek: I fear that it isn't that simple :( the request object needs to be created exactly correctly or the signing just won't work
[17:29] javajunky: jdub: polotek you're both ( I think) interested in the same kind of api
[17:29] jdub: Twitter: "@ChaosSteffen want to use facebook connect in ma nodejs project... but the plugin sucks a lot" -- Sascha Depold. http://twitter.com/sdepold/status/21166394610
[17:34] polotek: javajunky: yes, I'd be okay with taht
[17:34] SubStack: also I can't just node <<< 'console.log("moo")'
[17:34] Stephen: Heh... HTTP 402 Errors can be a real problem
[17:34] polotek: so it would generate requests that were already "prepared" do do oauth requests
[17:34] SingAlong: where do i find a list of node packages?
[17:34] polotek: but what we would need is a list of things we can't change thereafter
[17:35] jdub: javajunky: well, if someone uses the "give me a request instance" api, they get to choose which foot to shoot (or not)
[17:35] Stephen: npm list
[17:35] Stephen: ;-P
[17:35] polotek: SingAlong: yes, use npm
[17:35] polotek: SingAlong: also http://wiki.github.com/ry/node/modules
[17:35] SingAlong: polotek: ya but i wanted to find pkgs not just install them
[17:35] Stephen: http://github.com/isaacs/npm
[17:35] SingAlong: polotek: thanks! :)
[17:35] karboh has joined the channel
[17:36] SingAlong: polotek: thats the kind of list i was looking for
[17:36] jdub: javajunky: var req = getSecureRequest('GET', 'https://betastream.twitter.com/2b/user.json', headers);
[17:36] jdub: javajunky: something like this? so internally it can do all the preparation for you
[17:36] javajunky: polotek: basically in my ideal situation it would provide requests with no listeners attached, and .end not yet called
[17:37] polotek: oauth.createClient(80, 'betastream.twitter.com');
[17:37] jdub: (and in that, you have the method, scheme, host, path, headers...)
[17:37] polotek: mirror the node apio
[17:37] polotek: api
[17:37] _announcer: Twitter: "playing with #nodejs .. it's very fast! impressive" -- Andrea Franz. http://twitter.com/gravityblast/status/21166605774
[17:38] jdub: polotek: oauth needs a bit more to generate the right headers, sigs, etc.
[17:38] polotek: jdub: I realize that. those would be additional parameters
[17:39] polotek: var client = oauth.createClient(80, 'stream.twitter.com', {/ * oauth params */});
[17:39] ashleydev has joined the channel
[17:39] sh1mmer has joined the channel
[17:41] paulwe_ has joined the channel
[17:41] polotek: var request = client.request('GET', '/1/statuses/firehose', {/ * headers, maybe more oauth stuff */})
[17:41] javajunky: polotek: jdub I guess my concern is that it is very very hard (and messy) to get the signing of requests right, it took an age to get that stuff ready, if the issue people are having is they want direct access to the returned response object (more accurately, they wish to override the response + end listeners .. then there might be a reasonable approach, i.e. instead of providing a single callback function that gets everything to the get + post methods, if
[17:41] ashleydev has joined the channel
[17:42] polotek: javajunky: I hear what you're saying. I just think hiding the flexibility of the node http model is a shame
[17:43] polotek: I'm fine with letting you do your magic before I get the client object
[17:43] polotek: but there after I should be able to use it like a normal client
[17:43] polotek: and if something I do "breaks" the oauth signing
[17:43] polotek: that's my problem
[17:43] polotek: most likely I wouldn't do anything much
[17:44] javajunky: polotek: there are 3 things that are manipulated currently though, the client, the request and the response
[17:44] javajunky: the first two are fairly intrinsically linked, so separating them could be a recipe for trouble
[17:44] polotek: javajunky: why does the client need to be manipulated?
[17:44] polotek: http://github.com/polotek/evented-twitter/blob/master/lib/evented-twitter.js#L241-291
[17:44] polotek: you can see what I"m doing.
[17:44] polotek: nothing fancy
[17:44] javajunky: ACTION refers to code
[17:45] danielzilla has joined the channel
[17:45] cardona507: is there any reason that express wouldn't support CSS3?
[17:45] polotek: setting a few headers. and wrapping the response in my custom stream so I can parse the tweets
[17:45] ashleydev has joined the channel
[17:45] polotek: cardona507: what do you mean "support" css3. it's a serverside framework
[17:45] polotek: javajunky: so it's your client that comes from your createClient function
[17:46] javajunky: cardona507: no.
[17:46] _announcer: Twitter: "@tanepiper Pretty good, thx - just got a project partially based on node.js. Got Socket.IO into the mix and writing the rest myself. Fun!" -- Maciej Zgadzaj. http://twitter.com/maciejzgadzaj/status/21167129861
[17:46] polotek: it's your request the comes from yourclient.request()
[17:46] cardona507: polotek: I mean when I create an index.ejs file and try to style it with css3 gradients it doesn't work
[17:46] polotek: and it can be your response that comes from yourrequest.on('response', ...)
[17:46] polotek: you can make sure you've done the necessary work by wrapping it in your own environment
[17:47] polotek: but I still want the api to look like node's
[17:48] polotek: cardona507: maybe you should describe your problem more
[17:48] polotek: once it's in the browser it has nothing to do with express
[17:48] Stephen: Hmm... another random idea
[17:48] polotek: is your html and css making it to the browser like you expect?
[17:48] cardona507: polotek: yes - all of it except the css3 gradients
[17:48] Stephen: How hard would it be to have node dynamically generate Web Fonts?
[17:48] polotek: the css gradients are "sent". they are rendered in the browser
[17:49] polotek: if you can't see them, it's a problem with your css or your html
[17:49] Stephen: As in literally building the file
[17:49] polotek: Stephen: cool idea, don't know much about generating fonts
[17:49] javajunky: polotek: there is another oauth implementation for node that was based on my work which I think does try to achieve this goal, I'm not sure how I could modify mine to satisfy my requirement of simplifying the process, perhaps I could take some options that allow people to provide their own client factories .. and also provide a mechanism for specifying the response data + end event listeners ?
[17:50] joshbuddy_ has joined the channel
[17:50] javajunky: polotek: found it http://github.com/unscene/node-oauth
[17:50] javajunky: (confusingly named the same as mine!)
[17:51] polotek: javajunky: I tried taking a look at your stuff
[17:51] polotek: but haven't had the time to really spend
[17:51] polotek: if you are using node http client underneath, we should be able to surface that structure a bit more
[17:52] javajunky: polotek: yeah there's no magic other than standardising urls, and making sure parameters and things are available in the right places
[17:53] javajunky: jdub: for your issues, would providing a way of overriding the default passed headers, and the response listener functions be sufficient ?
[17:53] Yuffster has joined the channel
[17:54] Draggor: JimBastard: is there an example of how to use jsdom around?
[17:55] JimBastard: Draggor: im out the door, tmpvar should be able to point you in the right direction
[17:55] JimBastard: the app we have has a really nice api to jsdom, but its all for a client right now so i cant show it
[17:55] JimBastard: :-\
[17:55] JimBastard: sorry
[17:55] JimBastard: bbl
[17:55] Draggor: tmpvar: yar?
[17:57] sudoer has joined the channel
[17:58] qschzt has joined the channel
[17:59] jdub: javajunky: looks like this other module has achieved what polotek and i are looking for, based on your work
[18:00] ruf has joined the channel
[18:00] siculars has joined the channel
[18:01] polotek: jdub: yeah this is basically the api I'm looking for
[18:02] javajunky: jdub: yeah it sounds more up your street, although I will add in the overriding of the default headers (at the level of the OAuth constructor object) and provide a mechanism for building a request object so one can do whatever they wish with it :) .. however that other library looks pretty reasonable..although I know he was having quite a few issues that I helped him through..not sure how compatible it is with all the providers out there atm
[18:03] polotek: javajunky: your lib does seem more comprehensive
[18:03] polotek: would love if you ported some of the ideas
[18:03] polotek: for evented-twitter i really don't need a lot. I don't even need to stream the body
[18:03] ryah: does ie9 have websockets?
[18:03] mattly has joined the channel
[18:04] polotek: I just want to an easy modular way to get a signed request
[18:04] polotek: and be able to stream the response through a parser
[18:04] polotek: ryah: that's the rumor
[18:04] polotek: haven't seen it verified
[18:05] qschzt: so I've heard as well
[18:08] javajunky: polotek: his approach and mine are widly different, I'd say that his is much more idiomatic to the node way, I was gunning for the simplest method possible as 80% of the oauth usage requirements are actually pretty simple, my code shouldn't be sending un-neccessary hard-coded connection headers, I'll fix that definitely and provide a mechanism for providing overriding static headers
[18:08] jdub: polotek: oh, i'm using twitter-stream-parser with userstreams btw :-)
[18:08] polotek: javajunky: I'm not opposed to wrapping node idioms in simple apis. but I would like the underlying flexibility to be there as well.
[18:09] jdub: polotek: you planning to add userstreams support to evented-twitter at some point?
[18:09] polotek: jdub: cool, let me know if you run into issues with it
[18:09] polotek: yeah, it's just a matter of changing the host
[18:09] polotek: it's hard coded right now
[18:09] jdub: yeah, starting with the idiomatic approach is helpful, you can always build utility functions on top of it
[18:10] polotek: I might just surface it as a subclass of TwitterStream
[18:10] polotek: UserStream
[18:10] javajunky: polotek: yeah, this is generally a good idea, simplify, but allow exposure of the underlying stuff, I'm just not really sure how to get from where i am at the mo to there without duplicating his work, it seems sensible to me to direct people to his api for that style.
[18:10] polotek: javajunky: would you accept some patches, I could take a stab at it
[18:11] _announcer: Twitter: "a webserver in JS/Node is faster than Apache... thanks to evented I/O , v8 & Node.JS #jsRocks" -- Aditya. http://twitter.com/NetRoY/status/21168647666
[18:11] polotek: I don't know the ins and outs of oauth but I could probably adapt what you have to be more node idiomatic
[18:11] luddep has joined the channel
[18:11] javajunky: polotek: I'm always happy to accept patches, ideally they would introduce new methods/ mechanisms rather than change (in incompatible ways) the existing APIs
[18:11] polotek: javajunky: totally
[18:13] javajunky: man do I regret not using a named hash for the arguments to the constructor function ;)
[18:13] polotek: hehe, yeah
[18:14] polotek: dealing with parameters is one of the suckiest things in programing IMO
[18:14] polotek: they change all the time,
[18:14] polotek: you have to worry about types
[18:14] dnolen has joined the channel
[18:14] digitalspaghetti: yea, i should probably use named hashes in some of my stuff
[18:14] tyfighter has joined the channel
[18:15] polotek: you have to decide when to surface exceptions or what "sensible" defaults are
[18:15] digitalspaghetti: i tend to do that, but i got lazy in some recent code :D
[18:15] polotek: js is nice with object hashes
[18:15] polotek: but python gets it right
[18:15] polotek: *args and **kwargs
[18:15] polotek: awesome
[18:15] digitalspaghetti: i did it when i wrote jmaps a couple of years back
[18:15] micheil: digitalspaghetti: hello.
[18:15] digitalspaghetti: but then i got stuck in PHP hell so i picked up some bad habits again
[18:16] digitalspaghetti: micheil: hey :D
[18:16] micheil: pastemonkey in node.js, you up for it?
[18:16] micheil: :P
[18:16] digitalspaghetti: well it would be infinetly better than that PHO version
[18:16] digitalspaghetti: *PHP
[18:16] micheil: lol
[18:16] digitalspaghetti: which is still around on my github
[18:16] polotek: damn
[18:16] micheil: is it?
[18:16] polotek: now I want vietnamese noodle soup
[18:17] digitalspaghetti: http://github.com/digitalspaghetti/pastemonkey
[18:18] micheil: digitalspaghetti: were we even github users back in 2007?
[18:18] micheil: I thought we did something else to get the designs up
[18:18] digitalspaghetti: no, but i imported it
[18:18] digitalspaghetti: from google code i think
[18:19] micheil: ah, yes, the svn days
[18:19] digitalspaghetti: although that's not a terrible idea for me to learn node.js
[18:19] digitalspaghetti: (to re-write it)
[18:20] micheil: heh
[18:20] micheil: you could even do it with YUI on the server
[18:20] SubStack: single-hash args <3
[18:21] digitalspaghetti: YUI? It was jQuery i'm pretty sure?
[18:21] digitalspaghetti: i've never used YUI
[18:22] Gruni has joined the channel
[18:23] javajunky: jdub: polotek K, http://github.com/ciaranj/node-oauth/commit/24c91e02b9640647ac8ceb53ec575b6d6e948eff has the option to specify the headers that aren't required by some oauth provider or another. polotek, if its cool with you I'll wait to see what you come up with before I make a decision on returning the response/request object.
[18:23] polotek: javajunky: word. might not have anything for a bit
[18:23] polotek: focusing on libxmljs this weekend
[18:24] javajunky: polotek: okey doke, I need to fix some bits and bobs on connect-auth anyhow
[18:24] polotek: ACTION gets back to porting documentation
[18:25] micheil: digitalspaghetti: my point exactly. YUI runs on node.js
[18:26] digitalspaghetti: oh?
[18:26] digitalspaghetti: i've been mainly using ExtJS recently myself, that's what i'm building my current app with
[18:26] paulwe has joined the channel
[18:26] digitalspaghetti: so what, node.js serves up YUI-based views?
[18:26] micheil: sort of, YUI can be rendered on the server into a fake document
[18:27] qschzt: what's a great alternative to Ext? :)
[18:27] micheil: I don't know much about it really, but yeah
[18:27] micheil: qschzt: dojo toolkit, YUI, etc.
[18:27] micheil: Ext.js is one of the best UI wise though
[18:27] micheil: (that I've seen / looked closely at)
[18:27] digitalspaghetti: yea, it's a enterprisey app, so needs a good desktop-like UI :)
[18:28] polotek: YUI is awesome
[18:28] polotek: there is just soooo much there
[18:28] qschzt: mmm
[18:28] digitalspaghetti: it's a bit of a gamble doing enterprise in node.js but heh :D
[18:28] polotek: and some of the UI's make me cring
[18:29] polotek: correction, some of the APIs make me cring
[18:29] hammerdr has joined the channel
[18:30] qschzt: good point, YUI.
[18:33] Aaron_ has joined the channel
[18:33] qschzt: of course the less featureful jQuery UI must be mentioned http://jqueryui.com/
[18:35] micheil: digitalspaghetti: remember working on that? ^
[18:35] micheil: that first few months of api instability was hell for jQuery UI.
[18:37] gJ|Alex has joined the channel
[18:39] alexkwolfe_ has joined the channel
[18:40] digitalspaghetti: yea
[18:40] digitalspaghetti: to be honest i'm still not happy with it, so that's why i'm using Ext instead
[18:41] micheil: digitalspaghetti: I'm still writing my own frameworks, when not using YUI or Dojo Toolkit
[18:41] digitalspaghetti: that's the plan with this app, i'm building it on Express + CouchDB
[18:43] micheil: nice
[18:43] micheil: I'm thinking of using CouchDB for Ideocase
[18:43] micheil: when I eventually back it with a database
[18:43] mbleigh has joined the channel
[18:43] daleharvey: ACTION does not have a lot of love for jqueryui
[18:44] digitalspaghetti: well tbh i'm looking at couchdb, i'm a bit concerned about the non-relationsl stuff
[18:44] digitalspaghetti: *relational
[18:44] micheil: well, couchdb, vs mongodb, vs, riak.
[18:44] daleharvey: or ext for that matter, I generally like to roll my own stuff
[18:44] micheil: that's where I'm looking.
[18:44] digitalspaghetti: but i'm hoping that with node.js that won't matter, looking up on keys should be fast enough for what i'm doing
[18:45] qschzt: daleharvey, looking at the combinations of offerings, yeah.
[18:45] digitalspaghetti: daleharvey: yea, i liked your sfcave clone code
[18:45] qschzt: fraid you're going to end up rolling your own :)
[18:45] mbleigh: i'm a bit of a node.js n00b, and i'm running into problems getting express running
[18:45] digitalspaghetti: i was thinking of taking some of it and doing a small clone for the JS1k compo
[18:45] micheil: digitalspaghetti: depends what your relations are, and if you can embed the data
[18:45] _announcer: Twitter: "Nodejs and Erlang are hinting at the path to good, maintainable multiprocessing. Whatever we end up, it will NOT be threading." -- Scott Bronson. http://twitter.com/sabron/status/21170601326
[18:46] mbleigh: when i try to run server.js (trying to get it set up for heroku) i get "Cannot set property 'version' of undefined"
[18:46] digitalspaghetti: micheil: a lot of it is 'grid' stuff, so you have a row with a lot of self contained data, but a couple of relationship
[18:46] micheil: hmm..
[18:46] micheil: try mongodb
[18:46] daleharvey: cheers, cool gimme a shout if you do
[18:46] SingAlong_ has joined the channel
[18:46] digitalspaghetti: for example in a 'facility' in my code, there are owners and delegates which are both roles, i need to have them in a different table
[18:47] micheil: similar ideas to couch in storing everything as json
[18:47] digitalspaghetti: micheil: i was, but i could not get the node driver to compile on ubuntu 10.04 x64
[18:47] micheil: oh
[18:47] micheil: pita.
[18:47] digitalspaghetti: yea, but i saw someone was working on another driver
[18:47] polotek: mbleigh: send a gist or pastebin of your app
[18:47] polotek: or a simple test case
[18:48] digitalspaghetti: tbh i could probablty get away with a lot of stuff in couch in the beginning
[18:48] tekky has joined the channel
[18:48] digitalspaghetti: since it'll be the same 'schema' in mongo
[18:48] siculars has joined the channel
[18:48] fod has joined the channel
[18:49] sh1mmer: what's that console.log sys.inspect oneliner?
[18:49] mbleigh: polotek: http://gist.github.com/4a5ac8eaa6b926b76b7e
[18:50] micheil: digitalspaghetti: some non-normalisation is good.
[18:51] digitalspaghetti: the other thing i like the look of in mongo is indexing
[18:51] TangoIII has joined the channel
[18:51] digitalspaghetti: as some of the fields would be good as select boxes
[18:52] digitalspaghetti: like the 'type' field i have
[18:52] micheil: you can store, like: {"key": true} in mongo
[18:53] digitalspaghetti: i might try compile node-mongodb again and see if i can fix the issue
[18:53] polotek: ugh, coffeescript ;)
[18:53] digitalspaghetti: the issue seems to be around gcc compilation flags anyway
[18:54] polotek: mbleigh: it looks like a version incompabitility issue at first glance
[18:54] digitalspaghetti: coffeescript, why?
[18:55] polotek: what versions of node and express are you using?
[18:55] mbleigh: node 0.1.104 and express cloned from master today
[18:55] polotek: sh1mmer: console.log doesn't integrate sys.inspect right now
[18:56] sh1mmer: oh
[18:56] polotek: you can do console.log(sys.inspect(obj));
[18:56] polotek: I tried to get them to put it in there
[18:56] sh1mmer: I thought someone has written a one liner for that
[18:56] polotek: but was booed down
[18:56] sh1mmer: polotek I know
[18:56] sh1mmer: ok
[18:56] sh1mmer: I might just write a function for which wraps sys
[18:56] polotek: sh1mmer: if it's json you can do console.log('%j', obj);
[18:56] sh1mmer: and assigns it
[18:57] polotek: it'll run it through JSON.stringify
[18:57] sh1mmer: because I'm always doing that line
[18:57] sh1mmer: hm
[18:57] sh1mmer: polotek what about depth?
[18:57] polotek: nope, it's pretty simplistic
[18:57] sh1mmer: also, stringify doesn't work for buffers
[18:57] polotek: sh1mmer: yeah I know. only json properties
[18:57] polotek: you want sys.inspect
[18:58] polotek: so do I
[18:58] sh1mmer: :)
[18:58] polotek: but it's met with resistance :)
[18:58] sh1mmer: ACTION goes off to write a helper
[18:58] qschzt: i need sys.inspect, sys.puts, console.log etc to log into a file, or a scribe server, or similar. do I roll my own?
[18:58] mscdex: woohoo! success! \o/
[18:58] polotek: oh!
[18:58] polotek: sh1mmer: it looks like it is in there
[18:59] micheil: is it crazy to be talking about how to reduce browser repaints from the context of a JS lib?
[18:59] mscdex: streaming rtp audio in pure js :-D
[18:59] sh1mmer: qschzt: there are a couple of existing servers to do logging, apache style, elf, etc
[18:59] mscdex: worked on the first try
[18:59] sh1mmer: polotek: what's the command?
[18:59] polotek: http://github.com/ry/node/blob/master/src/node.js#L667-692
[18:59] polotek: you just can't pass a format string first
[18:59] polotek: console.log(buffer)
[18:59] polotek: it's in a fairly recent version of node
[18:59] qschzt: sh1mmer, yah, i checked them out, guess I'll roll my own :)
[19:00] sh1mmer: qschzt: what are you working on? A scribe client?
[19:00] qschzt: scribe server support could be cool, also rewriting Scribe for node could be good
[19:00] javajunky: mbleigh: what verison of connect as well
[19:00] sh1mmer: polotek: awesome. nom nom nom.
[19:00] _announcer: Twitter: "Change(b)log: node.js + Socket.IO: Cannot Connect to Web Socket Server (SecurityError) Solution: http://bit.ly/a5j5jZ #nodejs" -- Maciej Zgadzaj. http://twitter.com/maciejzgadzaj/status/21171407928
[19:00] qschzt: sh1mmer, nah, just need proper logging :)
[19:01] sh1mmer: qschzt: what's wrong with the existing libs?
[19:01] javajunky: mbleigh: I literally just wrote: http://wiki.github.com/ciaranj/connect-auth/express-twitter-example and I know that works with the npm version of express and the HEAD version of connect/master
[19:01] polotek: qschzt: writing to files in node is pretty easy
[19:01] qschzt: well.. afaik there is no scribe support. I think I'm going to need that. Looking at the Scribe code then, isn't great
[19:01] polotek: sys.puts and console are for stdout
[19:02] mu-hannibal has joined the channel
[19:02] polotek: you want to just create your own writeStream to a file and log to it
[19:02] softdrink has joined the channel
[19:03] qschzt: yah, not a problem in the small scale, replace those functions and you're done.
[19:03] digitalspaghetti: oh yea, so had anyone thought of doing a node sprint yet? :D
[19:03] mscdex: hmm.... does anyone know why even after clearing an interval (the only thing that was on the event loop), the process still stays open?
[19:04] polotek: digitalspaghetti: a sprint? you mean like node knockout?
[19:04] sh1mmer: qschzt: it seems like you could wrap one of those libs and then push to scribe
[19:04] polotek: mscdex: what were you doing in the interval?
[19:04] javajunky: grrr why can I *never* find my static twitter oauth tokens …goddammit why is that page so hidden
[19:04] sh1mmer: writing them again from scratch seems like a waste unless you are looking for the learning experience
[19:04] mscdex: polotek: just reading synchronously from a file
[19:05] qschzt: sh1mmer, yeah, probably will do that
[19:05] digitalspaghetti: polotek: if we mean the same thing, yes :D similar to django sprints (http://www.djangoproject.com/weblog/2007/sep/06/sprint/)
[19:05] sh1mmer: qschzt: well let me know what you do, I'd be interested to see
[19:05] polotek: http://nodeknockout.com/
[19:05] Draggor: xml2js parses stuff out weird
[19:05] qschzt: ok, i'll definitely look into it on monday :)
[19:06] mscdex: oh wait, nevermind. i know what the problem is
[19:06] polotek: mscdex: test case?
[19:06] digitalspaghetti: ahh polotek yea i saw that, no as that's a competition
[19:06] _announcer: Twitter: "@chacon what about http://github.com/yahoo/boomerang ? I'm currently writing a Node.js based backend for it." -- Tom. http://twitter.com/sh1mmer/status/21171750878
[19:07] digitalspaghetti: no a sprint is working on the core project, closing tickets, adding or re-writing features - or at least working on test cases
[19:08] programble has joined the channel
[19:08] c4milo has joined the channel
[19:08] polotek: digitalspaghetti: oh yeah, I agree that would be sweet
[19:09] polotek: I don't know if ryah has defined the milestone for getting to 0.2.0
[19:09] polotek: I know there are a few really tough problems left
[19:10] qschzt: agile node :D
[19:11] Viriix has joined the channel
[19:11] sh1mmer: hm. Rendering in Node is broken
[19:11] hansek has joined the channel
[19:11] sh1mmer: node-repl
[19:12] jashkenas has joined the channel
[19:12] ewdafa has joined the channel
[19:12] Gruni has joined the channel
[19:13] polotek: sh1mmer: ?
[19:13] sh1mmer: console.log(sys.inspect()) adds a lot of crazy space in the shell
[19:14] qschzt: sh1mmer, use eyes :) npm install eyes
[19:14] sh1mmer: eyes?
[19:14] wattz: happy saturday
[19:14] qschzt: http://github.com/cloudhead/eyes.js/
[19:14] mscdex: oh man this is so awesome
[19:15] mscdex: i don't have to write a binding now
[19:15] eisd has joined the channel
[19:15] _announcer: Twitter: "Trying to work out how to pass variables to a file when using require in #nodejs. Stumped at the moment." -- Matthew Denner. http://twitter.com/mattdenner/status/21172205644
[19:15] wattz: ACTION pokes mscdex
[19:15] mscdex: wattz up?
[19:15] wattz: HA
[19:15] sh1mmer: oh that's purty.
[19:15] digitalspaghetti: polotek: well if no one would mind, i could maybe come up with some 'rules' for one. i'd probably run it by ryah first, but could be a good idea
[19:16] digitalspaghetti: maybe something like what are the top x things that need fixed, could they be done in a weekend with enough developers
[19:16] wattz: i might just be insane...
[19:16] wattz: just a bit
[19:16] polotek: !tweet @mattdenner hop into #node.js irc and we'll try to help
[19:18] polotek: hmmm, did I get the tweet thing wrong?
[19:18] wattz: have to have permission?
[19:19] polotek: wattz, maybe
[19:19] stagas: polotek: it doesn't echo it to the irc but it's posted
[19:19] jashkenas: are y'all using http://github.com/reid/node-jslint for your Node JSLint needs? Or is there something more integrated with Node?
[19:19] stagas: http://twitter.com/nodejsbot
[19:19] polotek: I guess it wouldn't do to have any random dude in the room sending tweets
[19:20] polotek: stagas: ah, word. thanks
[19:20] polotek: random dudes, start tweeting
[19:20] wattz: lol
[19:20] wattz: these C++ differences between leopard and snow leopard are realllllyyyy annnnooyyyyinng
[19:21] robotarmy has joined the channel
[19:21] overra: nodejsbot is neat
[19:22] polotek: ACTION starts getting smart and using macros to edit the text efficiently
[19:22] polotek: ACTION also loves emacs
[19:23] wattz: polotek: i used emacs a llooonnnggg time ago
[19:23] wattz: vim too
[19:23] wattz: but i have to say, textmate is nice
[19:24] polotek: wattz: I hear textmate is nice. but it's mac only
[19:24] polotek: dealbreaker
[19:24] wattz: what are yo on?
[19:24] wattz: linux?
[19:24] polotek: I've got a mac at home
[19:25] polotek: but Windoze only at work
[19:25] wattz: try e editor
[19:25] wattz: textmate for windows
[19:25] polotek: wattz: compatible with all the bundles and such? keeps up with updates to textmate?
[19:26] wattz: yeah it is
[19:26] wattz: updates to textmate o_.
[19:26] Aria has joined the channel
[19:26] wattz: tm hasn't been updated in a while
[19:26] wattz: we are all waiting on 2.0 to come out, been a few years
[19:26] wattz: lol
[19:26] polotek: wattz, what's the shortcut for cutting an entire line of text in textmate?
[19:26] polotek: that's my simple gauge for an editor
[19:27] wattz: let me look
[19:27] wattz: i don't use that
[19:27] wattz: i mapped vim commands
[19:27] qschzt: heh
[19:27] polotek: 0_o how do you get anything done?
[19:27] wattz: very fast :D
[19:28] digitalspaghetti: i love e, but as i'm doing node stuff on ubuntu in a vm i can't really use it, it's linux support even in wine is pretty poor :(
[19:28] qschzt: command left, command shift right, delete
[19:28] wattz: digitalspaghetti: aye.
[19:28] digitalspaghetti: but gedit with a few plugins works just as well i find
[19:28] wattz: digitalspaghetti: i setup a smb drive and just edit on mac, and run in vm
[19:28] polotek: qschzt: womp womp
[19:28] jashkenas has left the channel
[19:28] polotek: more than 2 keysstrokes
[19:28] SingAlong_ has joined the channel
[19:28] digitalspaghetti: wattz: that is an idea
[19:29] wattz: digitalspaghetti: it's super fast, obviously and convient
[19:29] polotek: that's cool if you have permission
[19:29] wattz: for web dev i can minimize my vm
[19:29] qschzt: *eyes roll*
[19:29] digitalspaghetti: i'm using vm workstation anyway
[19:29] wattz: qschzt: roll for what?
[19:29] wattz: lol
[19:29] digitalspaghetti: so it's pretty easy to do that
[19:29] polotek: wattz: cause of me I assume
[19:30] wattz: ctrl+shift up
[19:30] polotek: I use tramp in emacs for remote editing
[19:30] wattz: deletes line
[19:30] polotek: also need proper permissions. but it's nice
[19:30] wattz: i use to love using joe to edit
[19:30] polotek: wattz: but does it put it in your clipboard?
[19:30] wattz: im not going to look again
[19:30] wattz: lol
[19:30] wattz: most mac devs get use to using command + arrows
[19:31] qschzt: everybody must use vi. stfu.
[19:31] konobi: does vmware not let you treat a linux app the same as a windows app (shortcuts and everything)
[19:31] wattz: qschzt: vim <3
[19:31] qschzt: (I use TextMate)
[19:31] jdub: vim is indeed less than 3
[19:31] wattz: qschzt: :D
[19:31] wattz: konobi: coherence mode?
[19:31] wattz: sorta
[19:31] polotek: wattz: I don't mind command + arrows. I just want the command to do what I want
[19:31] FransWillem has joined the channel
[19:31] wattz: polotek: write your own bundle ;)
[19:32] eisd: jdub: lol
[19:32] polotek: I would actually love to switch to vim
[19:32] konobi: yar
[19:32] konobi: vim++
[19:32] konobi: gvim, etc.
[19:32] polotek: simply cause it's always available on any *nix system
[19:32] wattz: vimx
[19:32] polotek: but I HATE command mode
[19:32] wattz: my vim is prolly rusty
[19:32] wattz: vim takes practice, lol
[19:32] polotek: I want a seamless environment for regular editing and complex commands
[19:33] polotek: don't wanna switch back and forth
[19:33] wattz: OMG ECLIPSE!?!?!?!!!
[19:33] wattz: APTANA
[19:33] wattz: Xcode 4 is pretty badass
[19:33] daleharvey has joined the channel
[19:33] polotek: wattz: I would use an IDE too but they have really poor editing semantics
[19:33] polotek: really good for managing the rest of your project, but I can't be fast in them
[19:34] wattz: well... you hate everything.
[19:34] maqr has joined the channel
[19:34] polotek: wattz: yep, I hate stuff about emacs event
[19:34] wattz: there i said it, konobi wanted too, but i went a head and did.
[19:34] polotek: but it's the closest thing to right for me that I've found
[19:34] wattz: polotek: i bet you hate spelling and grammer too :D
[19:34] wattz: im picking ;)
[19:34] polotek: no, I hate my desk
[19:35] polotek: it's a little too high so I can't type comfortably
[19:35] polotek: hence spelling errors
[19:35] wattz: ...
[19:35] qschzt: pico!
[19:35] polotek: ;)
[19:35] wattz: so should have configure class done to day for Bob
[19:35] polotek: man, somebody should really talk about node
[19:35] wattz: qschzt: Nano + syntax file! :D
[19:35] saikat has joined the channel
[19:35] wattz: bob is a build system built on v8
[19:36] qschzt: omg editor flamewar on #node.js
[19:36] wattz: but platform independent... so not really node.
[19:36] wattz: qschzt: i don't think it's a flame war..
[19:36] wattz: here, let me start a flame war..
[19:36] wattz: WINDOWS SUX0rZ!
[19:36] qschzt: who cares!
[19:37] polotek: windows does suck as a development environment
[19:37] wattz: lmao
[19:37] wattz: here we go
[19:37] wattz: qschzt: sick'em!
[19:37] polotek: although to be fair, windows 7 doesn't suck for general computing
[19:37] polotek: they fixed a lot of the usability issues
[19:38] polotek: I'm just spouting opinions here. not trying to offend anyone
[19:38] polotek: in fact the only reason I'm doing this is so I don't have to write documentation
[19:38] polotek: ACTION gets back on task
[19:39] hippondog has joined the channel
[19:40] qschzt: must.. work.. on.. windows..
[19:40] danielzilla has joined the channel
[19:40] wattz: "I wouldn't call it working bob"
[19:41] jsilver has joined the channel
[19:41] polyrhythmic has joined the channel
[19:42] qschzt: sorry, windows, node.js isn't for you. :)
[19:43] robrighter has joined the channel
[19:44] javajunky has joined the channel
[19:45] maushu: Its working for me.
[19:47] tango3 has joined the channel
[19:47] joshbuddy has joined the channel
[19:52] tg has joined the channel
[19:54] _announcer: Twitter: "Some high-content node.js videos: @ryah http://bit.ly/9tGDpB, @jedschmidt http://bit.ly/ddY8UJ, and @izs http://bit.ly/atkEkK." -- Matt Ranney. http://twitter.com/mranney/status/21174185558
[19:56] ehaas has joined the channel
[20:00] mape: Anyone tried getting dtrace running on linux?
[20:03] Draggor: How do I test if an object is an array? I'm being a newb
[20:03] ehaas: use underscore.js
[20:03] ehaas: http://documentcloud.github.com/underscore/
[20:04] SubStack: [] instanceof Array # true
[20:04] [[zz]] has joined the channel
[20:04] ehaas: with node you can also do Array.isArray(obj)
[20:05] deepthawtz has joined the channel
[20:05] SubStack: orly
[20:05] eisd: js> [ [] instanceof Array, [].constructor === Array ]
[20:05] gbot2: eisd: [true,true]
[20:05] eisd: yeah, ES5 has isArray()
[20:06] polotek: Draggor: I second the suggestion to use underscore
[20:06] polotek: it'll use the native isArray if available
[20:06] polotek: but will also port to a browser
[20:08] Draggor: this is all serverside nodejs stuff I'm doing
[20:08] rnewson has joined the channel
[20:08] rnewson has joined the channel
[20:08] mape: Anyone had issues compiling the latest version of node on OSX?
[20:09] polotek: mape: no, I just did it last night
[20:09] polotek: I'm on 10.6
[20:09] _announcer: Twitter: "Is anyone testing their front-end #javascript code using #nodejs and #vows? Just wondering if there's a pattern for how to do it." -- Matthew Denner. http://twitter.com/mattdenner/status/21174964935
[20:09] mape: 10.6.3..
[20:09] polotek: Draggor: then yeah, you can take advante of the newest es5 stuff in chrome
[20:10] mape: http://gist.github.com/524669
[20:11] _announcer: Twitter: "Via a tweet from @ wycats nodejs.org I find ... I have to go back to reconnect with these things" [es] -- Ayose. http://twitter.com/ayosec/status/21175040793
[20:11] polotek: mape: sorry, I have no clue
[20:11] mape: Ah, guess I needed to configure it first
[20:11] polotek: I'm so bad with build stuff
[20:11] ehaas: mape: i recall seeing that...i want to say configure fixed it
[20:11] ehaas: nice
[20:11] alcuadrado has joined the channel
[20:14] _announcer: Twitter: "Just got Node.js up and running and wrote my first little HelloWorld app. #javascript" -- Schalk Neethling. http://twitter.com/ossreleasefeed/status/21175241860
[20:15] TobiasFar has joined the channel
[20:15] sh1mmer: mape: demoing wargamez again today
[20:15] sh1mmer: so you all have to do stuff at about 3.10pm
[20:16] ehaas: what timezone
[20:16] sh1mmer: PDT
[20:16] sh1mmer: 2 hours
[20:16] bronson has joined the channel
[20:18] digitalspaghetti: foo
[20:18] alcuadrado: bar
[20:19] polotek: I should be around
[20:19] polotek: I'll bomb some people for you
[20:19] hansek has joined the channel
[20:19] digitalspaghetti: it's a little delayed but that's cool sh1mmer
[20:19] digitalspaghetti: :D
[20:19] tilgovi has joined the channel
[20:19] sh1mmer: digitalspaghetti: ?
[20:19] sh1mmer: wargamez?
[20:20] digitalspaghetti: yea
[20:20] digitalspaghetti: i've got it open just now
[20:20] sh1mmer: yeah
[20:20] digitalspaghetti: how do i register for it and play? :D
[20:22] sh1mmer: just talking in the channel is playing
[20:22] sh1mmer: digitalspaghetti: see
[20:22] tmpvar: digitalspaghetti, boooom!
[20:22] tmpvar: ACTION puts away his nukes
[20:22] polotek: it would cool if the map had a heatmap overlay
[20:23] polotek: for areas that were more "irradiated"
[20:23] digitalspaghetti: oh it's just i see my text, but i don't see myself on the map
[20:23] digitalspaghetti: tmpvar: boom
[20:23] sh1mmer: I dunno if mape published that
[20:23] mape: sh1mmer: What?
[20:23] sh1mmer: wargamez
[20:23] sh1mmer: did you make the source public?
[20:23] tmpvar: yarr, ye sunk my battleship
[20:23] mape: Oh yeah, it is on my github
[20:23] sh1mmer: digitalspaghetti: write a heatmap on top
[20:23] mape: tmpvar: pew pew
[20:24] benburkert has joined the channel
[20:24] tango3: mape:boom
[20:25] digitalspaghetti: tango3: boom
[20:25] mape: digitalspaghetti: it can't find your coordinate
[20:25] tmpvar: tango3, mape, sh1mmer: !
[20:26] tango3: I dont live there =P
[20:26] tmpvar: tango3, mape, sh1mmer: !
[20:26] digitalspaghetti: ahh, i'm not on my local machine thats's probably why
[20:26] tango3: is it just random ?
[20:26] digitalspaghetti: i[m in screen+irssi on webfaction
[20:26] mape: tmpvar: it only does the first match, so people don't spam ;)
[20:26] digitalspaghetti: if i did pick me up, probably would stick me in dallas
[20:26] mape: well your host is digitalsp@drupal.org/user/88490/view
[20:27] tango3: I live in san diego
[20:27] digitalspaghetti: ugh, that vhost is very old
[20:27] mape: well it is your current
[20:27] TrueShot has joined the channel
[20:27] sh1mmer: that'll teach you to cloak
[20:27] tango3: is boom the only command ?
[20:28] mape: hehe there is no boom command
[20:28] sh1mmer: tango3: you just have to mention someone's nick
[20:28] tango3: oh
[20:28] mape: tango3: just mentions
[20:28] tango3: go it
[20:28] digitalspaghetti: might disconnect late and throw on mirc then :D
[20:28] digitalspaghetti: and not identify
[20:28] digitalspaghetti: *later
[20:28] mape: should work then
[20:30] tango3: the text in the upper right is done in canvas ?
[20:31] mape: Nothing is in canvas
[20:31] mape: Or hm..
[20:31] polotek: tango3: it's svg
[20:31] mape: I don't even remember how I did it
[20:32] mape: Not sure if I make the connect lines svg
[20:32] mape: the map is though
[20:32] mape: oh yeah, they are svg as well
[20:33] polotek: mape
[20:33] _announcer: Twitter: "@ Msuarz that ball, you've thrown a look at what people are doing with node.js ..." [es] -- alexguev. http://twitter.com/alexguev/status/21176140560
[20:33] mape: polotek: ?
[20:33] polotek: yes, lines are also svg
[20:33] polotek: adds a path stroke every time a nick is mentioned
[20:33] mape: Yeah, weren't initially, if I remember correctly Dmitry sent a patch for that
[20:34] _announcer: Twitter: "Working on HTML5 websockets and node.js with @deepthawtz and @hazyrum at GoogleHQ. #HTML5 #nodejs #gtugcampout" -- Carlos Cardona. http://twitter.com/cgcardona/status/21176184627
[20:34] tango3: polotek
[20:34] polotek: ah, the text is in html though
[20:34] mape: Yeah, no reason not to
[20:34] tango3: how do you get the cool font ?
[20:34] polotek: it's just that the map sits on top so you can't highlight.'
[20:35] konobi: tango3: look at the CSS
[20:35] konobi: webfonts ftw
[20:35] mape: polotek: What is it that you can't mark?
[20:35] tango3: ah
[20:35] cardona507: webfonts FTW +1
[20:35] cardona507: :)
[20:35] polotek: mape: you can't highlight the text
[20:36] polotek: that's why I thought it was rendered instead of html at first
[20:36] JimBastard: man i am soo fucking stupid
[20:36] mape: polotek: what browser?
[20:36] JimBastard: why did i think i could find this bbq at prospect park without looking at the directions or writing them down
[20:36] JimBastard: that place is fucking huge
[20:36] astrolin_ has joined the channel
[20:37] AAA_awright: What's the ideal way to store and load a configuration file?
[20:37] polotek: chrome for mac
[20:37] mape: Hmm works here
[20:37] sh1mmer: polotek: %s is string, %j is stringify? is there something to pass through sys.inspect ?
[20:37] digitalspaghetti has joined the channel
[20:38] JimBastard: AAA_awright: json
[20:38] JimBastard: AAA_awright: and the fs module?
[20:38] JimBastard: i dunno what you talking about specifically
[20:38] polotek: hm, only works if I try to highlight in certain ways
[20:38] AAA_awright: I figured json, how do I load it?
[20:38] JimBastard: fs module + JSON.parse()
[20:38] polotek: aaand it just crashed my tab
[20:38] polotek: sh1mmer: no, that's my beef
[20:39] polotek: if the first arg isn't a string
[20:39] astrolin_ has joined the channel
[20:39] AAA_awright: JSON already exists?
[20:39] sh1mmer: polotek: but the snippet you sent me only has stringify
[20:39] polotek: it passes everything through sys.inspect
[20:39] digitalspaghetti: tharr i have been uncloacked
[20:39] digitalspaghetti: *uncloaked
[20:39] polotek: but there is no format param for sys.inspect
[20:39] sh1mmer: http://github.com/ry/node/blob/master/src/node.js#L667-692
[20:39] digitalspaghetti: Bird of prey targets sh1mmer : boom
[20:40] sh1mmer: polotek: is there an issue for it
[20:40] sh1mmer: ?
[20:40] _announcer: Twitter: "node.js + html5 == web based 'itunes'" -- Jake. http://twitter.com/jkestr/status/21176522831
[20:40] polotek: no, I submitted a patch with it
[20:40] polotek: it was rejected
[20:40] polotek: or it was ignored I should say
[20:41] polotek: it's dumb easy to add it
[20:41] polotek: I have it in my fork
[20:41] polotek: it just didn't go into master
[20:41] sh1mmer: hm
[20:42] sh1mmer: I'll nag too
[20:42] sh1mmer: :D
[20:42] polotek: sh1mmer: please do
[20:43] dylang has joined the channel
[20:43] digitalspaghetti has joined the channel
[20:43] mape: Anyone had issues with npm on OSX where it can't find the modules?
[20:44] cardona507: what is the express module to include to do logging?
[20:44] polotek: mape: helped someone out with it yesterday
[20:44] mape: cardona507: that is the connect logger
[20:44] polotek: did you ever install node through homebrew?
[20:44] cardona507: mape: thnx
[20:45] javajunky: cardona507: connect module, http://senchalabs.github.com/connect/logger.html
[20:45] polotek: cardona507: check out connect/examples in the src. lots of good stuff there
[20:45] mape: polotek: know isaacs always says to not use sudo and I assume it has something to do with that... have to do sudo node and sudo npm.. since I don't have write access to local/bin I assume
[20:45] mape: polotek: nope, git clone on both and make **
[20:45] cardona507: javajunky: polotek - will do thanks
[20:45] polotek: mape: I changed the npm path to ~/.node_libraries
[20:46] polotek: to do away with that nonsense
[20:46] dylang_ has joined the channel
[20:46] mape: the sudo part?
[20:46] tango3: anyone here use jsonrpc from connect framework ?
[20:46] polotek: mape: yeah, I don't have to sudo npm at all
[20:47] tango3: I cant get it to work
[20:47] polotek: I do sudo make install on node, that's only once in a while
[20:47] mape: So how would I go about fixing the path?
[20:47] polotek: anyway, check require.paths and the $NODE_PATH env variable
[20:47] polotek: to see if they have the locations you expect
[20:48] moritz has joined the channel
[20:48] digitalspaghetti: ACTION wonders how many Sencha employees lurk here? :D
[20:49] nrstott has joined the channel
[20:49] polotek: npm config set path /path/to/modules
[20:49] dylang: i have to always do sudo in osx for npm.
[20:49] dylang: i think you can reset npm's config by not setting a path
[20:49] polotek: sorry
[20:49] polotek: npm config set root /path/to/thing
[20:50] maritz: hey, how would i best share objects between scripts. (e.g. i don't want all my application code in one file but have some common objects, that are heavily shared like db access and models)
[20:50] polotek: you can do npm config list
[20:50] polotek: to get the current settings
[20:50] polotek: and you can also override any settings by creating a ~/.npmrc
[20:50] polotek: that's what I have
[20:51] JimBastard: tango3: lol
[20:51] digitalspaghetti: maritz: make them modules :D
[20:51] alcuadrado: Hey guys, I'm wondering wether to make or not a MMORPG game in node.js (server) and HTML5 (client).. but, I can figure out how would I manage it's security :s as you can create a cheat in JS, pase it in the direction bar and that's all you need
[20:51] JimBastard: yell at tj or tim
[20:51] mape: polotek: Ah ended up with sudo chown -R mape /user/local instead, now I don't have to use sudo for either of them :)
[20:51] JimBastard: open an issue
[20:51] polotek: maritz: create modules for each of the components you want to share
[20:51] polotek: var db = require("db-config").getDB();
[20:51] _announcer: Twitter: "the language of the day was with js node.js, but just moved to Sherle. extension. pl and at least 2 system () and four `` without duties." [pt] -- gleicon. http://twitter.com/gleicon/status/21177123154
[20:51] mape: Hmm still can't find them though..
[20:51] polotek: or some such
[20:52] polotek: mape: chowning /usr/local is not a bad idea
[20:52] digitalspaghetti: alcuadrado: that's not really up to node to do though, you need to write the security :D
[20:52] maritz: if i define something in a required file and then require it in another file as well, won't the definition exist in 2 seperate places?
[20:52] digitalspaghetti: it'd alsmost be like writing protection from XXS attacks
[20:52] digitalspaghetti: *XSS
[20:52] alcuadrado: yeah, I know digitalspaghetti, just wanted to know if anyone had any idea :p
[20:52] tango3: im building a game with node, all the game data is manipulated server side
[20:52] digitalspaghetti: maritz: what, like in other languages like Python, C, Java :p
[20:53] mape: Doesn't seem like node adds node_libraries in my home dir though
[20:53] derferman has joined the channel
[20:53] alcuadrado: tango3, but you still able to write an increible powerful bot, and pretty easy :p
[20:53] maritz: digitalspaghetti: no idea about those. i lack a lot of sleep and might just missing something really obvious here :D
[20:53] polotek: maritz: you return an exported object from your module
[20:53] polotek: it has an api
[20:53] polotek: there's only one copy of it
[20:53] maritz: oh, ok
[20:53] polotek: you can require("db-config") as many times as you want
[20:54] maritz: so requiring it again does not create another "instance" of it
[20:54] polotek: maritz: it does not execute the module file again. it's cached
[20:54] polotek: you get the exact same object
[20:54] maritz: okay :D
[20:54] maritz: thanks
[20:55] polotek: aww man. I gotta get oauth into my twitter module
[20:55] polotek: just go an email about them shutting down basic auth
[20:55] polotek: keep forgetting about it :P
[20:55] blackdog_ has joined the channel
[20:56] polotek: mape: did you figure out your problem? if not, did you check your paths?
[20:56] mape: polotek: So shouldn't node look in /usr/local/lib/node ?
[20:56] mape: the stuff is there
[20:56] polotek: not unless it's configured to do so
[20:56] polotek: that's why I said check require.paths
[20:56] polotek: most times it's wrong and people don't realize it
[20:57] _announcer: Twitter: "#gtug #campout #google - all i left them with was a #nodejs #expressjs #couchdb ajaxendpoint and some lousy docs and no unit tests #lol" -- Sebastian Schürmann. http://twitter.com/sschuermann/status/21177403775
[20:57] mape: polotek: Hmm it does.., but connect isn't there even if npm says so.. *fiddles*
[20:57] polotek: mape: what version of npm?
[20:57] mape: latest git clone && make dev
[20:58] mape: seems to work out if I remove and install the module again
[20:58] polotek: I had to reset npm by running scripts/install.sh
[20:58] polotek: there was some glitchy switch over between a few versions
[20:58] polotek: but scripts/install.sh always installs cleanly and fixes any issues
[20:59] mape: Jup seems to work now
[20:59] polotek: try that and then do npm list installed
[20:59] mscdex: node-rtp up \o/
[20:59] jakehow has joined the channel
[20:59] polotek: mscdex: what's that?
[21:00] mscdex: polotek: audio streams over udp basically.
[21:00] polotek: nice
[21:00] mscdex: in pure js :-D
[21:00] _announcer: Twitter: "hmm 90 loc just for configuration... should think about some nice strategy for managing that :) #nodejs" -- Sascha Depold. http://twitter.com/sdepold/status/21177581185
[21:00] digitalspaghetti: i need to come up with a non-public auth and ACL :/ not looking forward to it
[21:01] mscdex: it is still missing a lot of stuff, but it sends audio at least right now
[21:03] mape: polotek: Since you are running node on osx, ever had issues with node not listening to the port? I'm trying to do localhost:port but it doesn't work..
[21:04] digitalspaghetti: mscdex: github link?
[21:04] polotek: mape: nah, no problems with listening
[21:04] polotek: are you getting errors?
[21:04] Kryckan has joined the channel
[21:04] jsilver has joined the channel
[21:05] mape: No, just that it denies connections, and the app doesn't output anything
[21:05] mscdex: digitalspaghetti: http://github.com/mscdex/node-rtp
[21:05] mape: And using port 40000 so shouldn't be that it is restricted
[21:07] _announcer: Twitter: "Basho's Riak-core looks like an awesome way to build distributed systems. It's a message passing system to build on. Want Node.js driver" -- Tom. http://twitter.com/sh1mmer/status/21177990328
[21:07] Kryckan: Complete Node newbie here. I have installed node.js + npm and successfully (I think) installed express. Now I have created a js file and tries to require express but it can't find the module. code: var app = require('express').createServer(), error: Cannot find module 'express'.
[21:07] dylang: mape: thanks for the quick assetmanager fix today
[21:07] polotek: man, lots of people having issues with express lately
[21:07] mape: dylang: np, worked out well?
[21:07] polotek: isaac should show up
[21:07] javajunky: Kryckan: what does npm list @installed tell you ?
[21:08] sh1mmer: polotek: means it's being used :)
[21:08] javajunky: s'good means its gaining usage.
[21:08] Draggor: woo success with xml2js
[21:08] javajunky: just wish the connect that was in npm worked well with it :(
[21:08] dylang: mape: well... two new issues. did the yui compressor jar get removed?
[21:08] mape: It shouldn't
[21:08] mape: it is in deps?
[21:09] dylang: mape: ah - i need to put it in my own deps directory? i might have missed that in the readme.
[21:09] mape: hmm eek.. no
[21:09] mape: but perhaps the path is wonky
[21:09] mape: or hmm.. no it shouldn't be
[21:09] mape: dylang: http://github.com/mape/connect-assetmanager-handlers/tree/master/deps/
[21:10] Kryckan: javajunky: hmm It returns 'Nothing found' but when I install express it says 'ok' which should indicate it is installed?
[21:11] dylang: mape: yeah saw that - and npm should be picking that up, right? i'll check my local repo. this is the error i got: "Command failed: Unable to access jarfile deps/yuicompressor-2.4.2.jar"
[21:12] mape: yeah working for me, how are you calling the node.js app?
[21:12] polotek: Kryckan: that's weird
[21:12] dylang: mape: also maybe i'm using this wrong - i'm trying to use it through express. i'm loading the app via dj
[21:12] polotek: check out /usr/local/lib/node
[21:12] polotek: what's in there?
[21:12] digitalspaghetti: hmm, this Raik looks interesting as an alternative to couchdb/mongodb
[21:12] mape: dylang: I'm using it with express as well
[21:12] polotek: also do npm config list
[21:12] _announcer: Twitter: "Seems certain people in the ruby community has identified node.js as a threat and is now doing the typical dissing of the "new" platform." -- Christian Kvalheim. http://twitter.com/christkv/status/21178295769
[21:12] polotek: and see what the value of the root variable is
[21:13] mape: dylang: doing http://gist.github.com/524724
[21:13] _announcer: Twitter: "Change node.js for ruby and ruby for Java and it's 2005. Wohoo the classic amnesia of our industry. Pick the right tool for the job fools" -- Christian Kvalheim. http://twitter.com/christkv/status/21178339286
[21:13] mape: where assets is var assets = assetManager which is var assetManager = require('connect-assetmanager');
[21:13] dylang: mape: okay thanks. i did confirm the jar is in the right place.
[21:14] mape: perhaps the path to it is messing up?
[21:16] Kryckan: polotek, javajunky: Tried to use mongoose too but gets the same error so the package manager seems to be fucked up on my machine
[21:17] polotek: Kryckan: did you check out the dir? /usr/local/lib/node
[21:17] polotek: are the packages there?
[21:17] rnewson has joined the channel
[21:18] dylang: mape: /usr/local/lib/node/.npm/connect-assetmanager/active/package/deps/step/lib/step.js:36
[21:18] dylang: throw arguments[0];
[21:18] dylang: mape: TypeError: Property '0' of object ,function (file, path, index, isLast, callback) {
[21:18] mape: Hmm how does your config look?
[21:19] dylang: mape: kinda messy now from moving some things around, i'll throw a gist up (my first gist!)
[21:19] mape: hehe k
[21:19] Kryckan: polotek: Yes I have packages there
[21:20] javajunky: Kryckan: I have to sudo npm everything fwiw
[21:20] dylang: http://gist.github.com/524734
[21:20] Kryckan: javajunky: ok I will try that
[21:20] satori_ has joined the channel
[21:21] polotek: Kryckan: what does "npm config get root" say?
[21:21] mape: dylang: don't think you need reload views anymore, if I recall correctly tj removed the stale templates in developer mode
[21:21] mape: but I meant more the manager groups
[21:21] mape: ie the paths/files
[21:22] Kryckan: polotek: http://gist.github.com/524736
[21:22] Kryckan: polotek: It reports two config files. Is that normal?
[21:23] polotek: ah, homebrew :)
[21:23] polotek: defintely seen that problem lately
[21:23] polotek: did you install node through homebrew?
[21:24] Kryckan: polotek: Yes.
[21:24] polotek: Kryckan: yes it's normal, one of them is the global config
[21:24] polotek: ~/.npmrc is specific to your user
[21:24] polotek: just .bashrc and such
[21:24] polotek: Kryckan: anyway, it looks like homebrew and npm aren't playing well right now
[21:24] Kryckan: polotek: aha ok
[21:24] polotek: the very easiest thing for you to do is symlink ~/.node_libraries to /usr/local/lib/node
[21:25] polotek: node will always look in ~/.node_libraries
[21:25] Kryckan: polotek: ah ok thanks I will try that
[21:27] Kryckan: polotek: Awesome! it works. The night is saved.
[21:28] polotek: Kryckan: cheers
[21:28] _announcer: Twitter: "Now playing: @jedschmidt's (fab) v0.5 preview from the #nodejs meetup last week: http://bit.ly/ddY8UJ (hat tips to @senchainc and @mranney)" -- Jed Schmidt. http://twitter.com/jedschmidt/status/21179201967
[21:31] dylang has joined the channel
[21:31] dylang: mape: i got disconnected after posting the gist. i'll go back to the logs later to see what you wrote. thanks for the help.
[21:32] mape: dylang: :)
[21:32] Kryckan: MongoDB or CouchDB for Node? Which one has best support? When working with Ruby on Rails MongoDB has much better support for the moment.
[21:33] Kryckan: With support I mean drivers/documentation etc
[21:35] tmedema has joined the channel
[21:35] polotek: Kryckan: couch has awesome docs. and rather than drivers, you're supposed to use the REST api
[21:35] polotek: very easy
[21:36] polotek: that's what most people end up doing in node
[21:37] polotek: as for mongo. node-mongodb-native seems to be the most active. it's pretty nice.
[21:37] Kryckan: polotek: OK. I have recently ended a Rails project with MongoDB so maybe it's time to dig deeper into CouchDB this time
[21:37] wattz: Mongo has some scale issues
[21:37] polotek: wattz: howzat?
[21:37] panzi has joined the channel
[21:37] polotek: mongo does have issues but I didn't think scale was one of them
[21:37] wattz: was using it for a contract/web service storage for an iphone app
[21:37] wattz: and i crushed it
[21:38] maushu has joined the channel
[21:38] dylang: mape: i've updated the gist with my entire app.js - most of the asset handing in commented out because of the errors i get.
[21:38] polotek: cool. what kind of hardware?
[21:38] panzi: is it possible to somehow monkey patch String in a module so that String is also patched in the module that requires the one that does the patching?
[21:38] mape: dylang: what was the gist
[21:38] mape: ?
[21:38] panzi: I want to add two methods: format and repeat
[21:38] polotek: panzi: don't do that
[21:38] polotek: but yes
[21:39] dylang: http://gist.github.com/524734
[21:39] polotek: panzi: if you're trying to test it in the node-repl it won't work
[21:39] Kryckan: wattz: Do you mean it has scaling issues when used together with Node? Or just in general?
[21:39] polotek: the repl behaves a little differently so each time you submit, you get new globals
[21:39] wattz: haven't used it with node
[21:39] polotek: try your code in an actual script
[21:39] wattz: it was with a python web service
[21:39] wattz: i beat the snot out of the service though
[21:40] mape: dylang: if you remove the entire preManipulate part does it not trigger step errors?
[21:41] maqr has joined the channel
[21:41] herbySk has joined the channel
[21:41] dylang: mape: enabling any one of the assetHandler.* causes the error
[21:42] mape: if you console.log(assetHandler) what do you get?
[21:42] _announcer: Twitter: "is that COMIC SANS on @sh1mmer's node.js slides? I do believe it is!" -- DevNation. http://twitter.com/dev_nation/status/21180011415
[21:42] feroz_ has left the channel
[21:43] mape: Oh yeah when was sh1mmer demoing?
[21:43] dylang: { yuiJsOptimize: [Function]
[21:43] dylang: , yuiCssOptimize: [Function]
[21:43] dylang: , fixVendorPrefixes: [Function]
[21:43] dylang: , fixGradients: [Function]
[21:43] dylang: , stripDataUrlsPrefix: [Function]
[21:43] dylang: , replaceImageRefToBase64: [Function]
[21:43] dylang: , fixFloatDoubleMargin: [Function]
[21:43] dylang: }
[21:43] mape: yeah, so that should work.. if you only use say fixGradients and fixVendorPrefixes
[21:43] mape: still get errors?
[21:44] dylang: yes
[21:44] _announcer: Twitter: "wow. @sh1mmer using Comic Sans for entire node.js preso at #devnation because "that's how awesome node is." // into it." -- Mark Phillips. http://twitter.com/pharkmillups/status/21180134299
[21:45] _announcer: Twitter: "Now time for node.js ... @sh1mmer is hilarious. #devnation" -- Peter Skomoroch. http://twitter.com/peteskomoroch/status/21180172260
[21:45] polotek: mape: he said he'd be ready to demo wargamez around 3:10 PDT
[21:45] ajsie has joined the channel
[21:45] mape: Ah k
[21:46] mape: dylang: Hmm, not really sure
[21:46] _announcer: Twitter: "@sh1mmer is so confident in his node.js talk that he did it in comic sans and says we won't hate him by the end" -- Tim Connor. http://twitter.com/timocratic/status/21180265810
[21:47] dylang: mape: okay thanks for trying - i'll take a break and look again later. thanks a ton!
[21:47] mape: dylang: The least I can do, awful of me to release broken software ;)
[21:48] _announcer: Twitter: "@christkv I interpret it as a post motivated by multiprocess being the smost used setup in Rails, rather than vs node.js (despite the intro)" -- Xavier Noria. http://twitter.com/fxn/status/21180344676
[21:48] deepthawtz has joined the channel
[21:49] allengeorge has joined the channel
[21:49] tekky has joined the channel
[21:49] joshbuddy has joined the channel
[21:50] dylang: mape: i wouldn't enjoy this so much if it was easy from day 1. plus i'm really thankful for your work. i'm glad i didn't need to build it!
[21:51] mape: Hehe, as long as it works out in the end
[21:51] _announcer: Twitter: "Just watched the @fabjs video - A no-magic and clean jQuery-inspired framework for #nodejs. Can't wait to try it" -- Tane Piper. http://twitter.com/tanepiper/status/21180512366
[21:51] maushu: Hmmm, I will split the brain in sections.
[21:53] maushu: The control section which receives data from the other sections and sends it to the soul, the sould sends the commands.
[21:54] mape: http://yehudakatz.com/2010/08/14/threads-in-ruby-enough-already/
[21:55] bpot has joined the channel
[21:56] polotek: rlwrap no longer gives history support in node?
[21:57] codemariner has joined the channel
[21:58] digitalspaghetti: mape: that's why i like Yehuda, he's not dissing node, but dissing silly people in the ruby community :)
[21:58] digitalspaghetti: although personally i don't like ruby
[21:58] mape: Good arguments are good arguments :)
[21:58] splict_ has joined the channel
[21:59] polotek: digitalspaghetti: I don't like ruby either
[21:59] polotek: it's irksome because the ruby community has been doing some amazing things since it was jumpstarted by rails a few years ago
[21:59] digitalspaghetti: I'm a Python Neckbeard who got stuck in PHP hell for 5 years
[21:59] mape: LAMP shop?
[21:59] digitalspaghetti: yea :(
[22:00] polotek: same here. been doing php for the last 3 years
[22:00] polotek: had never looked at before
[22:00] mape: Hehe lucky me I'm a frontend dev so I don't have to think much about that when working
[22:00] polotek: I was amused by everyone else's rants
[22:00] polotek: until I experienced it for myself
[22:00] digitalspaghetti: polotek: oh yea, and you have to give rails it's dues for kickstarting the current growth in web dev
[22:00] polotek: in all it's glorious horror
[22:00] JimBastard: ror was built on arrogance and spite
[22:00] polotek: digitalspaghetti: yeah rails was a big deal
[22:00] polotek: but I give most of the credit to ajax actually
[22:01] digitalspaghetti: JimBastard: that too :D
[22:01] mape: That and border-radius :P
[22:01] polotek: it was ajax that made everyone take another look at js and start building kickass web apps
[22:01] JimBastard: node is built on experience and patience
[22:01] digitalspaghetti: polotek: yea, Rail's worst decision was to go with Prototype as core
[22:01] JimBastard: javascript has been kicking peoples asses for a long time, we are somewhat humble
[22:01] mape: Are they still using it?
[22:02] digitalspaghetti: because everyone* chose jQuery in the end
[22:02] digitalspaghetti: *(not everyone)
[22:02] JimBastard: 75% ?
[22:02] JimBastard: 85%?
[22:02] polotek: digitalspaghetti: run into some MooTools guys and mention how jQuery "won"
[22:02] polotek: you'll get your ass handed to you
[22:02] JimBastard: or phiggins
[22:02] mape: Hehe
[22:02] nrstott: polotek, even better, what about dojo
[22:02] JimBastard: ^^^
[22:02] digitalspaghetti: JimBastard: close i'd say, i mean if M$ backs you you probably have won
[22:02] JimBastard: trolling phiggins about jquery is fun as shit
[22:02] polotek: I worked with some of the dojo guys years ago
[22:03] polotek: when it was still slow and buggy
[22:03] polotek: and it was still badass
[22:03] polotek: haven't caught up with it in a while
[22:03] polotek: Ext.js looks more interesting
[22:03] polotek: better UI widgets
[22:03] nrstott: i wish id started using dojo earlier, now the switch from jQuery to dojo seems like it would be a pain, but dojo looks way better
[22:03] JimBastard: lulz
[22:03] polotek: nrstott: jquery and dojo are really different classes of solutions
[22:04] polotek: dojo is a full stack for the client-side
[22:04] EyePulp: there is no fear (or better code) in this dojo
[22:04] polotek: it has a ton of cool stuff in it
[22:04] digitalspaghetti: polotek: uyes, i've been using Ext.js for about a month or so as jQueryUI just doesn't cut it for what i need
[22:04] polotek: same with YUI
[22:04] digitalspaghetti: very nice
[22:04] nrstott: polotek, i realize and a lot of what im using jQuery for would be better-served via a full-stack solution
[22:04] polotek: and Ext.js
[22:04] jwm: Twitter: "btw, js is ugly but * think * I made a library of actors for node.js using pens as the mailbox." [pt] -- gleicon. http://twitter.com/gleicon/status/21182338915
[22:24] JimBastard: !tweet @gleicon url? link? github?
[22:24] digitalspaghetti: heh does _announcer translate on the fly?
[22:25] JimBastard: digitalspaghetti: yep
[22:25] JimBastard: and i just twatted back at that guy
[22:25] JimBastard: !translate English:Spanish I want tacos please.
[22:25] _bastardbot: Quiero tacos por favor.
[22:25] digitalspaghetti: ooh, that is nice
[22:25] JimBastard: :-)
[22:25] mscdex: pens as a mailbox?
[22:25] JimBastard: http://github.com/Marak/translate.js
[22:27] joshbuddy has joined the channel
[22:27] mscdex: JimBastard: that's quite an assumption... "simple as cake." There are a lot of cakes that aren't simple
[22:27] mscdex: ;-)
[22:28] Aria: pens as mailbox -- redis as mailbox.
[22:28] Aria: Overtranslated there.
[22:28] digitalspaghetti: !translate English:German That is nice
[22:28] _bastardbot: Das ist schön
[22:28] JimBastard: mscdex: yeah i dunno, that marak guy is strange
[22:28] mscdex: !seen marak
[22:28] JimBastard: i met him one time at this thing
[22:28] mscdex: dun dun dun
[22:29] JimBastard: he kept smoking dutches and dancing
[22:30] EyePulp: did the duchess mind him doing that?
[22:30] saikat has joined the channel
[22:30] mscdex: iPulp!
[22:31] EyePulp: ole¿
[22:31] JimBastard: they were a little split up about the whole ordeal at first but it all came together in the end
[22:32] EyePulp: !translate English:German I love my three dog.
[22:32] _bastardbot: Ich liebe meine drei Hunde.
[22:32] JimBastard: !translate English:German My hat has three corners.
[22:32] _bastardbot: Mein Hut hat drei Ecken.
[22:32] JimBastard: !translate English:German Three corners has my hat
[22:32] _bastardbot: Drei Ecken hat mein Hut
[22:32] JimBastard: !translate English:German and if my hat didn't have three corners
[22:32] _bastardbot: und wenn mein Hut nicht über drei Ecken
[22:33] JimBastard: !translate English:German it would not be my hat
[22:33] _bastardbot: es wäre nicht mein Hut
[22:33] mape: You sing that in the US?
[22:33] EyePulp: !translate English:German Lovely lady lumps
[22:33] _bastardbot: Lovely Lady Klumpen
[22:33] EyePulp: =)
[22:33] JimBastard: mape: naaah
[22:33] mscdex: !translate English:English lol
[22:33] _bastardbot: lol
[22:34] EyePulp: !translate English:German was ist heute?
[22:34] _bastardbot: was ist heute?
[22:34] mape: !translate English:German \n
[22:34] _bastardbot: \ N
[22:34] JimBastard: i just know that song from my limited understanding of german culture
[22:34] mscdex: !translate English:English !translate English: English
[22:34] _bastardbot: !translate English: English
[22:34] mape: !translate English:German \n\n\n\n\n\n\n\n
[22:34] _bastardbot: \ N \ n \ n \ n \ n \ n \ n \ n
[22:34] mscdex: !translate English:English !translate English:English lol
[22:34] _bastardbot: !translate English:English lol
[22:34] JimBastard: nice try mscdex
[22:34] mape: well that doesn't make sense
[22:34] mscdex: :-D
[22:34] EyePulp: JimBastard: that's universal
[22:35] mscdex: my tries are always nice
[22:35] JimBastard: EyePulp: did not know, only learned it in german
[22:35] EyePulp: !translate English:German Laugh out loud
[22:35] _bastardbot: Laut lachen
[22:35] EyePulp: LL
[22:35] mape: !translate English:Japanese !tweet I am a robot. Thank you.
[22:35] _bastardbot: ！私はロボットですさえずる。ありがとうございます。
[22:35] mape: duh
[22:35] mscdex: !translate English:German fuuuuuuuu zalgo
[22:35] _bastardbot: fuuuuuuuu zalgo
[22:35] mscdex: huhu
[22:36] JimBastard: !translate English:Japanese obey ͈͚̦̫͔̥͙̝͔͙̼͙͓̲͔͔̳͚̜͈̰͖ ̗̮̩̪͈̖̰̞͍͚̘̙̤̗̬̤̣͔͎̫̺̘̠̮͙̲͇̠̗͔͇̳̤̣͚͓̝̰̼̠̩͚̫̗̦̻͔͍͈̤̰̟͔͇̜̖̞͍̭͕̱̹̲̤̙̰̙̼͎̖͎̲̪̳̻̯̝̤̺̻͍͚̻͍̰̦̗̯̱͖̖̗̻̲̺̺̻͉̪̼̳̭͉͈̹̻̫̤̙̮̝
[22:36] _bastardbot: 従うは͈͚̦̫͔̥͙̝͔͙̼͙͓͔͔̳͚̜͈̰͖̗̮̩̪͈̖̰̞͍͚̘̙̤̗̬̤̣͔͎̫̺̘̠̮͙͇̠̗͔͇̳̤̣͚͓̝̰̼̠̩͚̫̗̦̻͔͍͈̤̰̟͔͇̜̖̞͍̭͕̹̤̙̰̙̼͎̖͎̪̳̻̯̝̤̺̻͍͚̻͍̰̦̗̯͖̖̗̻̺̺̻͉̪̼̳̭͉͈̹̻̫̤̙̮̝
[22:36] JimBastard: thanks _bastardbot
[22:37] mscdex: !translate English:English JimBastard: yw
[22:37] _bastardbot: JimBastard: yw
[22:37] mscdex: I DIDN'T DO IT
[22:37] JimBastard: ITS ALIVE
[22:37] polotek: JimBastard: can you use locale shorthands for the languages?
[22:37] polotek: translate eng:eng?
[22:37] JimBastard: polotek: i choose to use the full name for ease
[22:38] polotek: shorter === easier
[22:38] JimBastard: but the local pairs will work, you'd have to tweak the code slightly, but google accepts them
[22:38] mscdex: !translate English:PigLatin woohoo
[22:38] _bastardbot: Woohoo
[22:38] Dmitry1 has joined the channel
[22:38] mscdex: :/
[22:38] JimBastard: polotek: no its not, its a fucking lookup table
[22:38] mscdex: !translate English:PigLatin node
[22:38] _bastardbot: nodo
[22:38] polotek: easier to type
[22:38] mscdex: hrm
[22:38] polotek: I don't care if machines have it easy
[22:38] polotek: they have no feelings
[22:38] mscdex: !translate English:PigLatin pig latin
[22:38] _bastardbot: Pig Latin
[22:38] mscdex: weird
[22:38] JimBastard: {"Afrikaans":"af","Albanian":"sq","Arabic":"ar","Armenian ALPHA":"hy","Azerbaijani ALPHA":"az","Basque ALPHA":"eu","Belarusian":"be","Bulgarian":"bg","Catalan":"ca","Chinese (Simplified)":"zh-CN","Chinese (Traditional)":"zh-TW","Croatian":"hr","Czech":"cs","Danish":"da","Dutch":"nl","English":"en","Estonian":"et","Filipino":"tl","Finnish":"fi","French":"fr","Galician":"gl","Georgian ALPHA":"ka","German":"de","Greek":"el","Haiti
[22:39] JimBastard: you might have the abiltity to remember all that, i dont
[22:39] mscdex: cutoff fail!
[22:39] JimBastard: except Hungarian
[22:39] JimBastard: hu:hu
[22:39] hij1nx: JimBastard: wad up dog
[22:39] polotek: you don't have to remember all of it
[22:39] JimBastard: hij1nx: causing dramascript, the usual
[22:39] polotek: just the one's you're using
[22:40] hij1nx: JimBastard: haha, master of asshole "PR"
[22:40] JimBastard: i call it "yellsourcing"
[22:40] mscdex: JimBastard: what about allowing "auto" ?
[22:41] JimBastard: mscdex: translate.js supports that
[22:41] sh1mmer: mape: ok I'm done
[22:41] sh1mmer: mape: yay demos
[22:41] mscdex: JimBastard: how?
[22:41] JimBastard: !translate Yo quero tacos por favor.
[22:41] _bastardbot: Por favor quero tacos.
[22:41] mape: sh1mmer: It went well? :)
[22:41] mscdex: oh
[22:41] JimBastard: hrmmm
[22:41] sh1mmer: talking about node always goes well
[22:41] JimBastard: maybe its Eng:Spn
[22:41] mscdex: but no destination language
[22:41] JimBastard: !translate where are my tacos bitch
[22:41] _bastardbot: son mis tacos perra
[22:41] mape: hehe
[22:41] _announcer: Twitter: "Great lecture today at # devinsampa. Among those who could see the emphasis on lectures @ Shiota (DesignersxDevelopers) and @ emerleite (NodeJS)" [pt] -- Bruno Caimar. http://twitter.com/brunocaimar/status/21183338964
[22:41] JimBastard: there you go
[22:42] JimBastard: mscdex: you mean for outgoing tweets?
[22:42] JimBastard: fuck
[22:42] JimBastard: i got real work to do
[22:42] mscdex: no, like allowing: !translate auto:english son mis tacos
[22:42] mscdex: or something
[22:43] mscdex: blargh
[22:43] mscdex: go ninja go ninja go
[22:45] _announcer: Twitter: "@sh1mmer @3rdEden that's a node.js client for Riak K/V" -- Kevin Smith. http://twitter.com/kevsmith/status/21183540528
[22:50] polotek: ugh
[22:50] polotek: so check it out.
[22:51] polotek: in libxmljs, if you have an element and you want to a child or a sibling
[22:51] polotek: you just do ele.addChild(mychild)
[22:51] polotek: all good
[22:51] polotek: but if you call it with anything other than a libxmljs node
[22:51] polotek: it craps out and segfaults
[22:51] polotek: because it doesn't check parameters very well
[22:52] polotek: this is the kind of stuff I have to fix
[22:54] bpot has joined the channel
[22:54] _announcer: Twitter: "Hey #devnation don't forget to rate my Node.js presentation http://speakerrate.com/talks/4289-say-hello-to-node-js" -- Tom. http://twitter.com/sh1mmer/status/21184016160
[22:56] jashkenas has joined the channel
[22:57] robotarmy has joined the channel
[22:57] jashkenas: What are the advantages to using JavaDoc-style block comments in JS, instead of just a naked /* before and */ after? I know there's some differences in tooling support, but was wondering if there's a really good reason to use one or the other...
[23:02] polotek: jashkenas: other than for generating docs, I can't see why.
[23:02] polotek: maybe some IDEs do something with em
[23:02] polotek: but who the hell uses those
[23:02] polotek: ;)
[23:02] jashkenas: thanks, man.
[23:03] dispalt has joined the channel
[23:04] splict_ has left the channel
[23:04] adamholt has joined the channel
[23:05] rsms has joined the channel
[23:05] technoweenie has joined the channel
[23:06] _announcer: Twitter: "But the recent distribution of the ML node.js Key Value store there is some anecdotal stories. Or whatever it Riak. Distributed K / V store and I guess a hot topic for server-side engineers today. I was in the sidelines." [ja] -- oogatta. http://twitter.com/oogatta/status/21184662832
[23:06] joshbuddy has joined the channel
[23:06] technoweenie: wtf
[23:09] mape: ?
[23:10] dylang: mape: taking a break fixed the second problem. i had an extra , in the array of handlers. [ , handler]
[23:10] dylang: mape: i didn't think that was valid js.
[23:11] mape: ah k
[23:11] mape: So working now?
[23:12] dylang: mape: i wonder if the yuicompressor is related to another problem i had where the path in node when running spawn was not correct (it included a gnu path which i doubt exists on this mac laptop)
[23:12] mape: Hmm yeah, not really sure why it can't seem to find it, that should be relative within that module, not the one requiring it
[23:19] hij1nx has joined the channel
[23:20] dylang: mape: in my few seconds of playing with exec('pwd' ...) - it always results in my apps directory - not the module that calls it.
[23:20] dylang: mape: are you in osx or linux? i wonder if this is a node issue in osx only.
[23:21] mscdex: dylang: set the cwd parameter
[23:21] mape: I developed it on linux, right now I'm using it on OSX
[23:21] mscdex: or is that spawn...
[23:21] mscdex: hrm
[23:21] mscdex: nope, exec has it too
[23:22] dylang: mscdex: the problem i'm having is a module installed via npm is trying to exec and the isn't found - it's relative to the module and should be okay.
[23:22] mscdex: dylang: exec('pwd', { cwd: __dirname }, function(err, stdout, stderr) { .. });
[23:22] mscdex: that lets you set the cwd for the child process
[23:22] dylang: mscdex: line 10 here: http://github.com/mape/connect-assetmanager-handlers/blob/master/lib/handlers.js
[23:23] joshthecoder: could anyone explain why in the node src when creating the constructor template it first gets stored into a local? example: http://github.com/ry/node/blob/master/src/node_buffer.cc#L710
[23:23] joshthecoder: I am sure their is a reason, just curious what it is :)
[23:23] _announcer: Twitter: "@christkv "industry" demands for monoculture, polyglot is loss of control. evented ain't no silver bullet. and node.js is great (we use it)." -- kimologe. http://twitter.com/kimologe/status/21185603371
[23:23] _announcer: Twitter: "Very good devinsampa #. Comi cavies, who says that's wrong no free lunch. Great talk by @ emerleite Node.JS rocks" [pt] -- lucabastos. http://twitter.com/lucabastos/status/21185626640
[23:24] mscdex: dylang: i don't know how npm works, but you could try the line i pasted above or something similar
[23:25] mscdex: if you can figure out what the cwd should be, you can set it like that
[23:25] polotek: joshthecoder: not necessary, but not really a problem
[23:25] polotek: why?
[23:25] joshthecoder: guess it help avoid one really long line
[23:26] joshthecoder: polotek: oh it's no problem, I am just trying to understand the v8 binding process the best I can
[23:26] polotek: word. I'm semi skilled from working with libxmljs
[23:26] polotek: I can try to answer questions
[23:26] _announcer: Twitter: "nodejs commonjs js innovations just keep on surprising" -- Grant MacKenzie. http://twitter.com/grantmacken/status/21185785640
[23:26] polotek: v8 is a beast
[23:27] Throlkim has joined the channel
[23:27] polotek: technoweenie: git wikis
[23:27] digitalspaghetti: so q: How are people doing their user signup/login with non-RMDBS + node?
[23:27] polotek: is there no way to get an indented block, without the blockquote formatting?
[23:27] digitalspaghetti: (as a general question)
[23:28] nrstott: digitalspaghetti, im using couch login and session
[23:28] digitalspaghetti: nrstott: any decent documentation on using it? I'm using couchdb at the moment
[23:28] polotek: digitalspaghetti: yeah you can use one that comes with your data store
[23:29] polotek: or you have to roll it yourself by decoding cookies
[23:29] nrstott: digitalspaghetti, ive got a lib that's ... coming along that abstracts the signup in the master branch... i have cookie login working too on my local but trying to perfect that at the moment :)
[23:29] polotek: connect has a session manager that is a pretty basic implementation
[23:29] polotek: http://github.com/senchalabs/connect/blob/master/lib/connect/middleware/session.js
[23:29] nrstott: digitalspaghetti, http://github.com/nrstott/couchdb-commonjs
[23:29] nrstott: goal is to have a module that via nodules works in browser and on server
[23:29] digitalspaghetti: polotek: were i'm buikding on express, so i can look at this as well
[23:29] nrstott: and this weekend there is some progress being made
[23:29] nrstott: next week more will be made :)
[23:30] digitalspaghetti: thanks nrstott
[23:30] polotek: digitalspaghetti: by default connect uses an in memory session store
[23:30] polotek: but you can add a persistent store if that's what you want
[23:31] digitalspaghetti: i need to look into this + groups and ACL stuff :/ not looking forward to it
[23:31] polotek: yeah, authorization is whole other story
[23:31] polotek: I hate most schemes for it
[23:31] softdrink has joined the channel
[23:31] nrstott: digitalspaghetti, my current app is using node to proxy the proper couchdb that a user has access to that serves a couchapp
[23:31] digitalspaghetti: polotek: the thing is with Django, i got it for free :(
[23:32] digitalspaghetti: with node + couch I have to roll a lot of my own
[23:32] nrstott: you dont have to roll session wtih couch, couch gives you session :)
[23:32] nrstott: just proxy it
[23:32] polotek: yeah, node is still in infancy
[23:32] technoweenie: digitalspaghetti: node wont replace django or other full frameworks
[23:33] technoweenie: well, it could, but not for awhile. nodes strength lies in smaller network services
[23:33] digitalspaghetti: technoweenie: i know, hence having to roll my own stuff
[23:33] polotek: digitalspaghetti: you should contribute to connect/express the stuff that they don't have
[23:33] polotek: that's how it will be more awesome for the next guy
[23:34] technoweenie: or start your own web framework, thats what everyone does
[23:34] digitalspaghetti: polotek: yea, i need to run that by my boss first, but i don't see it being an issue if i can make it generic enough
[23:34] digitalspaghetti: technoweenie: that's basically what i'm doing :D
[23:35] technoweenie: that was dripping with sarcasm, there are already a lot of duplicate libs in node
[23:35] digitalspaghetti: The app is for business continuity and data recovery management, the problem with frameworks in general is they get in the way with their magic
[23:35] polotek: technoweenie: that's not bad at this early stage though
[23:35] digitalspaghetti: i don't need magic, i just need to be able to write a complex application
[23:35] polotek: the good stuff rises to the top right?
[23:36] polotek: digitalspaghetti: errr...
[23:36] technoweenie: there's a lot of duplicated effort though
[23:36] polotek: what's your definition of magic?
[23:36] technoweenie: magic == stuff that you dont understand
[23:36] polotek: technoweenie: yeah, but there's room for duplicated effort
[23:36] polotek: I know many people are learning how to write js on the server
[23:37] polotek: node is a different environment
[23:37] polotek: and the best way to learn it is to do something
[23:37] cheriot has joined the channel
[23:37] technoweenie: sure, but its confusing to newbies when they see multiple libs
[23:37] technoweenie: thats why i dropped nori and started refactoring on riak-js for example
[23:38] technoweenie: i got past the learning stage
[23:38] digitalspaghetti: polotek: stuff that gets in the way of what i need to do :D
[23:38] polotek: true, but being confused is the natural state for a newb
[23:38] polotek: I hear you. not disagreeing with you really
[23:38] polotek: just saying people like building stuff
[23:38] polotek: and building stuff in node is fun
[23:39] digitalspaghetti: tbh i haven't decided to not do the app with Django
[23:39] _announcer: Twitter: "It's been a while since I last touched node.js. Looks api has changed a lot" -- makoto_inoue. http://twitter.com/makoto_inoue/status/21186464273
[23:39] technoweenie: digitalspaghetti: tbh if this is a business, go w/ something you're productive in
[23:39] polotek: digitalspaghetti: if there's money involved, do it in django
[23:39] polotek: heh
[23:39] digitalspaghetti: i just need to find another way to get ExtJS and Django to talk nicer
[23:39] digitalspaghetti: polotek: yea :D
[23:39] technoweenie: if its successful you can look at how to replace slower parts with faster parts
[23:40] polotek: technoweenie: did you see my question about wikis?
[23:40] technoweenie: no?
[23:40] digitalspaghetti: this is just the first weekend i've been looking at node.js properly and i've been impressed with it and express
[23:40] technoweenie: oh, an indented block?
[23:40] polotek: yeah
[23:40] technoweenie: nope
[23:40] polotek: figured
[23:40] technoweenie: what do you need an indented block for?
[23:40] technoweenie: a pull quote or something
[23:40] polotek: markdown isn't really for tweaking formatting
[23:41] digitalspaghetti: i managed to get something i implemented in a few days in django working in a few hours with node + couchdb, of course part of that is I know what it's doing
[23:41] polotek: no, I'm writing docs for libxmljs
[23:41] jimmy203 has joined the channel
[23:41] digitalspaghetti: but still i was impressed with how quickly i was able to get it running
[23:41] polotek: just want to do some formatting so it's easier to scan and such
[23:41] daleharvey has joined the channel
[23:42] jimmy203: anyone here have much experience with kiwi?
[23:42] mscdex: jimmy203: afaik it's deprecated
[23:42] technoweenie: kiwi is discontinued, use npm
[23:42] jimmy203: oh.. ok :)
[23:42] mscdex: jimmy203: if you have issues with npm, isaacs is the man to bug
[23:43] digitalspaghetti: yea i also agree with technoweenie sentiment earlier with what just happened there
[23:43] polotek: technoweenie: first push of the new wiki repo takes a bit huh?
[23:43] digitalspaghetti: there is a bunch of stuff that is no longer valid
[23:43] mape: dylang: nice that worked out?
[23:43] technoweenie: first push? it shouldnt
[23:43] digitalspaghetti: the ecosystem could be cleaned up a bit :D
[23:43] polotek: technoweenie: it's not showing up
[23:43] technoweenie: well, file an issue i guess
[23:43] polotek: oh
[23:44] polotek: huh
[23:44] jimmy203: lo.. d`oh now I see the message on the github.. sigh..
[23:44] technoweenie: i looked at one persons issue and it turned out to be a syntax css issue (and the wiki push worked great)
[23:44] jimmy203: thanks for pointing it out :)
[23:44] polotek: technoweenie: subpages are there, but the Home page didn't update
[23:45] dylang: mape: it fixed the yui problem. on to the next one... Error: Stream is not writable from connect.gzip (which works on its own).
[23:45] technoweenie: polotek: well yea file something and i'll take a closer look later :)
[23:45] mape: dylang: Hmm... that I have no idea about..
[23:46] dylang: mape: oops, i had your handler still commented out.
[23:46] dylang: mape: it works!
[23:46] mape: neat :)
[23:46] dylang: mape: perfect timing, my wife is ready for us to go and i'm not allowed to use irc on my phone in fancy resturants.
[23:46] mape: hehe
[23:47] jimmy203: :)
[23:47] jimmy203: any guides on npm and setting up my first node page?
[23:48] siculars has joined the channel
[23:48] digitalspaghetti: jimmy203: have you checked out howtonode?
[23:48] digitalspaghetti: http://howtonode.org/
[23:48] jimmy203: yup that is why I was looking at kiwi :)
[23:48] jimmy203: using expressjs
[23:49] mape: jimmy203: express doesn't use kiwi anymore
[23:51] mape: saf
[23:51] jimmy203: so does npm just package all scripts together so I can use standard require or do I need to do something like kiwi var npm = require('npm'); npm.requre('express');
[23:52] mape: standard require
[23:52] mape: there is nothing in your node app that has anything to do with npm
[23:52] mape: it just makes sure you don't have to deal with paths and whatnot for requires
[23:52] jimmy203: awesome.
[23:52] jimmy203: I`ll give it a go.
[23:52] mape: yup, really handy
[23:54] polotek: okay folks. I'm out for a while. take it easy
[23:54] mape: later
[23:54] polotek: technoweenie: http://support.github.com/discussions/repos/3864-home-page-doesnt-show-up-after-pushing-to-new-wiki-repo
[23:54] polotek: not a big deal
[23:54] polotek: I won't be done with updates for a while
[23:54] polotek has left the channel
[23:55] rsms has joined the channel
[23:56] CrabDude has joined the channel
[23:56] jimt_ has joined the channel
[23:57] ashleydev has joined the channel
[23:58] ashleydev has joined the channel