--- Day changed Sun Nov 22 2009 00:08 -!- danielfalck [n=chatzill@pool-71-111-79-148.ptldor.dsl-w.verizon.net] has joined #hplusroadmap 00:11 < genehacker> I'll bet you could charge $5 00:11 < genehacker> $2 for a hot dog? 00:11 < genehacker> sounds like a deal 00:11 < genehacker> also 00:11 < genehacker> don't mix coke and cofee 00:12 < genehacker> it's always a bad idea 00:38 < katsmeow-afk> sedatives and caffine don't mix 01:39 -!- flamoot [n=root@bas2-barrie18-1242454863.dsl.bell.ca] has joined #hplusroadmap 07:04 -!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has quit [] 10:00 -!- kardan_ [n=kardan@p54BE49B4.dip.t-dialin.net] has joined #hplusroadmap 10:16 -!- kardan| [n=kardan@p54BE78AB.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 10:53 -!- strages [n=strages@c-76-29-231-141.hsd1.al.comcast.net] has joined #hplusroadmap 11:28 -!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has joined #hplusroadmap 12:28 -!- rmond [n=strages@c-76-29-231-141.hsd1.al.comcast.net] has joined #hplusroadmap 12:40 -!- strages [n=strages@c-76-29-231-141.hsd1.al.comcast.net] has quit [Read error: 110 (Connection timed out)] 12:41 -!- zancas [n=zancas@c-71-201-189-153.hsd1.il.comcast.net] has joined #hplusroadmap 13:17 -!- rmond [n=strages@c-76-29-231-141.hsd1.al.comcast.net] has quit [Read error: 110 (Connection timed out)] 13:26 -!- strages [n=strages@c-76-29-231-141.hsd1.al.comcast.net] has joined #hplusroadmap 13:28 < fenn> dammit does nobody run unit tests? 13:29 < fenn> since when does this not work? 13:29 < fenn> package = skdb.load_package('screw') 13:30 < ybit> so no hatta? 13:31 < ybit> what wiki to use? 13:31 < ybit> fenn, kanzure 13:31 < kanzure> fenn: Package("screw") 13:31 < kanzure> ybit: god damnit, why don't you listen to either of us 13:32 < kanzure> fdslkadsladl'dsa;l 13:32 < ybit> s/damnit/dammit 13:32 < ybit> jklsdfajkldfjkasdf 13:32 < kanzure> sorry, it's damnit 13:32 < kanzure> i'm damning it 13:32 < kanzure> not damming it 13:32 < fenn> i can't even load a package without opencascade involved 13:32 < fenn> it's dammit 13:32 < kanzure> fenn: not true.. 13:32 < ybit> http://www.answers.com/dammit 13:33 < fenn> ok well i can't load lego because of opencascade 13:33 < kanzure> show me 13:33 < fenn> wtf 13:33 < fenn> skdb.load_package('lego') 13:33 < kanzure> sorry, how does that show me anything 13:33 < fenn> then about six pages of traceback ending with: 13:33 < fenn> ImportWarning: skdb.geom not loaded. load_CAD not available. 13:34 < kanzure> that should be a warning 13:34 < kanzure> not an assertion 13:34 < kanzure> "raise ImportWarning, ..." 13:34 < kanzure> my bad. 13:35 < kanzure> that should maybe be a print? 13:35 < kanzure> ybit: we're not using hatta 13:35 < kanzure> ybit: i don't know if you remember, but i was working on djangit for a while 13:35 < ybit> yeah i know, that's why i'm asking 13:35 < kanzure> and then on ~/code/skdb/web/web.py 13:35 < kanzure> but apparently you've forgotten already 13:35 < ybit> yeah, i do, but we switched to cherrypy 13:35 < fenn> well a warning shouldn't cause whatever i'm doing to fail 13:35 < kanzure> web.py still exists 13:36 < kanzure> fenn: it's not a warning. it's a "raise" 13:36 < fenn> ImportWarning isn't a warning? 13:36 < ybit> i just didn't want to create a wiki from scratch -_- 13:36 < kanzure> nope 13:36 < kanzure> it says "raise ImportWarning" 13:36 < kanzure> raise makes stuff stop 13:36 < fenn> am i supposed to use some other keyword besides raise? 13:36 < kanzure> ybit: oh please. 13:36 < kanzure> fenn: i was the one who wrote that 13:36 < kanzure> this is my fault.. it shouldn't be "raise" 13:36 < kanzure> it should probably just be "print" 13:36 < fenn> i dont understand; how do you do a warning without fucking everything up then? 13:36 < kanzure> i don't think i've ever done that 13:36 < fenn> print goes to stdout 13:37 < kanzure> i guess you can do print >sys.stderr, "blah" 13:37 < fenn> well, whatever. i'm sure there's a correct way to do it but i guess i don't care anymore 13:37 < kanzure> sorry it's >> 13:37 < kanzure> you don't care? 13:37 < fenn> i'm saving my apathy for later 13:38 < fenn> to be savored as a fine delicacy 13:38 < kanzure> should i fix this or are you going to fix it? 13:38 < fenn> um, i'm just wondering what to say is the "correct" way to load a package 13:38 < fenn> yaml.load isn't it 13:38 < kanzure> Package("name goes here") 13:39 < fenn> that fails the same way load_package does 13:39 < kanzure> god damn it 13:39 < kanzure> didn't i just explain this? 13:39 < kanzure> so i asked you 13:39 < kanzure> are you going to fix this or should i? 13:39 < fenn> File "screw.py", line 48, in __init__ 13:39 < CIA-33> skdb: kanzure * r c9128c7 /core/part.py: because fenn is too lazy? 13:39 < fenn> if thread == None: raise ValueError 13:40 < fenn> now i know i did something with that line, but you messed with it before that and it was even worse, and i dont even think it should check anything about thread? 13:41 < kanzure> when i do pscrew=Package("screw") i get something about tensile_area in threads.py 13:41 < kanzure> assert Unit(self.pitch).compatible('mm/rev') 13:41 < kanzure> AssertionError 13:41 < kanzure> not anything about a ValueError? 13:41 < fenn> and anyway why is thread == None? 13:41 < kanzure> == checks if two things are equal 13:41 < kanzure> it's not assignment 13:41 < fenn> um. then it really ought not to do that 13:42 < fenn> because something != nothing 13:42 < kanzure> .. but it could be nothing 13:42 < kanzure> how long has it been since you've touched any code? 13:42 * fenn hunts around for the elusive nothing 13:42 < kanzure> it's very easy to "return None" 13:42 < kanzure> and then if you have something assigned to that return value, that something is None 13:43 < kanzure> how are you getting the ValueError? 13:44 < fenn> Package("screw") 13:45 < kanzure> i get an assertion error about Unit(self.pitch).compatible('mm/rev') in threads.py 13:45 < kanzure> when i run that 13:45 < kanzure> are we running the same version? 13:46 < fenn> i'm running adl/master 13:49 < fenn> wow this is amazingly broken.. i dont know what's going on 13:49 < fenn> why is all this thread stuff in screw.py? 13:50 * fenn notes all the lines saying "shouldnt this be in thread.py?" 13:50 < kanzure> then move it? 13:50 < kanzure> didn't you write this? 13:51 < fenn> wah. go away 13:51 < fenn> this is giving me a headache 13:51 < kanzure> seems too complicated 13:51 < kanzure> how did this happen 13:52 < kanzure> i think we tried to cram too much yaml magic into metadata.yaml 13:52 < kanzure> (tag hack?) 13:53 < fenn> does load_package even do anything with metadata.yaml? 13:53 < kanzure> heh skdb.Package("screw") works on adl for me. 13:53 < kanzure> yes 13:53 < kanzure> loaded_package = load(package_file(name, 'metadata.yaml')) 13:56 < kanzure> so the only reason for most of the complexity in Package is because of tag hack and the "template" attribute in metadata.yaml 13:56 < kanzure> if the 'template' data is removed the point of the metadata is sort of lost. you'd /have/ to download the package to figure out if it's even remotely possibly compatible with something 13:57 < CIA-33> skdb: fenn * r 4dd003d /core/part.py: plz at least try out yer changes 13:57 < kanzure> yes i imported sys and forgot to commit 13:57 < fenn> i don't believe it; sys still wouldn't be defined in the module scope 13:58 < fenn> anyway 13:58 < kanzure> in the module scope? huh? 13:58 < fenn> i guess you wouldn't get the error at all because OCC is installed 13:59 < kanzure> actually i did get the error the first time because i was in code/skdb/core/ and so it was importing "skdb.py" when i was in bpython 13:59 < kanzure> silly mistake on my part 14:02 < fenn> what's up with git on adl 14:02 < kanzure> hm? 14:02 < kanzure> library errors? 14:02 < fenn> something about libcurl 14:02 < kanzure> i updated libcurl a few weeks ago for something unrelated 14:03 < kanzure> if you know how to revert to a previous .deb of it, please go ahead 14:05 < fenn> sure you are running an up to date version on adl? i get the same error there 14:06 < fenn> of skdb* 14:06 < kanzure> huh? no i updated libcurl on adl, not on my laptop 14:06 < kanzure> oh 14:06 < kanzure> blargh? no i'm not 14:06 < kanzure> /home/bryan/code/skdb/ is symlinked to /var/www/skdb 14:06 < kanzure> (and that's what's in my $PYTHONPATH over there) 14:06 < kanzure> git: /usr/lib/libidn.so.11: no version information available (required by /usr/lib/libcurl-gnutls.so.4) 14:07 < kanzure> ok now i get the ValueError 14:07 < kanzure> that makes sense though because in the __init__ for Screw in packages/screw.py it sets thread to None 14:07 < fenn> i fixed git at least 14:07 < kanzure> how? 14:07 < fenn> apt-get install libidn11 14:08 < kanzure> "GNU Libidn library, implementation of IETF IDN specifications" 14:08 < fenn> yeah, whatever that is 14:11 -!- zancas [n=zancas@c-71-201-189-153.hsd1.il.comcast.net] has quit [Remote closed the connection] 14:12 < kanzure> will you clean up screw.py's __init__ re: thread shit? 14:16 < fenn> yah 14:19 < fenn> OCC is installed on adl.. so am i like the only person who doesn't have it installed? 14:20 < kanzure> i think so yes :) 15:22 -!- branstrom_ [n=branstro@c-381de055.438-1-64736c10.cust.bredbandsbolaget.se] has joined #hplusroadmap 15:22 -!- branstrom_ [n=branstro@c-381de055.438-1-64736c10.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 15:27 -!- branstrom [n=branstro@c-171ce055.438-1-64736c10.cust.bredbandsbolaget.se] has quit [Read error: 104 (Connection reset by peer)] 15:28 < kanzure> fenn: we have a few .png's in the git repository 15:28 < fenn> so? 15:28 < kanzure> i was wondering if it would be terrible if i commit a .ico 15:28 < fenn> no, i'm mostly concerned about file sizes, that's all 15:28 < kanzure> binary data and such 15:29 < kanzure> ok 15:29 < kanzure> it'll be really really tiny :) 15:29 < fenn> yeah they are like 1k 15:49 -!- rmond [n=strages@c-76-29-231-141.hsd1.al.comcast.net] has joined #hplusroadmap 15:59 -!- strages [n=strages@c-76-29-231-141.hsd1.al.comcast.net] has quit [Success] 16:04 -!- flamoot_ [n=root@69.158.94.148] has joined #hplusroadmap 16:06 < kanzure> i wish yaml had more mature path resolvers 16:06 < kanzure> er, pyyaml 16:16 -!- flamoot [n=root@bas2-barrie18-1242454863.dsl.bell.ca] has quit [Read error: 110 (Connection timed out)] 16:33 < kanzure> hey doesn't github have their source up on the web somewhere? 16:39 < CIA-33> skdb: kanzure * r c96c8b7 / (10 files in 6 dirs): added an email-based authentication system to web.py 17:03 < CIA-33> skdb: kanzure * r a9b19e9 /web/web.py: converted from email-based authentication to username-based authentication 17:55 < fenn> yo kanzure can you re-enable wondershaper please? 17:56 < kanzure> done. dunno if it was running already or not though 17:56 < fenn> hmm must just be slow 17:57 < kanzure> sam is filtering my emails to replab 18:08 < fenn> i think you totally missed the point of his essay 18:08 < fenn> it's like you figured you knew what he was going to say before reading it 18:09 < kanzure> i'm kind of angry about replab.org if you haven't noticed 18:09 < fenn> i noticed; i think you're unfounded 18:09 < kanzure> it's awesome they want to do this 18:10 < kanzure> i feel ignored 18:10 < fenn> 'rfid powder' 0.05mm x 0.05mm 18:10 < kanzure> hm? 18:11 < fenn> is that for real? 18:11 < kanzure> did i do that? 18:11 < fenn> no 18:11 < kanzure> context? 18:11 < fenn> it's in charles collis' oekonus presentation 18:11 < fenn> oekonux* 18:11 < fenn> adciv.org/Slides slide 8 18:12 < fenn> don't ask me why i'm reading this 18:13 < kanzure> eff why eye: http://localhost:8081/package/lego/data/yaml 18:13 < kanzure> need to figure out how to do distribs 18:13 < kanzure> er 18:13 < kanzure> http://heybryan.org:8081/package/lego/data/yaml 18:14 < fenn> what does the cookie store? 18:14 < kanzure> a session identifier 18:14 < kanzure> do you know how sessions work? 18:15 < fenn> i think it's like, whether you close the browser window or not 18:15 < kanzure> basically instead of giving you a cookie with all sorts of fun info, 18:15 < kanzure> i just give you one cookie, and cherrypy keeps track of some data for me 18:15 < kanzure> in particular a User object 18:15 < kanzure> which, for you, doesn't exist 18:15 < fenn> why are all the carriage returns stripped out? is that what happens when you dump text into html? 18:16 * fenn mumbles something about
tags 18:16 < kanzure> if you view the source of the page you'll see the carriage returns are there 18:16 < kanzure> this is just a plain dump 18:16 < kanzure> sowwy 18:16 < kanzure> html doesn't respect \n 18:16 < fenn> oh. then it's a mime type problem 18:16 < kanzure> rightright 18:16 < kanzure> but yeah, distributions 18:17 < fenn> um, sorry to be so clueless, but is this a new development? 18:17 < kanzure> no 18:17 < kanzure> but user authentication is :) 18:17 < fenn> meh 18:17 < kanzure> so for distribs, 18:17 < fenn> what are "distribs"? 18:17 < kanzure> on the web if joestupid edits the screw package, 18:17 < kanzure> he can screw up a lot of hardware 18:18 < kanzure> for this reason i was thinking of copying github's model of having users have their own git repos 18:18 < fenn> right 18:18 < fenn> that was always the idea 18:18 < kanzure> (either on the server or aggregated from other servers) 18:18 < kanzure> right 18:18 < kanzure> so how do we specify which 'distribution' to use for individual parts 18:18 < kanzure> right now in the code base, in the metadata, we don't specify anything other than a tag/name 18:18 < kanzure> "er, use cold rolling. there" 18:19 < fenn> um.. each package is its own git repo, right? 18:19 < kanzure> yes 18:19 < kanzure> but referring to it by commit is not enough 18:19 < fenn> because it's not a URL? 18:19 < kanzure> nonono 18:19 < fenn> i dont see why you cant refer to a commit 18:19 < kanzure> you can 18:19 < kanzure> ybit/screw/screw.yaml 18:19 < kanzure> fenn/screw/screw.yaml 18:20 < kanzure> ybit's screw might have lots of changes 18:20 < fenn> but i can pull from ybit 18:20 < fenn> then fenn/screw/screw.yaml has changes too 18:20 < kanzure> well 18:20 < kanzure> er 18:20 < kanzure> this feels upside down 18:20 < fenn> now, version numbers would be a nice thing, and that's one thing i dont like about git 18:20 < kanzure> i was thinking that you shouldn't have to download all of the hardware on the server 18:20 < kanzure> since you're already on the server 18:20 < kanzure> in debian each package doesn't contain all other packages 18:21 < fenn> what server? 18:21 < kanzure> heybryan.org:8081 18:21 < kanzure> er 18:21 < fenn> adl? 18:21 < kanzure> fenn/screw/screw.yaml is your local changes to a screw, this is true 18:21 < fenn> some hypothetical server? 18:21 < kanzure> but what if you want to use ybit's screw 18:22 < kanzure> i don't think a copy of every single piece of hardware should be in fenn/ 18:22 < fenn> fenn/ is my home directory? 18:22 < kanzure> the whole point of packages is that you can refer to them 18:22 < kanzure> fenn/ is like http://github.com/kanzure/ 18:22 < kanzure> so yes(?) 18:22 < fenn> huh 18:22 < fenn> what's wrong with having everything? 18:22 < kanzure> why not just refer to the package 18:22 < fenn> people would only make mirrors of packages they have modified 18:23 < kanzure> right now it sounds like you can _only_ mirror 18:23 < fenn> well that's how github works 18:23 < kanzure> yes but that's not hwo packages work 18:23 < fenn> we can also give people access to various packages if they want 18:23 < fenn> write access* 18:23 < kanzure> oh 18:23 < kanzure> so here's what i was thinking of, maybe this is stupid 18:24 < kanzure> i want to be able to say "use kanzure's wheel, commit blah" 18:24 < kanzure> or "use wheel, commit blah" if you want the one from the global namespace 18:24 < fenn> mirrors can be merged, that's why dvcs rule 18:24 < fenn> just say what commit and provide the url you got it from 18:24 < fenn> is that too much data? 18:25 < kanzure> ok so that's not the same thing as only allowing mirroring 18:25 < kanzure> right? 18:25 < fenn> i cant think of a better way to do distributed version numbers 18:25 < fenn> we can still do branches if it matters 18:25 < kanzure> i don't think we're talking about the same thing 18:25 < kanzure> and i'm still stuck 18:26 < fenn> no i'm confused, maybe you should flap your mouth and make noises or something 18:26 < kanzure> on a user's hard drive, they should have a local copy of all of the .git's for packages, yes 18:27 < kanzure> (that's their local cache of packages) 18:27 < kanzure> on the server, the situation is different since the equivalent of /etc/apt/sources.list is basically "everyone on here" 18:27 < kanzure> so there's namespace conflicts on "wheel" when there's fenn/wheel.git and ybit/wheel.git etc. 18:28 < kanzure> so we need to be able to say /who's/ wheel 18:28 < fenn> i still don't get why the server has multiple copies of the same package 18:28 < kanzure> we approve some packages right? and others we might say "haha, no thanks" 18:29 < kanzure> but others might still use those packages if they are on the server, the ones that we didn't include in the main distribution 18:29 < fenn> we don't have to host mirrors we dont like 18:29 < fenn> here's how the linux kernel does it 18:29 < kanzure> if a user doesn't have write access to the main distribution, then they can put it in their local namespace 18:29 < kanzure> this is how github does it :) 18:29 < fenn> each dev hosts their own git repo. they send a git-format-patch to the linux dev mailing list 18:30 < kanzure> right 18:30 < fenn> it automatically gets emailed to the correct 'lieutenant' who approves or deniesthe change 18:30 < fenn> then the lieutenant forwards to linus for his veto 18:31 < fenn> then linus does some massive git-pull from all the individual lieutenants 18:31 < fenn> that's all there is to it 18:32 < kanzure> ok? 18:32 < kanzure> not what i'm talking about :( 18:32 < fenn> unfortunately we can't use that model because people are too stupid to host their own repo or send changes to a mailing list 18:32 < kanzure> yes, this is just a repo hosting service layer thingy 18:32 < fenn> ok i think that should be totally separate from everything else 18:33 < kanzure> github.com/main/ will be the one that Master Linus commits to 18:33 < fenn> because it's one nad only function is to pretend like it's github 18:33 < kanzure> so we shouldn't host other people's hardware? 18:34 < kanzure> or by 'separate' what do you mean 18:34 -!- branstrom [n=branstro@c-171ce055.438-1-64736c10.cust.bredbandsbolaget.se] has joined #hplusroadmap 18:34 < fenn> i just mean it's a totally different thing from "the database" 18:34 < kanzure> the what? 18:34 < kanzure> you don't use that word often.. 18:34 < fenn> hum 18:35 < fenn> well originally the idea was to have a select aggregation of hardware, compiled into a distribution (autogenix) 18:35 < kanzure> yes 18:35 < fenn> but lots of other people would be using the software for their own stuff, whether anyone cared or not 18:35 < fenn> there's a lot of crap on thingiverse you notice 18:35 < fenn> but we only want like 5% of it 18:35 < kanzure> it's seeping out :( 18:36 < fenn> now hosting the other 95% is ok but i just want to be clear what's what 18:36 < kanzure> right 18:36 < kanzure> this is why i was saying 'distributions' 18:36 < kanzure> now, 18:36 < kanzure> what if someone wanted to make a new package 18:36 < kanzure> that depended on something from the other 95% of the stuff 18:36 < kanzure> from the 'crapbin' 18:36 < fenn> most thingiverse crap is not changes to other peoples' crap 18:37 < fenn> if you have good stuff that is derived from crap, then we can import the whole history of changes; that's why git is cool 18:37 < kanzure> there needs to be a way to specify a dependency in terms of which distribution it's from. 18:37 < fenn> no you just clone the crap 18:37 < fenn> -_- 18:37 < kanzure> it still doesn't make sense 18:38 < kanzure> for every user on thingiverse, each user should have a clone of every other package in their personal home folder on thingiverse? 18:38 < fenn> the goal is to reduce data redundancy right? 18:38 < fenn> no, each use has a clone of whatever package they've made changes to 18:38 < fenn> (unless they have write access to the package) 18:39 < kanzure> ok great so how does skdb know to use their screw rather than some other screw 18:39 < fenn> if it really actually in all honesty depends ona certain commit, then one should be able to specify that... 18:39 < fenn> but i hope people are smart enough to not depend on such miscellanea 18:40 < fenn> that's the point of OO, because people were digging in undocumented DOS registers and then it changed 18:40 < kanzure> a dependency on autogenix/screw.git v. a dependency on ybit/screw.git 18:40 < fenn> information hiding, whatever (not OO) 18:40 < fenn> you're not paying attention 18:40 < fenn> autogenix/screw.git is just a file location, not a version 18:41 < kanzure> ok true 18:41 < fenn> oh duh 18:41 < fenn> we can put version numbers in the metadata file 18:42 < kanzure> all i'm asking is that when a user makes a new package on the website, how do they say "use this version from this distribution"- *without* copying every single package in existence to their home dir? 18:43 < kanzure> s/copying/merging via git/ 18:43 < fenn> url and commit hash? 18:44 < fenn> some urls have hashes embedded, but then you'd have to extract it if the url is bad 18:44 < fenn> could be annoying if the url scheme changes 18:45 < kanzure> so let's say i modify a non-autogenix package. this means i clone it and put it into my home dir on the server, etc. 18:46 < fenn> you keep saying "the server" 18:46 < kanzure> someone else then can depend on it by using a url/hash to github.com/kanzure/screw/4104814u90jfadsoiufh89341 18:46 < kanzure> yeah a server 18:46 < fenn> any old server anywhere on the net, right? 18:46 < kanzure> well 18:46 < kanzure> for practical purposes, we might not want to allow that on ours 18:46 < kanzure> since importing a package means running python 18:47 < fenn> yeah well that's why we separate good from bad 18:47 < kanzure> no i mean.. er. 18:47 < kanzure> on our server, we "import skdb" in web.py 18:47 < kanzure> and if you do load_package() on some foreign package, just to display a CAD model or something, 18:47 < fenn> ffs make up some names please 18:47 < kanzure> you could be executing malicious code 18:47 < kanzure> names? 18:47 < fenn> all these servers i can't keep them straight 18:48 < fenn> johnny fabonic uploads his changes to the tesla roadster to his free fabonautix account 18:49 < kanzure> sally mcmistress makes a new package and depends on the johnny's tesla roadster 18:49 < fenn> elon reviews johnny's changes and decides to incorporate them 18:50 < kanzure> sally also has a free fabonautix account 18:50 < fenn> elon does 'git pull fabonautix.com/johnny/tesla.git' 18:50 < kanzure> without fenn knowing it, johnny included malicious code in tesla.git 18:50 < fenn> fabonautix goes out of business and johnny's mirror is gone forever 18:50 < kanzure> web.py is programmed to "import skdb" and run packages to make certain views on the website 18:51 < fenn> sally uploads her changes to mcmistress.com 18:51 < kanzure> when elon and sally view tesla.git over fabonautix's web view, fabonautix is fucked 18:52 < fenn> what's fucked? 18:52 < kanzure> tesla.git depends on badhacker.com/malicious-code.git 18:52 < kanzure> web.py would have to download that dependency in order to, say, render a CAD model for sally and elon when they view the page on fabonautix's site 18:53 < fenn> um, no, that's retarded 18:53 < fenn> all files necessary for the package should be included in the package 18:53 < kanzure> so then you _don't_ like URLs for dependencies? 18:53 < fenn> packages depend on other packages 18:53 < kanzure> it's no different from them hosting on fabonautix, badhacker.com, etc. 18:53 < fenn> right so we have tools to manage dependencies 18:54 < fenn> when elon pulls the changes it should notify him of the external dependency, 'you want to download? [y/n]' 18:54 < kanzure> ok so how would it run on fabonautix? 18:54 < kanzure> fabonautix would only run packages that have dependencies hosted on fabonautix? big deal.. they can just upload malicious code 18:54 < fenn> how would what run, the apt-get style tool? 18:55 < kanzure> the package/code 18:55 < kanzure> Package("lego") <-- python is being executed from the lego package when you run that 18:56 < fenn> i dont think i ever figured out a good solution for that 18:57 < fenn> anyway, all the dependcies are in metadata.yaml 18:57 < fenn> no python involved 18:57 < fenn> unless its some quantitative thing like 'power output > 50W' 18:57 < kanzure> ok maybe web.py will distinguish between approved packages and questionable packages. "approved" packages will have more on-web functionality. 18:58 < kanzure> "questionable" packages (that haven't been reviewed) will still exist on the server, but the python won't be executed except for the metadata 18:58 < kanzure> this (might) mean no CAD preview for "questionable" packages 18:58 < kanzure> (especially for python-based code that generates a CAD model) 18:58 < fenn> you know about virtualization right? 18:58 < fenn> for sandboxing 18:59 < kanzure> in general.. but not specifically for this 18:59 < fenn> each fabonautix user could get their own virtual server.. :( 18:59 < kanzure> a sandbox on each page loaad? 18:59 < kanzure> blah 19:00 < fenn> ok how about only static data for web preview 19:00 < fenn> screws.py gereates a bunch of step files, but that only gets called manually 19:00 < kanzure> so when you download elon/tesla.git it might have a dependency on sally/something-or-other.git which is on fabonautix. 19:00 < kanzure> what i'm wondering is how the dependencies should be written down 19:00 < fenn> i dont understand why you wouldn't download the dependency 19:00 < kanzure> should they say {username or distrib name}/blah blah blah 19:01 < kanzure> well you might have multiple versions on the hdd 19:01 < kanzure> i guess git merge cna handle that 19:01 < kanzure> *can handle that 19:01 < fenn> you should be thinking about it in terms of branches, not username 19:01 < fenn> like sally's branch is the hot pink paintjob branch 19:02 < kanzure> ok so you need to specify a branch and a commit then. 19:02 < kanzure> can you selectively git clone/pull/whatever from particular branches? 19:02 < fenn> yeah 19:03 < kanzure> ok so all branches (specified in your dependencies) must be on fabonautix already? 19:03 < kanzure> i mean, if you want things to work 19:03 < fenn> yeah 19:04 < fenn> disk space is cheap btw 19:04 < kanzure> do you sign your commits with a key? 19:04 < kanzure> (you personally) 19:04 < fenn> i dont know how to do that, but yeah the 'good' branch would be signed after it was reviewed 19:04 < kanzure> was just wondering because i dunno how github does it 19:05 < kanzure> in its display of commit messages it links to my username 19:05 < kanzure> but for you it doesn't do anything 19:05 < kanzure> but what if someone registers 'fenn' on github? 19:05 < fenn> oh you 19:05 < fenn> 're just worried about username conflicts? 19:05 < kanzure> this is a new issue. not worried, just wondering 19:07 < fenn> all this signing and reviewing is a lot of work, so i don't expect day to day development work to involve all this crap 19:08 < fenn> probably only once per minor release 19:09 < kanzure> no i mean username conflicts in terms of the users registered on fabonaughter versus the usernames in the commit messages 19:09 < fenn> meh 19:09 < fenn> this isn't AIM 19:09 < fenn> we grownups can use real mathematics 19:09 < kanzure> what does math have to do with it? 19:10 < fenn> public key signing 19:10 < kanzure> so we do want individual commits to be signed? or what? 19:10 < kanzure> or at least allow it as an option 19:10 < fenn> only release commits i think 19:10 < fenn> (bear with me a sec) 19:11 < fenn> say i make five changes, then decide it's good enough for a while and make a release 19:12 < fenn> it gets uploaded to autogenix.org, i sign the commit hash with my key and paste that number in some document in the central autogenix.org repo 19:12 < fenn> the commit i signed depends on the other four commits so they must be good too right? 19:12 < kanzure> yes 19:23 < kanzure> http://heybryan.org:8081/package/lego/data/edit 19:24 < fenn> a 'submit' button would be nice 19:24 < kanzure> bah! blasphemy 19:29 < kanzure> i wonder if you can set a cookie through ajax 19:29 < kanzure> that would be nifty because right now an unregistered user can't edit a page 19:29 < kanzure> (but i think we should let them edit and be able to register to save their changes, without losing their progress) 19:30 < fenn> hm 19:30 < kanzure> i already tried on genebay to pass the content of their POST to the login form, but that didn't work 19:30 < kanzure> and after discussion with the cherrypy peeps i gave up on that 19:30 < kanzure> so ajax it is.. sorry lynx users :( 19:30 < fenn> i think that would be confusing, to edit something and then realize you have to register 19:31 < fenn> better to just not make the edit button show up if not registered 19:31 < kanzure> doesn't that lose the wiki-like appeal? 19:31 < fenn> if it were wiki-like we'd just let people edit whatever, which i'm still totally open to doing 19:32 < kanzure> ok cool 19:44 < kanzure> branch naming conventions plz? 19:47 < fenn> anthropomorphic assembly robots: http://youtube.com/watch?v=ZqLe0aWz8mg 19:51 -!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has quit [] 20:23 -!- Juul [n=Juul@85.235.22.9] has joined #hplusroadmap 20:24 < fenn> there is no dana 20:24 < fenn> there is only juul 20:24 < Juul> :P 20:26 < Juul> where does the name for the channel come from? 20:26 < fenn> a webpage on heybryan.org somewhere, which may no longer exist 20:27 < Juul> ok 20:27 < fenn> do you know about transhumanism? 20:28 < kanzure> sam thinks i'm worthless apparently? 20:28 < Juul> yes 20:29 < Juul> hey kanzure, just read up on the skdb project. much greatness. i like the ambition of it 20:29 < fenn> kanzure: that's why he was filtering your mail? because it's worthless? 20:29 < fenn> erm, you're worthless i mean 20:30 < kanzure> fenn: he claims skdb is not interesting and isn't related to replab at all 20:30 < kanzure> "unless you're highly autistic" 20:30 < fenn> well, is that supposed to be an insult? 20:30 < kanzure> no there's a smiley face after that 20:31 < fenn> well who elected sam to be god 20:32 < kanzure> marcin 20:32 < fenn> marcin loves skdb 20:32 < kanzure> since when 20:32 < fenn> since a few days ago 20:32 < fenn> when i explained it to him 20:34 < fenn> Juul: tell me more about yourself, what got you interested in skdb? 20:34 < Juul> i actually looked at skdb briefly a few days ago, but it wasn't until i read the slides that i had any clue how it would work. and the slides are easy to miss 20:35 < fenn> what slides? 20:35 < kanzure> Juul: do you know what "apt-get" is? 20:35 < Juul> fenn, http://adl.serveftp.org/lab/presentations/updates-from-austin.pdf 20:36 < fenn> ok, i think that presentation is awful but apparently it does something for people 20:36 < Juul> kanzure, sure, but that doesn't actually tell you how much work has already been done. it seemed very much like an idea with no implementation yet before i saw the slides 20:36 < kanzure> oh what about the code in the repository? 20:36 < fenn> nobody looks at code, and even if they did they wouldnt know what they were looking at 20:36 < Juul> exactly 20:37 < Juul> i just thought "huh, well guess i'll check back later when there's more info" 20:37 < fenn> i'm afraid it's really hard to make pretty pictures of this sort of thing, or i would have done it long ago 20:37 < kanzure> if you're not a developer maybe that's a good idea? 20:37 < kanzure> er 20:37 < kanzure> i mean, everyone is appreciated 20:37 < kanzure> but to be honest developers are what we need most 20:37 < fenn> anyone can learn to write a yaml document in 20 minutes 20:38 < kanzure> ok, a developer or someone with half a clue about engineering :) 20:38 < Juul> i am actually a developer 20:38 < kanzure> neat 20:39 < kanzure> are you sam? 20:39 < Juul> fenn, to answer your question: i'm booting a hackspace/fablab in Copenhagen right now, Denmark right now. IT engineer and studying biotech engineering now 20:39 < Juul> nope 20:39 < Juul> wow, i screwed that sentence up 20:40 < fenn> huh i was just talking about copenhagen, about why legos are expensive (taxes in denmark) 20:40 < Juul> heh, i remember some cheap clone-legos on the market here about 10 years ago 20:40 < Juul> they were horrible 20:40 < genehacker> that's why? 20:40 < fenn> supposedly.. i think it's actually because lego groups i a bunch of greedy fucks 20:40 < kanzure> Juul: ok sorry to confuse you. i guess you're fresh blood then 20:40 < genehacker> fresh meat 20:41 < genehacker> is the more correct term 20:41 < Juul> kanzure, no problem, i'm new here yeah. only recently got on the open manufacturing mailing list 20:42 < Juul> i think lego definitely charges more because they have the patents, but the high minimum wages and taxes in denmark are also a factor 20:43 < Juul> it's not like someone can compete though, so i guess they just try to estimate how much people are willing to pay 20:45 < Juul> so what are your backgrounds / approximate locations? 20:46 < kanzure> background: internet :). i'm in austin 20:46 < Juul> ah cool. is "mojo's daily grind" still there? 20:48 < kanzure> er, one sec 20:49 < fenn> lego factory is completely automated, no humans actually do anything in the factory 20:49 < fenn> so 'high minimum wages' is hardly an excuse 20:50 < Juul> hehe, they still have employees doing packing and trucking, but yes, it should have minimal effect 20:54 < fenn> so i can get a usb composite video input dongle, and a usb to vga output dongle, but no such thing as a usb to composite output 20:55 < genehacker> completely automated you say? 20:55 < genehacker> heheheheh 20:56 < fenn> that's what rauchwerk said at least 20:56 < genehacker> if only it was capable of automatic resource requisitioning 20:58 < fenn> 'more plastic needed' 21:01 < genehacker> ie robots getting more plastic automatically 21:01 < fenn> oh you mean stealing? 21:01 < fenn> you're such an immoral person 21:01 < genehacker> not necessarily 21:02 < Juul> the factory has evolved an AI and is secretly building a lego robot army by ordering 1% more plastic than needed for the normal lego production 21:02 < genehacker> heh 21:03 < genehacker> in b4 lego self-replicating machines 21:06 < Juul> been done --> http://tekartist.blogspot.com/2007/02/lego-mindstorms-automated-car-factory.html 21:06 < fenn> wow this is terrible.. apparently marcin doesn't know what "recursion" means: http://openfarmtech.org/index.php?title=Technological_Recursion 21:15 < Juul> either that, or he's explaining it very poorly 21:16 < Juul> no, you're right 21:21 -!- Juul [n=Juul@85.235.22.9] has quit ["sleep"] 21:30 < kanzure> hm maybe that was erik 21:35 < fenn> erik is belgian (?) 21:36 < fenn> apparent juul is a danish name 21:37 * fenn needs a better euphemism for 'google says' 21:42 < fenn> "If you already know what recursion is, just remember the answer. Otherwise, find someone who is standing closer to Douglas Hofstadter than you are; then ask him or her what recursion is." 21:44 < kanzure> did you come up with that? 21:44 < fenn> no it was on wikipedia 21:44 < kanzure> ha 21:44 < kanzure> i think that's even better :) 21:48 < kanzure> http://samba.org/~jelmer/dulwich/ 21:48 < kanzure> "Dulwich is a pure-Python implementation of the Git file formats and protocols. 21:48 < kanzure> The project is named after the village in which Mr. and Mrs. Git live in the Monty Python sketch." 21:48 < kanzure> head explodes 21:49 -!- phwooenix [n=chatzill@99-190-134-198.lightspeed.austtx.sbcglobal.net] has joined #hplusroadmap 21:50 < kanzure> hello phwooenix 21:50 < phwooenix> heyo 21:50 < kanzure> hm an austinite 21:50 < phwooenix> its david 21:50 < kanzure> treadwell? 21:50 < phwooenix> or should i have let you keep guessing? 21:50 < phwooenix> nope 21:50 < kanzure> lee? 21:51 < phwooenix> yessir 21:51 < kanzure> i was ready to go through about 20 others 21:51 < kanzure> hi. what's up? 21:51 < phwooenix> nothing much just decided to visit 21:51 < kanzure> i'm reading over http://samba.org/~jelmer/dulwich/tutorial/ at the moment 21:53 < phwooenix> git is that version control stuff? 21:53 < kanzure> yep 21:53 < kanzure> this is, in particular, for a website i'm working on, to let users use git without knowing it 21:54 < phwooenix> how do you mean? 21:54 < kanzure> http://heybryan.org:8081/ 21:54 < kanzure> hardware on this website is going to be stored in git repositories 21:55 < kanzure> so links/buttons need to do stuff with git. that tutorial ishopefully going to be useful to me in this endeavor 21:56 < phwooenix> hmmm your site takes extremely long to load 21:56 < kanzure> it's being hosted on my residential connection :( 21:57 < phwooenix> oh i see 22:01 -!- flamoot [n=root@69.158.94.148] has joined #hplusroadmap 22:01 -!- flamoot_ [n=root@69.158.94.148] has quit [Read error: 60 (Operation timed out)] 22:11 -!- phwooenix_ [n=chatzill@99-190-134-198.lightspeed.austtx.sbcglobal.net] has joined #hplusroadmap 22:13 < kanzure> wb 22:20 -!- phwooenix [n=chatzill@99-190-134-198.lightspeed.austtx.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 22:27 < fenn> Marc Juul22:27 < kanzure> from where? 22:28 < fenn> cc'ed to "Fablab inventory and beyond" recently cross posted to hell and back 22:28 < kanzure> are you still raped by cross-posts? 22:28 < fenn> i havent really figured out how to deal with it, no 22:29 < kanzure> i wonder why marcin linked to http://openfarmtech.org/index.php?title=MIT_Fab_Lab_item_list rather than our list 22:29 < kanzure> haha he said "C02" 22:29 < kanzure> i mean the formatting sucks much more on the wiki page 22:30 < fenn> is that even the same list as on mit's page? 22:30 < fenn> god i can't stand any more of this wiki stuff 22:31 * fenn used to like wikis :( 22:31 < kanzure> i'm pretty sure they went "copy-paste" 22:31 < fenn> yes, but, there is stuff i don't remember 22:32 * kanzure checks http://openfarmtech.org/index.php?title=MIT_Fab_Lab_item_list&action=history 22:33 < kanzure> sam slapped me on the wrist for making an anonymous edit on openfarmtech.org. i didn't even know i was anonymous 22:33 < kanzure> but apparently that's bad 22:33 < fenn> that was bad anyway, your huge copy-paste with no explanation 22:33 < fenn> don't do that 22:33 < kanzure> ok 22:35 < fenn> yeah there is stuff that wasn't on the list before; the luxo lamp for instance 22:37 < fenn> > Can you help me convince him that I wish him and skdb no ill will? I 22:37 < fenn> > wasn't around for whatever made him upset but he seems bound and 22:37 < fenn> > determined to consider me an enemy. 22:37 * fenn wonders what you said 22:37 < kanzure> i thought we cleared that up 22:38 < kanzure> uh, well, i told him i was upset 22:39 < kanzure> mostly about toe-stepping and how they're ignoring us 22:39 < kanzure> if they want to do something different that's cool, but they don't 22:43 < ybit> i think my computer is on its last few volts of energy 22:44 < kanzure> i can't figure out how to traverse a tree with dulwich 22:44 < ybit> it has raped gmail over the past two days now, and it has only fetched 4.3gb 22:45 < ybit> and it has taken about two hours to convert 20% of KSRM to audio 22:45 < kanzure> http://www.diybioforums.com/projects/mccorkle_tomkins-tinch_microchannels.png 22:45 -!- phwooenix_ [n=chatzill@99-190-134-198.lightspeed.austtx.sbcglobal.net] has quit ["ChatZilla 0.9.85 [Firefox 3.0.14/2009082707]"] 22:47 < kanzure> oops i meant to link to http://diybioforum.org/projects/mccorkle_tomkins-tinch_microchannels.png 22:52 < genehacker> what's that 22:53 < genehacker> is that for shrinky dink microfluidics 22:53 < genehacker> also about that monitor 360 thing, what sort of questions did they ask you? 22:53 < kanzure> this was months ago, i guess you could go look it up on the web if you want 22:53 < kanzure> it's for a laser cutter 22:54 < genehacker> oh 22:54 < genehacker> did it work out? 22:54 < kanzure> monitor 360 interviews: http://groups.google.com/group/diybio/browse_frm/thread/446cff057ec54d3d/f4e4507819776d10?lnk=gst&q=monitor+360#f4e4507819776d10 22:54 < genehacker> which was a month ago? 22:54 < kanzure> months ago 22:54 < kanzure> february? 22:55 < genehacker> ok 23:05 < kanzure> aha: http://diybioforum.org/projects/mccorkle_tomkins-tinch_microchannels.svg 23:17 < fenn> is that 'using computers to mimic biology' actually worth watching? 23:17 < fenn> or is it another trigger happy bryan moment 23:18 < ybit> bastards at ustream have made it near impossible to cipher through the garbled text to download the video 23:18 < fenn> but ybit aren't you permanently wired into the net? 23:19 < ybit> was planning on downloading and playing the audio at high speed tomorrow at work, but that probably isn't an option 23:19 < fenn> you should have ustream receptors implanted in your eyeballs 23:20 < ybit> heh, no thanks you can have adobe files flying through your body if you want though 23:20 < fenn> oo can it do silverlight too? 23:21 < ybit> of course, it was made my microsoft 23:21 < ybit> wtf is xulrunner-stub 23:22 < ybit> it's taking half of my system's resources 23:22 < ybit> the other half going to festival 23:22 < fenn> appears to be something firefox uses 23:23 < fenn> to communicate between ff and thunderbird, or something 23:23 < ybit> why? i have only static pages loaded, damn this bloat, damn it to... to, uh.. 23:23 < fenn> dll hell? 23:23 < ybit> yes! dll hell! 23:24 < ybit> i feel much better now 23:24 < fenn> this is intersting the vuzix VR920's come with magnetometer built in: http://www.pabr.org/wxhmd/doc/wxhmd.en.html 23:25 < fenn> not worth an extra $250 though 23:27 < fenn> i love his bit-banging video output 23:28 < ybit> that's kind of neat 23:29 < ybit> fenn: how often are you using your myvu now? 23:30 * fenn wonders whether to tell the truth.. 23:30 < kanzure> i think i've been using it more 23:30 < ybit> :P 23:30 < fenn> i ran out the batteries today, supposedly it goes 4 hours 23:30 < fenn> i was playing this terrible video game "malice" 23:30 < kanzure> i still think there's a beaver in there somewhere, or something 23:31 < fenn> because another terrible video game also named "malice" has a cool soundtrack, which i have, and got sort of mixed up 23:31 < fenn> are you thinking "crash bandicoot"? 23:31 < kanzure> nope 23:31 < kanzure> but that, sir, is also a terrible video game 23:32 < ybit> diddy kong racing ftw 23:33 < ybit> wow, i'm out of the loop, i didn't realize they still make crash bandicoot games 23:33 < kanzure> my first exposure to crash was with spyro the dragon. crash bandicoot was a demo game on the same disc 23:34 * ybit hasn't played a videogame in ..how long Phreedom? grep the logs! 23:34 < fenn> batten the hatches! swab the lens! 23:34 < ybit> wow.. 7 months maybe? 23:35 < ybit> is this what happens when you go from geek to nerd? 23:35 < fenn> are gamers geeks? 23:35 < fenn> i mean it's correlated but not causative 23:35 < ybit> i'd classify them as such 23:35 < ybit> thinkgeek thinks so as well 23:35 < fenn> of course thinkgeek would like you to think you're a geek 23:36 < ybit> true, they would call operah a geek if they knew she would buy their stuff 23:36 < ybit> oprah* 23:36 < fenn> oprah is a geek.. her name is an anagram, or something 23:37 < kanzure> ophar? 23:37 < kanzure> i fail 23:37 < fenn> it's "harpo" spelled backwards :\ 23:37 < kanzure> "Harpo (born Jan Harpo Torsten Svensson, 5 April 1950 in Bandhagen, Stockholm), is a Swedish pop star known under the stage name Harpo. ..." 23:38 < ybit> Arthur Adolph "Harpo" Marx (November 23, 1888 – September 28, 1964), born Adolph Arthur Marx, was the second-born of the Marx Brothers and a unique comic performer whose style was influenced by clown and pantomime traditions. 23:38 < ybit> certainly geeky ;) 23:38 < ybit> harpo studio runs the oprah show or something like that 23:39 < kanzure> the what show? 23:39 < ybit> some show on t.v. that older women tend to watch 23:39 < ybit> minus katsmeow-afk 23:41 < genehacker> harpo studies runs oprah? 23:41 < genehacker> never knew 23:41 < fenn> o teh joys of knowledge 23:41 < ybit> neither did and i still don't, it was a quick google scan 23:41 < genehacker> the vuzix has a magnetometer? 23:42 < ybit> how cool is that 23:42 < fenn> <- not impressed 23:42 < genehacker> why? 23:42 < fenn> because it should have a fucking gumstix built in too! 23:42 < genehacker> what the heck does it use the magnetometer for? 23:42 < fenn> so you know what direction you're facing 23:43 < fenn> accelerometer only tells you which way is down 23:43 < genehacker> does it show north? 23:43 < genehacker> in the goggles? 23:43 < fenn> just think about it for a while 23:44 < fenn> ok got it? 23:44 < genehacker> well I thought vuzix only made stuff for ipods and things like that 23:44 < genehacker> I didn't know they were actually doing head tracking 23:44 < fenn> ah but this is the "VR" model 23:44 < genehacker> oh 23:44 < genehacker> no wonder 23:44 < fenn> it's totally lame, don't worry too much about it 23:44 < genehacker> I should have known 23:45 < genehacker> it's not totally lame if you get the head tracking output from it and hook it up to an RC plane with a camera on it actuated by a servo controlled by the head tracking output 23:46 < fenn> ok but why do they have to use HIDRAW and recompile the kernel just to read the tracking data :( 23:46 < genehacker> I don't know 23:46 < fenn> i mean that just screams serial port 23:46 < genehacker> because it's proprietary? 23:46 * fenn shrugs 23:47 < genehacker> anyway, something called a monotiltrotor would make a perfect delivery UAV 23:48 < genehacker> http://www.youtube.com/watch?v=lFW7HEupkCM 23:48 < fenn> "The systems draws 1 A with no power optimizations. This is acceptable since nobody would want to spend more than a few minutes with two pulsed microwave RF transmitters, an overheating lithium battery and eye-straining optics strapped to their forehead anyway." 23:48 < genehacker> of course that's what it's being touted as 23:48 < genehacker> hahaha 23:49 < genehacker> how's the eyestrain on the myvu? 23:50 < fenn> i dunno, it's certainly not supposed to fit over your glasses so hard to say what it would be like if it werent so obnoxious 23:53 < fenn> man i just want to smack the industrial design department http://www.slashgear.com/kopin-golden-i-gen-2-wearable-computer-on-course-for-2010-launch-2257525/ 23:54 < genehacker> why? 23:55 < fenn> big red blobs of plastic! 23:55 < fenn> and obnoxious logos, on my face! 23:55 < ybit> sed -e :a -e 's/<[^>]*>//g;/ now that's nice 23:55 < genehacker> that looks optimal for not falling off your head and not vibrating 23:56 < genehacker> not falling off your face is important in the applications where wearables are used 23:56 < genehacker> IE plant inspection 23:56 < genehacker> errr... 23:56 < fenn> uh huh whatever 23:56 < genehacker> are they used in plant inspection yet? 23:56 < genehacker> but yeah awful 23:56 < ybit> regex isn't difficult, and it's quite fun/useful.. 23:57 < genehacker> wait that's a whole computer? 23:57 < fenn> it's the same processor as the beagleboard or gumstix 23:58 < genehacker> so not much power 23:58 < fenn> cortex can render 720p video.. good enuf 23:59 < genehacker> what do you mean by render? 23:59 < genehacker> is it enough to play doom? 23:59 < fenn> display on screen 23:59 < fenn> of course it can play doom.. wtf 23:59 < genehacker> ok