[00:17] <snap-l> brousch: Yeah, we've all moved to pycharm
[00:18] <snap-l> autocomplete FTW
[12:18] <snap-l> G'morning
[12:20] <rick_h> morn
[12:56] <Wolfger> Happy Friday
[12:57] <Wolfger> don't forget Penguicon "bring a friend" party tonight. With free-as-in-beer beer (I think)
[12:57] <brousch> eh?
[12:58] <mydogsnameisrudy> there's a party going on somewhere?
[12:59] <Wolfger> Dearborn
[12:59] <mydogsnameisrudy> oh heh to far
[12:59] <Wolfger> Penguicon is hosting a party at the hotel where the convention will be this year.
[13:00] <Wolfger> It's specifically aimed at getting people who haven't been to Penguicon to come out and get an idea what it's like.
[13:00] <Wolfger> So brousch, get out there and check it out :-)
[13:00] <brousch> too scary
[13:01] <brousch> http://www.penguicon.org/CMS/?page_id=216
[13:01] <brousch> About: 404
[13:04] <brousch> the about page should just redirect to the rules page
[13:05] <mydogsnameisrudy> hmm this party mostly programers?
[13:06] <brousch> i get the impression it's mostly wackos
[13:07] <mydogsnameisrudy> hmmm drag show lol
[13:07] <mydogsnameisrudy> yep i c
[13:17] <Wolfger> I resent being called a wacko
[13:19] <Wolfger> You will find virtually any (and every) flavor of geek at P-con
[13:19] <Wolfger> some of them are even too strange for me...
[13:19] <brousch> Wolfger: mostly wackos, you might fall into the non-wacko segment. might
[13:19] <Wolfger> doubt it :-)
[13:19] <brousch> not that there's anything wrong with that
[13:20] <Wolfger> I fly my freak flag(s) proudly
[13:20] <brousch> i heartily support your right to be a wacko
[13:21] <Wolfger> what about a Yakko or a Dot?
[13:21] <Wolfger> or Pinky and the Brain?
[13:21] <brousch> oh wow, the BBB sent me an urgent notice using my own email address. i'd better jump right on this
[13:22] <Wolfger> lol
[13:23] <brousch> omg. someone is complaining about their dealership with me
[13:25] <Wolfger> Something about the phrase "multiple life sentences" just screams "your legal system is completely FUBAR"
[13:29] <brousch> seems like one life sentence should be sufficient
[13:29] <Wolfger> you would think
[13:30] <brousch> is it just me, or do the "oldies" on this list seem overpriced? http://shop.oreilly.com/category/deals/oldies-but-goodies.do?imm_mid=07ed2a&cmp=em-orm-books-videos-oldies-goodies-short-elist
[13:31] <brousch> DNS and Bind from 6 years ago for $20?
[13:31] <brousch> for an ebook?
[13:32] <brousch> also 2 ruby books, no python?
[13:32] <snap-l> brousch: How many changes are you aware of in DNS?
[13:32] <snap-l> Outside of DNSSEC, not much has changed. :)
[13:32] <snap-l> and I'm not sure that's all that new.
[13:34] <brousch> hm, maybe you're right. it is $21 used on amazon
[13:42] <snap-l> brousch: I'd expect Wolfger to be fielding dealership complaints sooner than I'd expect you to be fielding them. :)
[14:42] <nullspace> just looked clojure syntax, all I can say is yikes
[14:43] <nullspace> I can read it but I think using it for anything complex is just going to hurt
[14:46] <snap-l> nullspace: ever played with Lisp?
[14:46] <snap-l> It's very similar.
[14:49] <jrwren> brousch: yes, everything on that list is overpriced
[14:50] <rick_h> heh, the fact that they half off new books for DoTD, give any UG 35% off the top means that books are just overpriced
[14:53] <jrwren> clojure is a lisp isn't it?
[14:53] <jrwren> its scheme for jvm, right?
[14:53] <jrwren> yup
[14:54] <jrwren> "Clojure is a dialect of Lisp," from clojure.org
[14:54] <snap-l> I don't think there's a "one true lisp"
[14:54] <jrwren> right, that is what I'm saying.
[14:54] <snap-l> It's like English
[14:54] <jrwren> its a lisp
[14:54] <jrwren> like scheme is a lisp
[14:54] <jrwren> like elisp is a lisp
[14:54] <jrwren> like common lisp is a lisp
[14:55] <snap-l> Like MIT Scheme is not like GNU Scheme is not like ...
[14:55] <jrwren> well you could argue that John McCarthy's 1960 paper defines the one true lisp
[14:56] <jrwren> exactly! MIT scheme would be > GNU Scheme :)
[14:56] <snap-l> Hah
[14:57] <snap-l> Just seems whenever someone creates a LISP interpreter, they also create a new dialect to go with it
[14:57] <snap-l> And we're not talking separate accents, but whole categories of slang.
[14:58] <jrwren> right
[14:58] <jrwren> and there are thousands, becuase its a project that 1/2 of all computer science students do at one point :p
[14:58] <snap-l> jrwren: truth
[15:09] <nullspace> snap-l: have yet to play with Lisp, though I am intrigued
[15:11] <nullspace> when I see a new language that I understand but I don't see the reason for why it's doing things in a certain way I think that there has to be a good reasona nd maybe a godo use for it
[15:11] <nullspace> otherwise why the hell was it created
[15:12] <snap-l> nullspace: the enduring languages have purposes
[15:12] <nullspace> except brainfuck, that's just there to screw with your head
[15:12] <snap-l> sometimes languages are just created as a programming exercise.
[15:14] <nullspace> I think I'll give clojure a spin through the first ten problems of project euler this weekend
[15:24] <_stink_> and even within common lisp implementations, there are enough significant differences to be totally annoying.
[15:24] <_stink_> especially with system interfacing stuff.
[15:24] <_stink_> i like the competitive ecosystem... until i try to accomodate it.  then i hate it.
[15:28] <snap-l> _stink_: ++ ++ ++ ++ ++
[15:45] <jrwren> rick_h: did you see the nodejs video I retweeted?
[15:45] <jrwren> i LOLed a lot
[15:47] <rick_h> jrwren: will take a peek
[15:57] <brousch> i just created a custom django templatetag and corrected a django snippet. i think i am becoming assimilated
[16:00] <brousch> also, heroku is fun. `git push heroku master` and my updates are live
[16:11] <jrwren> rick_h: it was orig a jwz tweet if you can't find it
[16:27] <rick_h> jrwren: thanks, saw the tweet go by but didn't "understand" what it was so skipped by
[16:28] <snap-l> What the fuck
[16:28] <snap-l> Just discovered UNity has some keyboard shortcuts for tiling
[16:28] <snap-l> Accidentally hit CTRL-ALT-NUmpad 0 and my window went fullscreen
[16:29] <snap-l> CTRL-ALT-2,4,6,8 also move the window to that side
[16:29] <snap-l> Hell, the whole thing is boobytrapped. :)
[16:29] <snap-l> DBO: This is your doing!!!!
[16:36] <brousch> they're trying to make rick_h happy
[16:36] <rick_h> heh, not quite. anything + a number is a horrible shortcut
[16:37] <snap-l> Well, and it's only for a numberpad
[16:37] <rick_h> ?!
[16:37] <snap-l> so rick_h gets no love there either
[16:37] <rick_h> so doesn't work if you dont' have a numpad on your laptop?
[16:37] <rick_h> bah, wasted code imo
[16:38] <snap-l> Heh
[16:40] <rick_h> why do we have to have the most retarded setups for things? ugh!
[16:42] <snap-l> ?
[16:44] <rick_h> just getting annoyed at the way every little bit of code in the world we put together is strange and half working as #@$@#$@#
[16:44] <rick_h> having a ranty friday
[16:45] <ColonelPanic001> o.o
[16:48] <rick_h> packages with buildout.cfg, but they don't work, then the README says to do this other thing, and rather than any sane test thing, find out we've built some magic https://launchpad.net/testrepository thing that this package uses
[16:49] <rick_h> heh, and I see this is written because we've got giant ass test suites that day a workday to run: http://rbtcollins.wordpress.com/2010/11/30/testrepository-iteration-for-python-projects/
[16:49] <brousch> a whole day?
[16:50] <brousch> that's insane
[16:50] <rick_h> 4-6hrs
[16:50] <rick_h> it's why we run the damn things in ec2, it's fire/forget
[16:56] <brousch> this is crazy traffic to my work website. i led a grwebdev meeting on the 23rd but never mentioned my work at all. http://dl.dropbox.com/u/101667/traffic_from_grwebdev_wtf.png
[17:18] <Wolfger> rick_h: no numpad on your keyboard? How do you live?
[17:20] <Wolfger> all day tests, fire and forget? No way. "Quit playing games and get back to work."  "I am working. I'm running tests on the code." :-)
[17:20] <Wolfger> single-threading ftw
[17:21] <rick_h> Wolfger: this is what pqm is for
[17:22] <rick_h> Wolfger: and yes, I don't have a keypad on many of my keyboards <3
[17:23] <Wolfger> I always wanted the numpad on the left, not the right
[17:23] <Wolfger> those keyboards are hard to find and/or obscenely expensive
[17:24] <jrwren> numpad is bad.
[17:24] <jrwren> not ergo.
[17:24] <jrwren> mouse should be there.
[17:24] <jrwren> if mouse is past the numpad it is too far and you have to stretch to far to reach it.
[17:24] <jrwren> bad ergo
[17:28] <Wolfger> Why are you using a mouse? Just keep your hands on the keyboard.
[17:28] <rick_h> oh come on Wolfger, I can't believe a kde user isn't moues heavy
[17:28] <rick_h> if you truly didn't usea mouse much you'd be on a different DE
[17:28] <Wolfger> but yeah, that's why I want the numpad on the left... No reaching for mouse
[17:29] <rick_h> exactly, which is why I like my 10less keyborads
[17:29] <rick_h> keyboads
[17:29] <rick_h> bah!
[17:29] <rick_h> I give up...going home and calling in sick
[17:29] <Wolfger> ROFL
[17:30] <Wolfger> "Where's Rick?" "He was here earlier, then I got an e-mail that he wasn't feeling well and wouldn't be in today..."
[17:39] <jrwren> snap-l: gah! your tweet and blog post... i still don't have anyone to open the door for you.
[17:40] <snap-l> jrwren: No worries. Just LMK if it's not going to happen.
[17:45] <rick_h> snap-l: crap, wife's working on that day :(
[17:48] <snap-l> urgh
[17:48] <snap-l> WEll that's no good.
[17:49] <rick_h> I might be able to see if grandpa can watch him for an hour/two between me leaving and mom getting home since he's in town
[17:49] <rick_h> but not sure
[17:49] <snap-l> OK
[17:49] <rick_h> I'll shoot for it, but might not be able to make it out. No offense, but not going to run out at 2pm when wife gets home
[17:50] <rick_h> too much driving for too little time
[17:50] <snap-l> Yeah, understandable
[18:42] <brousch> wow. got my second recruiter call ever at work. they want me to do iOS development
[18:42] <brousch> damn fools
[18:45] <rick_h> https://plus.google.com/109919666334513536939/posts/a5DdsUPEvhH
[18:46] <brousch> heh
[18:52] <snap-l> Oh geez
[18:55] <ColonelPanic001> wat
[18:55] <rick_h> come on, that's one cool looking michigan logo there :)
[18:56] <ColonelPanic001> <3
[18:56] <ColonelPanic001> Waterloo's amuses me
[18:59] <rick_h> ok, who wants to take this one? http://www.quora.com/What-can-vim-do-that-nano-cant?__snids__=33969307
[18:59] <rick_h> you win one internets
[19:01] <snap-l> Oh jesus
[19:01] <snap-l> That's like asking what's the difference between a woman and a Barbie doll.
[19:02] <snap-l> Or the difference between a Navy Seal and a GI Joe action figure.
[19:03] <brousch> so ... you're saying vim can have real sex instead of just pretend?
[19:03] <snap-l> "What's the difference between theory and practice? In theory, they're the same"
[19:03]  * brousch checks his vim book's ToC more closely
[19:03] <snap-l> brousch: There's a plugin for that
[19:03] <snap-l> gspot.vba
[19:04] <snap-l> also, do not google gspot vim
[19:05] <brousch> based on those people i know who use vim, that is not an image search i want to encounter
[19:12] <brousch> snap-l: whoa http://www.microcenter.com/single_product_results.phtml?product_id=0242478
[19:13] <snap-l> Yeah, they're cheeeeeeep
[19:13] <snap-l> Even 4GB is $5 each
[19:14] <brousch> i actually can't find any 1GB for under $2 each
[19:15] <brousch> i bought a 5 pack 2 years ago for $6
[19:15] <snap-l> That's still pretty cheap.
[19:15] <snap-l> Yeah, I think they bottom out after a while
[19:15] <nullspace> some how I missed this whole non blocking arguement the node.js fan boys are thrwoing around
[19:16] <snap-l> nullspace: How so?
[19:16] <rick_h> nullspace: huh?
[19:16] <rick_h> that's the whole things with eventlet/node/etc
[19:16] <rick_h> whole point that is
[19:17] <rick_h> don't solve the concurrency problem, just work around it by making things not concurrent :)
[19:17] <nullspace> ouch
[19:17] <snap-l> Well, and use a language that is event based
[19:18] <snap-l> or very good at events along with a seriously optimized engine
[19:19] <rick_h> well the events just facilitate jumping in/out of the reactor/main thread
[19:19] <rick_h> nullspace: so anyway, what's the issue or whatever with the realization?
[19:20] <nullspace> I don't understand there arguement. did this make sense any time node.js came into being
[19:20] <rick_h> yes, the idea is that all the libraries/etc you use are non-blocking so that whenever you make a call to mysql/etc
[19:21] <rick_h> it happens outside the main thread allowing for another bit of code to be processed
[19:21] <rick_h> in this one, one thread handles more work faster by getting anything that hangs cpu cyles out of the way
[19:21] <rick_h>  /this one/this way
[19:22] <rick_h> for instance, in python, when I run a db query, it sits and waits for the db to respond, that python thread doesn't do any other work while waiting
[19:22] <rick_h> but it could be serving someone else's cached result in that time
[19:23] <nullspace> isn't there ways to write multi thread python?
[19:23] <rick_h> yes, but there's a GIL you have to deal with
[19:23] <rick_h> and it's really ineffecient for many many things
[19:23] <snap-l> GIL being the Global Lock
[19:24] <rick_h> and any time you get multi-threaded you have to think harder
[19:24] <snap-l> (I being ... :) )
[19:24] <rick_h> see java multi threading/locks/etc
[19:24] <snap-l> Global Interpreter Lock
[19:24] <nullspace> ah
[19:26] <nullspace> yeah that's not really a problem I can say I run into
[19:26] <snap-l> nullspace: Well, you might run into it in small forms
[19:27] <snap-l> but much like benchmarking different CPUs nowadays, you'll care a lot if you care a lot. ;)
[19:27] <snap-l> otherwise, you won't care that much until it starts breaking things.
[19:28] <nullspace> I think there are way bigger fish to fry
[19:28] <snap-l> Yeah, like setting up Eclipse. ;)
[19:30] <nullspace> hey, eclipse works just fine for me
[19:30] <rick_h> anyone else off monday?
[19:31] <snap-l> rick_h: Not I
[19:32] <snap-l> Unless you work for the government, I don't think you get Monday off.
[19:46] <nullspace> hmm well node could be really handy on embedded devices with a web frontend
[19:48] <rick_h> nullspace: node is very handle for very fast little services and some people have built really large apps with it
[19:48] <rick_h> handy that is
[19:48] <rick_h> I did a contact lookup thing that could handle many more req/s on the one cpu than python could
[19:50] <rick_h> the other handy space is the JS from back end to front end
[19:51] <jrwren> lol, hilarious.
[19:52] <rick_h> jrwren: which part :)
[19:56] <jrwren> nano
[19:56] <rick_h> ah, yea
[19:59] <jrwren> nullspace: the nonblcoking arguement: see Twisted Python
[20:00] <jrwren> or even stackless python
[20:00] <jrwren> and maybe pypy greenlets
[20:00] <rick_h> gevent, etc
[20:02] <Blazeix> rick_h: do you have an opinion on gunicorn/geven vs uwsgi? I was trying to wrap my head around that last night.
[20:02] <Blazeix> gunicorn is theoretically production-class, right? not just some little dev server?
[20:04] <brousch> Blazeix: supposedly
[20:04] <brousch> i'm using it to serve tens of requests per day on heroku
[20:04] <rick_h> Blazeix: yea, but it's pretty bare bones
[20:04] <rick_h> Blazeix: I'd still put it behind nginx/company
[20:05] <rick_h> Blazeix: uwsgi has some extra added nice features
[20:05] <rick_h> but I think gunicorn is winning the battle tbh
[20:05] <rick_h> but one thing at morpace I wold them on, was that it could "shut down" an app, and reload it on first request
[20:05] <brousch> it doesn't really do static files, so you still need something else in front
[20:05] <rick_h> so let's say you were deploying 50 wsgi apps, rather than 50 apps + 10 workers per app, sitting idle
[20:05] <rick_h> it could actually shut down the apps to the 5 current accepting requests
[20:05] <rick_h> and if #6 got a request, it'd take the time to load it
[20:06] <rick_h> brousch: right, static files, ssl, caching, etc
[20:06] <rick_h> Blazeix: and uwsgi is pure python, so no C libraries/compiling while gevent needs some C libs
[20:07] <brousch> the pure python is the most awesome part. pip install gunicorn
[20:08] <rick_h> Blazeix: nvm...it's not pure python, I lied
[20:08] <rick_h> but yea, it's pip installable, gunicorn is as well
[20:09] <brousch> it's not?
[20:09] <rick_h> no, gunicorn needs some c compiled bits for the gevent support
[20:10] <rick_h> damn, maybe I'm having a bad friday...don't see it
[20:11] <Blazeix> ok, cool. it kind of seems like gunicorn exploded on to the scene.
[20:11] <Blazeix> but maybe i'm just too far from the python community right now.
[20:11] <rick_h> ah, ok so gunicorn is pure python ootb, but yuou can change the worker model to eventlet of gevent for performance
[20:11] <rick_h> http://gunicorn.org/faq.html#worker-processes
[20:11] <rick_h> and those are C-based, I thoght it used gevent ootb
[20:12] <rick_h> Blazeix: yea, gunicorn is winning I think because it started out with built in django support
[20:12] <rick_h> and has since really gotten helpers to make it a lot easier/performs well
[20:12] <rick_h> and docs that don't suck as hard as uwsgi
[20:12] <rick_h> I love uwsgi --help and seeing
[20:12] <rick_h> -X "not documented yet"
[20:12] <rick_h> for options in there lol
[20:16] <brousch> well `python manage.py run_gunicorn` is a lot easier than farting around with apache+mod_wsgi
[20:17] <rick_h> yea, definitely
[20:17] <rick_h> I see django 1.4 will finally have a .wsgi ootb now
[20:17] <brousch> i should say much easier than python+mod_wsgi+ virtualenv, because that's what really makes it a bitch
[20:17]  * rick_h rants on django some more
[20:17] <snap-l> rick_h: 'bout fucking time
[20:17] <rick_h> http://us4.campaign-archive2.com/?u=9735795484d2e4c204da82a29&id=e9564edf16&e=6bda5f785a
[20:18] <brousch> we don't need no stinking .wsgi
[20:18]  * rick_h smacks brousch upside the head with a cluebat (no baby sticks here)
[20:19] <rick_h> but yea, that's why gunicorn got a boost, it knew django users didn't wsgi ootb so it made it easy up front
[20:19] <rick_h> while everyone else just supports wsgi dammit
[20:19] <snap-l> There's no reason not to support wsgi
[20:20] <snap-l> None. Zero. Zip.
[20:51] <rick_h> man precise downloads so painfully slow :/
[20:59] <snap-l> bittorrent?
[21:07] <jrwren> rsync daily from testdrive :[
[21:11] <Blazeix> anyone have an opinion on the "Agile and Beyond" conference that's coming up?
[21:12] <Blazeix> my work wants me to go it, but for some reason i have a bad taste in my mouth about it.
[21:12] <Blazeix> i guess i'm worried it's going to be bunch of Big-A Agile people.
[21:12] <snap-l> What's the worst that could happen?
[21:13] <snap-l> A little Kool-Aid, some sneakers, and a loooong nap?
[21:13] <Blazeix> my brain could leak from my ears.
[21:14] <rick_h> Blazeix: yea, I couldn't sit through it
[21:14] <brousch> Agholes?
[21:14] <rick_h> Blazeix: Searls gave the talk at detroit dev days on jasmine
[21:14] <rick_h> but I mean side v side kanban talks? rly?
[21:15] <rick_h> heh, the improv talk from detroit dev days is going on there again
[21:15] <Blazeix> i've only ever used Kanban as a punchline, which I fear wouldn't go over well there.
[21:15] <rick_h> hah
[21:16] <rick_h> Blazeix: yea, it sure seems like a mgr thing than a code in an editor thing :/
[21:16] <Blazeix> exactly
[21:35] <brousch> as i work on this project i find i'm collecting a bunch of little bash scripts for repetative tasks, like refreshing static files locally and on the server. is this where i should be using fabric?
[21:39] <snap-l> If you're repeating a script, yes.
[21:39] <snap-l> If you have to keep a list of what script to run next, yes.
[21:52] <brousch> ok
[22:01] <rick_h> brousch: fabric or Makefile
[22:01] <rick_h> I'm coming around to the Makefile way of life
[22:01] <rick_h> thuogh still <3 fabric
[22:17] <snap-l> uh oh. :)
[23:09] <snap-l> Loaded up the good reads app on my nook
[23:09] <snap-l> I'm a little disappointed with it
[23:10] <snap-l> would be nice to have it automatically grab titles from the device
[23:10] <snap-l> instead, it's essentially the website in app form
[23:41] <brousch> snap-l rick_h sort of good news http://paste.mitechie.com/show/542/
[23:49] <rick_h> brousch: ah, nice