--- Day changed Sun Sep 06 2009 | ||
CIA-32 | skdb: kanzure * r cef5c3d /unittests/test_geom.py: fuse some more boxes and test their volumes | 00:06 |
---|---|---|
katsmeow | ybit, you need crt electron guns? | 00:07 |
CIA-32 | skdb: kanzure * r e6ca3cf / (30 files in 2 dirs): move unit tests around | 00:14 |
-!- mason-l [n=x@202-89-188-136.static.dsl.amnet.net.au] has quit ["Ex-Chat"] | 00:19 | |
katsmeow | ybit, speak up before he busts the crts up | 00:20 |
CIA-32 | skdb: kanzure * r abc7ef9 / (doc/proposals/graphtheory.py graphtheory.py): move graph theory code out of the main directory and into the abyss | 00:23 |
kanzure | todo: write unit tests for my assembly part overlap detection methods. | 00:27 |
* kanzure sleeps | 00:27 | |
fenn | kanzure: torque is N*m/rev, not N*m as is often said | 00:33 |
fenn | dumbasses who think angles don't exist | 00:33 |
-!- mason-l [n=x@202-89-188-136.static.dsl.amnet.net.au] has joined #hplusroadmap | 00:49 | |
genehacker | kanzure does sciencemadness work for you? | 00:50 |
genehacker | oh wait nvm | 00:55 |
-!- xp_prg [n=xp_prg3@208.54.15.112] has quit ["This computer has gone to sleep"] | 01:04 | |
fenn | kanzure: BRepAlgoAPI_Fuse(brick1.shapes[0], brick2.shapes[0]) takes just as long as a boolean common operation (10 seconds) | 01:07 |
-!- xp_prg [n=xp_prg3@67.188.6.132] has joined #hplusroadmap | 01:46 | |
-!- genehacker [n=noko@pool-173-57-48-104.dllstx.fios.verizon.net] has quit [Read error: 113 (No route to host)] | 01:57 | |
-!- katsmeow is now known as katsmeow-afk | 02:49 | |
-!- kso512 [n=kso@cpe-66-68-153-104.austin.res.rr.com] has quit [Read error: 110 (Connection timed out)] | 03:28 | |
-!- bct [n=bct@S0106001c1041555b.ed.shawcable.net] has joined #hplusroadmap | 03:45 | |
-!- xp_prg [n=xp_prg3@67.188.6.132] has quit ["This computer has gone to sleep"] | 04:21 | |
ybit2 | katsmeow-afk: yes i do | 08:01 |
ybit2 | as the fenn mentioned once before though, the choke coil may be wrong for sem | 08:02 |
ybit2 | don't know just yet | 08:02 |
kanzure | hello bct | 08:13 |
kanzure | fenn: should I bother writing the unit tests then? | 08:30 |
kanzure | also it doesn't take that long on my laptop to do Fuse | 08:30 |
kanzure | 2.6sec to run through test_geom.py | 08:30 |
kanzure | actually the unittest module claims 0.746sec | 08:31 |
kanzure | and BRepAlgoAPI_Common takes less than 1sec to run on two boxes | 08:34 |
-!- |kardan| [n=kardan@p54BE369B.dip.t-dialin.net] has joined #hplusroadmap | 08:36 | |
kanzure | fenn: what's wrong here? | 08:40 |
kanzure | opt = brick1.options(brick2)[0] | 08:40 |
kanzure | opt.interface1.part is None | 08:40 |
-!- kardan| [n=kardan@p54BE454F.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] | 08:54 | |
kanzure | load_CAD() makes that not be None? wtfc | 09:10 |
kanzure | grr the bullshit from STEPImporter isn't using stdout or stderr | 09:35 |
kanzure | but maybe it's because somebody forgot to turn off the debug flags on the configure script when compiling opencascade for the dot debs? | 09:36 |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has joined #hplusroadmap | 09:49 | |
-!- goonie_ is now known as goonie | 09:54 | |
kanzure | pythonOCC-0.3/src/samples/Level2/DataExchange$ python import_step_single.py &>/dev/null | 10:05 |
kanzure | well that's one way to get rid of the annoying output | 10:05 |
kanzure | although that gets rid of absolutely everything | 10:05 |
kanzure | heh things work for once: brick1.interfaces.index(opt.interface2) | 10:08 |
fenn | i don't see how it could be neither stdout or stderr and still show up | 10:09 |
kanzure | it's stdout but in the library | 10:09 |
kanzure | python only controls python stdout apparently | 10:09 |
kanzure | unless there's a way to "lock" the "global" stdout or something? | 10:09 |
fenn | i dunno | 10:10 |
kanzure | *but in the OCC library | 10:10 |
Utopiah | not sure it was shared here earlier http://www.wikid.eu/ "WikID, the Industrial Design Engineering Wiki" | 10:51 |
kanzure | doesn't seem to have much content | 10:55 |
fenn | what content there is doesn't seem to be useful | 10:59 |
fenn | negatively useful in fact | 11:00 |
fenn | "a coffee mill changes beans to coffee, a chair supports (prevents one from becoming tired), and a poster provides information (decreases uncertainty)" | 11:00 |
fenn | is it just me or are all those sort of non-sequitur | 11:01 |
kanzure | fenn: http://adl.serveftp.org/yaml-test.py | 11:01 |
fenn | or plain wrong even | 11:01 |
fenn | why is it a 'str object'? | 11:04 |
kanzure | because it's a string in the yaml snippit | 11:07 |
kanzure | hmm | 11:07 |
fenn | why is it a string? | 11:07 |
fenn | it should be 'Blah' or 'instance' | 11:08 |
kanzure | no | 11:08 |
kanzure | look at the yaml string | 11:08 |
kanzure | yaml will read "interfaces:" and see that it has two values in the list | 11:09 |
kanzure | in the sequence | 11:09 |
fenn | oh | 11:09 |
kanzure | so it's correct | 11:09 |
fenn | well, bad kanzure | 11:09 |
kanzure | no this is fine | 11:09 |
kanzure | this is supposed to show that post_init_hook is not being called | 11:09 |
kanzure | and now I can play around with FennObject.from_yaml quickly | 11:09 |
fenn | my_blah = yaml.load("!blah\ninterfaces:\n- !interface hello\n- !interface hello2 | 11:09 |
kanzure | why should it be an interface? | 11:10 |
fenn | otherwise you get an error because it's a string | 11:10 |
kanzure | the point is that *any* list doesn't load | 11:10 |
kanzure | no you get an error because it doesn't have an attribute | 11:10 |
kanzure | that you supposedly added in post_init_hook | 11:10 |
kanzure | see? | 11:10 |
fenn | please make modification and test before continuing bitching | 11:10 |
kanzure | the string error is *correct* | 11:10 |
kanzure | it's true that str has no attribute "part" | 11:11 |
kanzure | Blah.post_init_hook sets str.part | 11:11 |
fenn | 'foo'.part = 'bad kanzure' | 11:12 |
fenn | AttributeError: 'str' object has no attribute 'part' | 11:13 |
kanzure | hey wtf is "yield" doing in yaml/constructor.py | 11:13 |
fenn | it's a generator.. | 11:13 |
kanzure | why | 11:13 |
kanzure | why does it have to be a generator | 11:13 |
fenn | because they work better on huge files | 11:13 |
kanzure | blah | 11:13 |
fenn | yaml is designed to work with streams i think | 11:14 |
fenn | make up your mind | 11:14 |
kanzure | ? | 11:14 |
kanzure | my mind about what? | 11:14 |
fenn | the other day you were bitching about how people didn't use generators | 11:14 |
fenn | and how it broke your 15k bookmarks | 11:15 |
kanzure | but now it's breaking something else because they didn't bother to implement post_init_hook for us | 11:15 |
kanzure | this is really something that they should have done | 11:15 |
fenn | are you sure? | 11:15 |
kanzure | yes if it's a generator | 11:15 |
fenn | i'm not totally sold on the idea of post_init_hook | 11:15 |
kanzure | what would be the other way to do it? | 11:15 |
fenn | in __init__ somehow | 11:15 |
kanzure | same problem | 11:16 |
kanzure | in __init__ it's only "partial" apparently | 11:16 |
kanzure | and then later yaml throws the lists into the dictionary or something | 11:16 |
kanzure | see, it's because of the generator | 11:16 |
fenn | you mean it fills out the lists later, but you have a pointer to an empty list in the attribute | 11:16 |
fenn | instead* | 11:16 |
kanzure | yep | 11:16 |
kanzure | construct_yaml_seq in yaml/constructor.py is basically: data = []; yield data; data.extend(self.construct_sequence(node)) | 11:22 |
fenn | seems out of order doesn't it | 11:23 |
fenn | should be: data.extend(self.construct_sequence(node)); yield data | 11:24 |
* kanzure tries | 11:24 | |
fenn | maybe they did it that way for some reason | 11:24 |
kanzure | like loading big files? | 11:24 |
fenn | right | 11:24 |
kanzure | doesn't seem to fix it | 11:26 |
kanzure | although I'm doing FennObject.yaml_loader.construct_yaml_seq = my redefined method | 11:26 |
kanzure | oh it's not even called | 11:29 |
kanzure | FennObject.yaml_loader.__bases__[4] | 11:30 |
kanzure | >>> FennObject.yaml_loader.__bases__ | 11:30 |
kanzure | (<class 'yaml.reader.Reader'>, <class 'yaml.scanner.Scanner'>, <class 'yaml.parser.Parser'>, <class 'yaml.composer.Composer'>, <class 'yaml.constructor.Const | 11:30 |
kanzure | ructor'>, <class 'yaml.resolver.Resolver'>) | 11:30 |
kanzure | 22 FennObject.yaml_loader.__bases__[4].construct_yaml_seq = _construct_yaml_seq | 11:31 |
kanzure | didn't work. hrm. | 11:31 |
fenn | good. | 11:31 |
kanzure | somehow I can't seem to overwrite construct_yaml_seq | 11:31 |
kanzure | yaml.constructor.Constructor.construct_yaml_seq = _construct_yaml_seq | 11:32 |
kanzure | also doesn't work | 11:32 |
kanzure | running out of ideas | 11:33 |
kanzure | http://adl.serveftp.org/yaml-test.py | 11:34 |
kanzure | AttributeError: 'FakeInterface' object has no attribute 'extra_attr' | 11:37 |
CIA-32 | skdb: fenn * r a98b061 /packages/threads/threads.py: minor changes | 11:40 |
CIA-32 | skdb: fenn * r ca37fa5 /core/yamlcrap.py: appears to fix the null sequence upon loading problem | 11:40 |
fenn | yay sleepycode | 11:40 |
kanzure | ok | 11:42 |
fenn | you will have to ask my hypothalamus wtf i just did | 11:42 |
kanzure | not your hippocampus? | 11:43 |
kanzure | fenn fails brains | 11:43 |
fenn | a hippocampus says what? | 11:43 |
kanzure | you set deep=True on construct_mapping in from_yaml | 11:43 |
fenn | yes but why? | 11:43 |
fenn | does that construct the node tree entirely first? | 11:44 |
kanzure | yes, it's what happens when you specify your own __setstate__ too | 11:44 |
kanzure | oopsies | 11:45 |
fenn | if self.deep_construct: for dummy in generator: pass | 11:46 |
kanzure | from copy import copy, deepcopy; from skdb import *; lego_pack = load_package("lego"); lego_pack.load_data(); brick1 = deepcopy(lego_pack.parts[0]); brick2 = deepcopy(lego_pack.parts[0]); brick1.load_CAD() | 11:46 |
kanzure | AttributeError: 'Lego' object has no attribute 'load_CAD' | 11:46 |
kanzure | oh I didn't import geom | 11:46 |
kanzure | catastrophe inverted | 11:46 |
fenn | brick1.interfaces[0] == brick1 ? | 11:47 |
kanzure | >>> brick1.interfaces[0].part | 11:47 |
kanzure | Lego(name=2x2 round brick, num_pegs=4, num_holes=4) | 11:47 |
kanzure | >>> brick1.interfaces[0].part == brick1 | 11:47 |
kanzure | True | 11:47 |
kanzure | yay | 11:47 |
fenn | do i get a raise? | 11:49 |
kanzure | you wrote nine characters | 11:49 |
kanzure | no | 11:49 |
kanzure | you must write 100klines/week to get a raise | 11:50 |
fenn | that should mean i get a raise and a cookie too | 11:50 |
fenn | for not writing piles and piles of crap | 11:50 |
kanzure | mr. anderson, a company is like a centipede | 11:50 |
kanzure | if any one of its employees has a problem, the company has a problem | 11:50 |
kanzure | do I make myself clear? | 11:50 |
fenn | all legs and no brain? | 11:50 |
fenn | a poisonous monster? | 11:50 |
kanzure | well not if you're in the myzeopta period | 11:50 |
fenn | where's my rabbit | 11:50 |
kanzure | silurian period | 11:51 |
fenn | who comes up with these names? | 11:51 |
kanzure | old men who still play with dinosaurs | 11:52 |
fenn | "Murchison named the sequences for a Celtic tribe of Wales, the Silures, following the convention his friend Adam Sedgwick had established for the Cambrian." | 11:52 |
fenn | obviously i don't know my welsh tribes | 11:52 |
kanzure | too bad he didn't name them after whales | 11:52 |
fenn | i thought it sounded rather tolkein | 11:52 |
kanzure | Shamoo, Shamploo, | 11:52 |
fenn | tolkien* | 11:53 |
kanzure | "in the shamoo period, giant man-eating centipedes roamed the cerniferous forests" | 11:53 |
fenn | right, so now that the problem is solved, you have to continue to stampede in some direction | 11:54 |
* fenn suggests the todo list | 11:54 | |
kanzure | well I was actually working on something else originally | 11:54 |
fenn | oh | 11:54 |
kanzure | so I'll be getting back to that | 11:54 |
kanzure | unless you have some particular suggestions .. | 11:55 |
fenn | no, i'm going to continue making fun of the product design wiki | 11:56 |
kanzure | maybe you should be more constructive | 11:57 |
kanzure | and add a graph with boxes and arrows | 11:57 |
kanzure | I'm sure they'll love it | 11:57 |
kanzure | sounds like they already have at least one of those | 11:59 |
fenn | and no manufacturing step anywhere on it | 12:03 |
fenn | is it bedtime yet? | 12:04 |
kanzure | didn't you just wake up? | 12:04 |
fenn | i woke up at 11 | 12:05 |
fenn | pm | 12:05 |
kanzure | oh it was me that just woke up | 12:05 |
fenn | why did you wake up in the middle of the night? | 12:06 |
kanzure | I didn't. went to sleep at 12 and woke up at 8. | 12:06 |
fenn | um. what's up with the latest email to OM? | 12:10 |
kanzure | J. Andrew Rogers? | 12:12 |
kanzure | btw JAR follows Eugen Leitl around on the net a bit | 12:13 |
kanzure | he is an annoying crypto guy | 12:13 |
fenn | no, you forwarding something you just wrote via eugen leitl? | 12:13 |
kanzure | you wrote it | 12:14 |
kanzure | he picked it up | 12:14 |
kanzure | thought I'd forward it since that text hasn't been on om yet | 12:14 |
fenn | JAR sure likes to make sweeping generalizations | 12:19 |
fenn | i just want one specific example of WTF he's talking about | 12:19 |
fenn | time python -c 'import skdb' | 12:26 |
kanzure | "overhumanism" ? http://www.antipope.org/charlie/blog-static/2009/09/chromed_jackboots.html#comments | 12:51 |
kanzure | fenn: AttributeError: 'module' object has no attribute 'Lego' | 13:19 |
kanzure | this is in import_package_classes | 13:20 |
kanzure | (Package.import_package_classes) | 13:20 |
kanzure | the line is: cls = getattr(module, class_name) | 13:20 |
kanzure | where module = packages/lego/lego.py | 13:20 |
fenn | i don't have Package.import_pakage_classes | 13:20 |
kanzure | it's the same thing as import_package_classes though | 13:21 |
kanzure | Package("lego") | 13:22 |
kanzure | load_package("lego") | 13:22 |
kanzure | dummy = Package(package) | 13:24 |
fenn | right, so i can find the packages directory | 13:24 |
fenn | which could be located anywhere | 13:25 |
kanzure | yes I know | 13:25 |
* kanzure fixes | 13:25 | |
fenn | i guess that should be using settings instead | 13:25 |
kanzure | yes | 13:25 |
kanzure | yay it works now | 13:27 |
kanzure | should I delete all this load_package, open_package crap? | 13:27 |
kanzure | technically it still works, but is less awesome | 13:28 |
-!- strages [n=strages@c-68-62-216-5.hsd1.al.comcast.net] has quit [Read error: 54 (Connection reset by peer)] | 13:39 | |
-!- mason-l [n=x@202-89-188-136.static.dsl.amnet.net.au] has quit [Read error: 110 (Connection timed out)] | 13:49 | |
-!- mason-l [n=x@202-89-188-136.static.dsl.amnet.net.au] has joined #hplusroadmap | 13:50 | |
kanzure | File "/home/kanzure/code/skdb/packages/screw/screw.py", line 68, in __init__ | 13:51 |
kanzure | res = unit() | 13:51 |
kanzure | File "/home/kanzure/code/skdb/packages/threads/threads.py", line 43, in tensile_area | 13:51 |
kanzure | assert Unit(self.pitch).compatible('mm/rev') | 13:51 |
kanzure | how did it make that particular leap? | 13:51 |
kanzure | that's from test_package.py | 13:51 |
kanzure | oh. | 13:52 |
kanzure | unit = getattr(self.thread,k) | 13:52 |
-!- genehacker [n=noko@pool-173-57-48-104.dllstx.fios.verizon.net] has joined #hplusroadmap | 13:57 | |
-!- xp_prg [n=xp_prg3@c-67-188-6-132.hsd1.ca.comcast.net] has joined #hplusroadmap | 14:15 | |
-!- dira [n=chatzill@86.99.40.183] has joined #hplusroadmap | 14:44 | |
kanzure | hello dira | 14:45 |
dira | hey | 14:45 |
dira | what's up? | 14:45 |
dira | how's the collision thing going ? | 14:45 |
kanzure | opencascade's BRepAlgoAPI_Common and BRepAlgoAPI_Fuse methods apparently take too long when a brep model is anything more interesting than a giant box. | 14:46 |
dira | is it sorta mesh model Collision detection? | 14:50 |
kanzure | no | 14:53 |
kanzure | the method using common and fuse boolean operations is just a way of combining brep models, which are not meshes | 14:54 |
kanzure | and then I take the volume of the resulting meshes | 14:54 |
kanzure | ack | 14:54 |
kanzure | resulting breps :) | 14:54 |
kanzure | fenn: have you ever noticed that the option.connect() output is in the wrong order? | 15:14 |
kanzure | >>> option.connect() | 15:14 |
kanzure | connecting 2x2 round brick's stud to 2x2 round brick's anti stud brick1[6] to brick2[2]) | 15:14 |
kanzure | but if you investigate, brick2.interfaces[6].connected is what is set (not 2) | 15:14 |
kanzure | er nevermind | 15:16 |
kanzure | silly me | 15:16 |
* dira watches kanzure talking to himself | 15:18 | |
-!- ve [n=a@94-193-95-252.zone7.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] | 15:31 | |
-!- xp_prg [n=xp_prg3@c-67-188-6-132.hsd1.ca.comcast.net] has quit ["This computer has gone to sleep"] | 15:35 | |
kanzure | what is a DSFiller? | 15:49 |
kanzure | http://adl.serveftp.org/lab/opencascade/doc/ReferenceDocumentation/ModelingAlgorithms/html/classBOPTools__DSFiller.html | 15:49 |
kanzure | hm I bet the skdb import time is spent making that units file every single time | 15:55 |
-!- strages [n=strages@c-68-62-216-5.hsd1.al.comcast.net] has joined #hplusroadmap | 15:57 | |
kanzure | http://exotk.org/ wrapper for opencascade from 2002 | 16:02 |
-!- genehacker [n=noko@pool-173-57-48-104.dllstx.fios.verizon.net] has quit [Read error: 148 (No route to host)] | 16:04 | |
kanzure | http://opencascade.blogspot.com/2008/12/why-boolean-operations-are-so-sloooooow.html | 16:13 |
kanzure | http://opencascade.blogspot.com/2008/12/why-are-boolean-operations-so-sloooooow.html | 16:16 |
kanzure | er | 16:16 |
kanzure | http://opencascade.blogspot.com/2008/12/why-are-boolean-operations-so-sloooooow.html | 16:16 |
kanzure | well I fail at linking | 16:17 |
kanzure | there's a part 2 which is more revealing | 16:17 |
-!- ve [n=a@94-193-95-252.zone7.bethere.co.uk] has joined #hplusroadmap | 16:19 | |
-!- ve [n=a@94-193-95-252.zone7.bethere.co.uk] has quit [Connection timed out] | 16:36 | |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has quit [] | 17:03 | |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has joined #hplusroadmap | 17:04 | |
-!- nchaimov [n=cowtown@c-24-21-45-17.hsd1.wa.comcast.net] has joined #hplusroadmap | 17:25 | |
kanzure | assembly_volume_estimate takes less than half a second for Package("lego").parts[0] | 17:33 |
CIA-32 | skdb: kanzure * r 524be53 / (7 files in 4 dirs): fixed Package, wrote more geom tests, wrote more package tests | 17:41 |
-!- genehacker [n=noko@pool-173-57-48-104.dllstx.fios.verizon.net] has joined #hplusroadmap | 17:51 | |
-!- wrldpc2_ [n=benny@ool-ad03fe34.dyn.optonline.net] has joined #hplusroadmap | 18:32 | |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has quit [Read error: 104 (Connection reset by peer)] | 18:32 | |
-!- wrldpc2_ is now known as wrldpc2 | 18:32 | |
-!- genehacker2 [n=noko@pool-173-57-48-104.dllstx.fios.verizon.net] has joined #hplusroadmap | 18:45 | |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has quit [Read error: 110 (Connection timed out)] | 18:51 | |
-!- QuantumG [n=qg@206.248.137.22] has joined #hplusroadmap | 18:52 | |
QuantumG | did ya miss me? | 18:52 |
kanzure | not much | 18:54 |
kanzure | what's up? | 18:54 |
QuantumG | was looking at single board computers last night | 18:54 |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has joined #hplusroadmap | 18:54 | |
QuantumG | and basically came to the conclusion that an eeepc did everything I wanted for cheaper. | 18:55 |
QuantumG | 'cept that it weighs 900g with battery | 18:55 |
-!- genehacker [n=noko@pool-173-57-48-104.dllstx.fios.verizon.net] has quit [Read error: 113 (No route to host)] | 18:55 | |
* kanzure considers setting up a source code documentation militial front | 18:57 | |
QuantumG | a low power sbc with wifi, usb and programmable IO.. that doesn't cost more than a netbook... | 18:57 |
kanzure | anyone who writes undocumented code gets shot | 18:57 |
QuantumG | heh | 18:57 |
kanzure | what the fuck is this: http://adl.serveftp.org/lab/opencascade/BOPTools_PaveFiller.cxx | 18:58 |
QuantumG | cxx | 19:00 |
QuantumG | hmm | 19:00 |
kanzure | notice how all the comments are: // purpose: | 19:00 |
QuantumG | I've heard some people use that extension to me generated cpp | 19:00 |
kanzure | and hten it's totally blank | 19:00 |
QuantumG | so not finding comments in it is not that surprising | 19:00 |
kanzure | what's the point of a comment saying "purpose" and then not filling it in? | 19:00 |
QuantumG | 6.FF | 19:00 |
QuantumG | oh, I love people like that | 19:01 |
kanzure | no you don't | 19:01 |
QuantumG | "I read this paper about how to implement an algorithm and it had psuedocode in it, so I'm going to put that in my comments and then implement it" | 19:01 |
kanzure | IMHO giving a reference to a paper would be better than this shit | 19:02 |
QuantumG | "if you want to know what my code does, go read the paper.. and no, it's not publically available." | 19:02 |
kanzure | ah you mean they don't understand it | 19:02 |
QuantumG | variable names like "VF" | 19:02 |
QuantumG | and functions like "PerformVF" | 19:02 |
QuantumG | what a dipshit | 19:02 |
kanzure | I should show you my professor's code | 19:02 |
kanzure | http://adl.serveftp.org/equer.lisp | 19:03 |
QuantumG | speaking of retarded programmers.. I checked out the opencog code the other day to see if there had been any change.. they seem to have added a few more kitchen sinks to the codebase but *still* no-one has joined any of it together into something that *does something* | 19:03 |
kanzure | imho I've never seen any indication that goertzel can code | 19:04 |
kanzure | so I've mostly ignored opencog | 19:04 |
QuantumG | he's an academic | 19:04 |
QuantumG | no-one else there can code either though | 19:04 |
kanzure | nah he's just timothy leary reincarnated .. as an academic. | 19:04 |
kanzure | did you see equer.lisp? | 19:04 |
QuantumG | and people who can code are scared off by them | 19:04 |
QuantumG | yes, but its lisp, so I kinda expected it to be horrid | 19:05 |
kanzure | while I'm complaining, | 19:06 |
kanzure | someone wrote this: | 19:06 |
kanzure | compatibility_equations.cs | 19:06 |
kanzure | er | 19:06 |
kanzure | http://adl.serveftp.org/compatibility_equations.cs | 19:06 |
kanzure | in the lab that I work in. | 19:06 |
kanzure | she subsequently got a master's thesis for this "innovative" work | 19:07 |
kanzure | but if you look at it, it's just six conditionals | 19:07 |
QuantumG | to be honest, it's a master's thesis, I don't actually expect much more | 19:07 |
kanzure | if that's true then I should be able to write a few lines of bullshit and get a degree too | 19:08 |
QuantumG | master's thesis = baby's first unpublishable paper. | 19:08 |
kanzure | maybe you just have low standards | 19:09 |
QuantumG | I'm just cynical because I've hung out with post-grads :) | 19:09 |
QuantumG | I dunno how profs do it :) | 19:10 |
kanzure | wait till you meet the postdocs | 19:10 |
QuantumG | them too | 19:11 |
QuantumG | anyways, I'm thinking of building a blimp | 19:12 |
kanzure | out of what? | 19:12 |
QuantumG | where blimp is a generous description | 19:12 |
QuantumG | computer controlled floating garbage bag would be more accurate | 19:12 |
kanzure | you mean American Airlines? | 19:13 |
QuantumG | :) | 19:13 |
QuantumG | 1. buy some clothes line, garbage bags and rent a helium canister.. fly some tethered experiments, collect some data, etc. | 19:14 |
kanzure | what data? | 19:14 |
QuantumG | how long they stay up.. how accurate first principles are at predicting lifting weight, etc | 19:15 |
QuantumG | observe how bad wind affects it | 19:15 |
QuantumG | 2. attach a biprop radio controlled plane fuselage to it.. get a feel for how much power is needed to stabilize it. | 19:17 |
QuantumG | get some idea of the battery requirements. | 19:17 |
QuantumG | 3. work out a mass budget and redo the experiments with that amount of ballast. | 19:18 |
QuantumG | and that should give me enough information to work out the kinda of sensors, actuators and computational requirements to automate a stable platform in medium winds. | 19:19 |
kanzure | heh I'd be tempted to run a little regression analysis kernel hooked up to some altimeter or gps system | 19:21 |
kanzure | so that it would try to figure out a governing equation for what the hell to do to maximize height or to stabilize height at least (or whatever goal you want) | 19:21 |
QuantumG | yeah.. is gps sufficient? | 19:21 |
kanzure | probably not | 19:21 |
kanzure | don't altimeters exist? | 19:21 |
kanzure | altitude meters? | 19:21 |
QuantumG | well, ultimately I want a rock steady platform | 19:21 |
QuantumG | for camera mounting | 19:21 |
QuantumG | cause that's fun :) | 19:22 |
kanzure | how do you expect to be rock study with unpredictable winds? | 19:22 |
kanzure | NWS doesn't get down to sub-meter resolution for wind contours :p | 19:22 |
QuantumG | well, as best as is acheivable | 19:22 |
genehacker2 | a solar balloon is what you get when you use garbage bags | 19:31 |
genehacker2 | have to deal with the pesky sun after all | 19:32 |
genehacker2 | I don't have the exact numbers, but helium expands a lot when you heat it.(compared to say nitrogen) | 19:33 |
genehacker2 | you might use some sort of mechanical active stabilization system | 19:34 |
genehacker2 | or some quad thruster mechanism to stabilize your camera | 19:34 |
genehacker2 | quite interested in this project | 19:35 |
QuantumG | I was going to use white garbage bags :) | 19:36 |
kanzure | why not black? | 19:37 |
QuantumG | and yeah, I have no idea how to control buoyancy | 19:37 |
QuantumG | no reason | 19:37 |
kanzure | black will cause more heat | 19:37 |
genehacker2 | garbage bags suck | 19:37 |
genehacker2 | they lose helium faster than say mylar or anything metal coated | 19:38 |
QuantumG | they're also cheap and available | 19:38 |
genehacker2 | got a walmart nearby? | 19:38 |
QuantumG | no, but go on | 19:38 |
genehacker2 | buy space blankets | 19:39 |
genehacker2 | about a buck for ~2 meter squared piece of metal coated mylar | 19:39 |
genehacker2 | anyway how big is your blimp going to be? | 19:39 |
QuantumG | aiming to lift about 1kg of payload | 19:40 |
genehacker2 | ok so let's see here | 19:41 |
QuantumG | would love to do less.. for example, my radio controlled biprop is only 100g .. but sbcs are annoyingly expensive | 19:42 |
genehacker2 | SBCs? | 19:42 |
QuantumG | single board computers | 19:42 |
QuantumG | using a netbook is massively more affordable | 19:42 |
genehacker2 | how many channels is your biprop? | 19:42 |
genehacker2 | a NETBOOK? | 19:42 |
genehacker2 | in the air? | 19:43 |
QuantumG | tethered :) | 19:43 |
genehacker2 | so the size of your balloon is big | 19:43 |
genehacker2 | then you got to make it really aerodynamic | 19:43 |
genehacker2 | you might want to make a zeppelin | 19:44 |
genehacker2 | otherwise you're going to need to pressurize it | 19:44 |
QuantumG | you're quickly exceeding my capabilities | 19:44 |
genehacker2 | wind is going to be a problem | 19:44 |
genehacker2 | unless you live in a windless area | 19:44 |
genehacker2 | how do you intend to turn garbage bags into a blimp? | 19:46 |
genehacker2 | welding, taping, or gluing are your options | 19:46 |
QuantumG | dude, I intend to fill the bags with helium and tie them off | 19:46 |
QuantumG | this is why I said blimp was terribly generous :) | 19:47 |
genehacker2 | oh | 19:47 |
genehacker2 | a small party helium tank usually only fills about 1 garbage bag | 19:47 |
genehacker2 | so a tethered balloon? | 19:48 |
genehacker2 | why put a biprop on it? | 19:48 |
QuantumG | a CL class tank will fill 50 party balloons, or 7 of the garbage bags I'm looking at.. | 19:48 |
genehacker2 | hmmm... | 19:48 |
QuantumG | because that's the (broken) radio controlled plane I have :) | 19:49 |
genehacker2 | and what's the purpose of putting a plane on there? | 19:50 |
genehacker2 | if you want to maneuver it around... | 19:50 |
QuantumG | to see if it can drag around the balloons | 19:50 |
genehacker2 | I'm betting not | 19:52 |
genehacker2 | if there is even a slight breeze | 19:52 |
genehacker2 | it's heading straight to the ground | 19:52 |
QuantumG | that's ok, failing is learning something to.. but not trying worse | 19:52 |
QuantumG | s/to/too/ | 19:52 |
genehacker2 | I'd also advise rigging up a self destruct cord or tying them nice and tight so they don't end up getting away and shooting into the upper atmosphere | 19:53 |
genehacker2 | like one of solar balloon's did | 19:54 |
QuantumG | yeah, I'll be tying the plane to the ground a bit tighter than I tie the balloons to the plane.. but I'm not sure I really care if I lose either :) | 19:54 |
genehacker2 | heh | 19:55 |
genehacker2 | might want to put a parachute on that netbook | 19:55 |
QuantumG | yeah.. if I ever get up to that stage. | 19:55 |
genehacker2 | it's not that hard really | 19:56 |
genehacker2 | http://waterocket.explorer.free.fr/parachute.htm | 19:56 |
genehacker2 | what's this for anyway? | 19:57 |
QuantumG | amusement | 19:57 |
genehacker2 | photography? | 19:57 |
QuantumG | yeah, it'd be nice to be able to film something | 19:57 |
genehacker2 | so there are formula's out there for figuring out the atmospheric drag on stuff based on the cross sectional are | 19:58 |
genehacker2 | a | 19:58 |
QuantumG | yeah, I've done it before | 19:58 |
QuantumG | the equations that is | 19:58 |
QuantumG | for rocket stuff | 19:58 |
genehacker2 | you can also calculate the thrust your biprop produces by using formulas (propellor efficiency doesn't exceed certain bounds) and the rating on your motors | 19:59 |
genehacker2 | and actual test data if you want | 19:59 |
-!- xp_prg [n=xp_prg3@c-67-188-6-132.hsd1.ca.comcast.net] has joined #hplusroadmap | 20:00 | |
genehacker2 | also making gores to make a blimp shaped balloon isn't that hard | 20:02 |
QuantumG | what do you know about buoyancy control? | 20:03 |
genehacker2 | I built my own system | 20:03 |
genehacker2 | for my solar powered balloon | 20:03 |
genehacker2 | so you can drop weights and let helium out | 20:04 |
QuantumG | as in solar panels or as in solar balloon? | 20:04 |
genehacker2 | solar thermal balloon | 20:04 |
QuantumG | ahh cool | 20:04 |
genehacker2 | you could use ballonets | 20:05 |
genehacker2 | if your balloon can hold pressure that is | 20:05 |
genehacker2 | you can heat and cool the air in your balloon | 20:05 |
genehacker2 | of course when you want to change bouyancy this involves change the volume of your balloon | 20:06 |
QuantumG | I never understood ballonets.. do ballonets need to be inside the balloon? | 20:06 |
genehacker2 | yes | 20:07 |
QuantumG | right, that makes more sense | 20:07 |
genehacker2 | ballonets decrease the amount of air it displaces | 20:07 |
QuantumG | the changing volume bit | 20:07 |
genehacker2 | is quite pesky | 20:07 |
QuantumG | pumping air is, umm, currently beyond me :) | 20:08 |
genehacker2 | because you can't make your whole blimp just a helium balloon | 20:08 |
CIA-32 | skdb: kanzure * r 8e61ed1 /core/units.py: make skdb load faster by not excessively generating combined.dat in core/units.py | 20:08 |
genehacker2 | then use nichrome heaters and water | 20:08 |
genehacker2 | nichrome burns a hole in a balloon letting the helium out | 20:09 |
genehacker2 | a water pump pumps water out when you want to go up | 20:09 |
CIA-32 | skdb: kanzure * r 0890feb /readme: updated the readme | 20:12 |
QuantumG | so yeah, just coming up with some computer controlled buoyancy control would be an interesting problem. | 20:13 |
genehacker2 | http://www.cockeyed.com/inside/acre/acre.html | 20:15 |
genehacker2 | http://home.earthlink.net/~archvillain/images/lj/skycombat-article3small.jpg | 20:15 |
kanzure | hmm.. http://github.com/kanzure/skdb/graphs/punch_card | 20:16 |
QuantumG | heh | 20:18 |
genehacker2 | analog punch card? | 20:22 |
kanzure | showing when we've written code for skdb (well, committed it) | 20:23 |
kanzure | assembly_volume_estimate([lego1, lego2]) works, but assembly_volume_actual gives RuntimeError 'StdFail_NotDone' due to BRepBuilderAPI not liking the BRepAlgoAPI_Fuse operation or something | 20:31 |
kanzure | I guess I can do something other than fuse to figure out the volume, like taking the sum of the volume (assembly_volume_estimate) and subtracting the volume of the boolean common | 20:31 |
genehacker2 | can you calculate area too? | 20:41 |
genehacker2 | there's a nice litle formular that gives you mold solidification time when you plug in area and other factors | 20:42 |
kanzure | yes | 20:42 |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has quit [Read error: 104 (Connection reset by peer)] | 21:12 | |
-!- wrldpc2 [n=benny@ool-ad03fe34.dyn.optonline.net] has joined #hplusroadmap | 21:12 | |
-!- dira [n=chatzill@86.99.40.183] has quit ["ChatZilla 0.9.85 [Firefox 3.5.2/20090729225027]"] | 21:40 | |
QuantumG | rant: | 21:53 |
QuantumG | People who think human level AI is only 10 years away have actually never tried writing a human level AI :) | 21:53 |
QuantumG | If we knew exactly how to do it now, we'd be working on the engineering problems for 10 years. | 21:53 |
QuantumG | However, I will say that in 10 years time it will be easier to start a project like human level AI. You'll still fail, but it'll be cheaper to fail. So maybe in 10 years we'll start learning how to do it. | 21:53 |
kanzure | what the fuck is ai? | 21:59 |
QuantumG | don't get into a semantic argument :) | 22:00 |
kanzure | sorry, I just think you're bullshit | 22:00 |
kanzure | however I think this of everyone who talks about ai | 22:01 |
kanzure | because they all have the same answer | 22:01 |
QuantumG | well, when I say a human level AI I have a very practical answer... a software program that is capable of doing a wide range of tasks given to it in natural language to an acceptable degree. And the reason why I say "human level" is cause currently these tasks can only be done by humans. | 22:02 |
QuantumG | I'm not interested in Turing tests | 22:03 |
QuantumG | or any of the other nonsense | 22:03 |
kanzure | meh | 22:04 |
QuantumG | I have a practical expectation of what a human (say, employee) should give me in response to my instructions, and that's what I want from human level ai. If the human can't deliver, I fire em.. if the program can't deliver, I ask for a refund :) | 22:05 |
kanzure | sorry I must have lost the point | 22:05 |
kanzure | are you trying to build a brain or not? | 22:05 |
katsmeow-afk | are these expectations including physical acts, or merely understanding the directions? | 22:06 |
QuantumG | kanzure: not right now | 22:06 |
QuantumG | katsmeow-afk: well, my employees are software developers :) | 22:07 |
katsmeow-afk | ah | 22:07 |
QuantumG | I rarely tell them to do physical things.. | 22:07 |
kanzure | you have employees? | 22:07 |
QuantumG | ya | 22:07 |
kanzure | hi, my name is kanzure | 22:07 |
kanzure | who are you? | 22:07 |
QuantumG | your name is brian :) | 22:08 |
kanzure | bryan | 22:08 |
kanzure | but really, who are you? | 22:08 |
kanzure | and why do you have employees? | 22:08 |
QuantumG | I'm Trent | 22:08 |
kanzure | yes, mr. waddington :p | 22:08 |
kanzure | but that doesn't answer my question | 22:08 |
QuantumG | well, I'm not sure why the two are related.. I don't really define myself by my profession.. but to answer your question, I own a part of a software company. | 22:09 |
kanzure | just have never heard of it | 22:09 |
kanzure | have known you for a few years by now | 22:09 |
QuantumG | yeah | 22:09 |
QuantumG | I don't really talk about who I work for/with .. after a few bad experiences | 22:09 |
QuantumG | until I'm no longer working for/with them. | 22:10 |
kanzure | sounds shady | 22:10 |
QuantumG | that's the internet for you | 22:10 |
QuantumG | "you insulted me on Slashdot, I'm going to hack your company's website." | 22:11 |
kanzure | maybe ten years ago | 22:11 |
kanzure | now it's "I'm going to cloud your ajax xss attack vectors, n00b" | 22:11 |
QuantumG | hehe | 22:11 |
QuantumG | I actually had someone call one of my employers | 22:11 |
QuantumG | it was embarrassing. | 22:12 |
kanzure | for the thousands of emails that I send out on the internet with my phone number in them, | 22:12 |
kanzure | nobody calls me | 22:12 |
kanzure | this is probably a good thing | 22:12 |
kanzure | but it's kind of surprising | 22:12 |
kanzure | people seem to be afraid of the telephone | 22:12 |
QuantumG | oh, and even going to the trouble of not talking about my employment I still get people posting my address, telephone numbers, pictures of my house from streetview, etc.. fucktards. | 22:13 |
QuantumG | I've had people harass my mate in Canada who provides the account I'm ircing from | 22:14 |
QuantumG | and used to provide my website before I moved it to dedicated hosting | 22:14 |
QuantumG | maybe this all says more about me than them | 22:14 |
kanzure | you might just be a collosal jerk :p | 22:14 |
QuantumG | no doubt | 22:15 |
ybit2 | http://www.electraflyer.com/electraflyerc.php *drool* | 22:22 |
ybit2 | http://www.youtube.com/watch?v=fWoLsJz8J5U | 22:22 |
ybit2 | i wonder what type of glider the electraflyer-x is built from | 22:23 |
ybit2 | http://www.electraflyer.com/ | 22:23 |
katsmeow-afk | ybit, speak up before he busts the crts up | 22:23 |
QuantumG | Empty weight w/battery packs | 22:24 |
QuantumG | Maximum Take-off Weight (MTOW) | 22:24 |
QuantumG | 380 lbs (172 kg) | 22:24 |
QuantumG | 625 lbs (283 kg) | 22:24 |
QuantumG | wow | 22:24 |
kanzure | wish I could remember what I was doing | 22:24 |
ybit2 | :) | 22:25 |
QuantumG | before or after ranting with me about ai :) | 22:25 |
kanzure | during | 22:25 |
* ybit2 will take either: http://en.wikipedia.org/wiki/Schempp-Hirth_Duo_Discus or http://en.wikipedia.org/wiki/DG_Flugzeugbau_DG-1000 | 22:25 | |
* katsmeow-afk tells him that ybit doesn't want the electron guns | 22:25 | |
ybit2 | awww | 22:26 |
ybit2 | i'll take them, if anything, they make for fun sculptures | 22:27 |
QuantumG | http://www.reuters.com/article/entertainmentNews/idUSTRE5850F320090906 | 22:28 |
QuantumG | sure hope its better than Slacker Uprising | 22:28 |
katsmeow-afk | a glider makes fun scuptures? | 22:31 |
ybit2 | an electron gun | 22:32 |
katsmeow-afk | oh, i don't think he wold save the crt necks after busting them, tomake sculptures | 22:33 |
ybit2 | i made mine look like a robot and it was a great crt monitor decoration until i decided to look inside all of its components | 22:33 |
ybit2 | anyone have glider knowledge? | 22:34 |
* ybit2 searches for a flying enthusiasts channel | 22:34 | |
ybit2 | [03:34] [473] #aviation You need to be invited to that channel | 22:35 |
ybit2 | odd | 22:35 |
kanzure | there's a uav channel somewhere | 22:35 |
katsmeow-afk | FCC is rather strict | 22:35 |
katsmeow-afk | err FAA | 22:35 |
kanzure | there's an open source uav project channel on freenode | 22:35 |
kanzure | there's also #highaltitude or something | 22:35 |
ybit2 | i just want to know where the propeller is, or is it tied to an airplane.. | 22:35 |
ybit2 | the two gliders that were linked | 22:36 |
katsmeow-afk | ?? | 22:36 |
ybit2 | what are you ?? about? | 22:36 |
katsmeow-afk | linked gliders? | 22:36 |
ybit2 | 22:25 * ybit2 will take either: http://en.wikipedia.org/wiki/Schempp-Hirth_Duo_Discus or http://en.wikipedia.org/wiki/DG_Flugzeugbau_DG-1000 | 22:37 |
katsmeow-afk | those are gliders, they have no props | 22:37 |
ybit2 | figured i might as well get a two seater when i get into this business | 22:37 |
ybit2 | http://en.wikipedia.org/wiki/File:DG_Flugzeugbau_DG-808B.jpg | 22:37 |
ybit2 | motor gliders like these are what i'm looking for | 22:38 |
ybit2 | http://en.wikipedia.org/wiki/Motor_glider | 22:38 |
QuantumG | isn't a motor glider a plane? :) | 22:38 |
katsmeow-afk | oh, that folds back into the fueslage | 22:39 |
QuantumG | ahh, I see | 22:39 |
QuantumG | A motor glider is a fixed-wing aircraft that can be flown with or without engine power. | 22:39 |
katsmeow-afk | you can see the hatch open behind the wings, on top | 22:39 |
ybit2 | something like the HK36 Super Dimona is probably what i'm looking for | 22:41 |
ybit2 | i think i linked to a youtube vid of an electric glider this past week or so | 22:41 |
ybit2 | http://www.youtube.com/watch?v=WcWSI03NKo0 | 22:42 |
ybit2 | that's it | 22:42 |
ybit2 | problem with this is that you have to pay fees to the airport for the aircraft to park there | 22:46 |
katsmeow-afk | foldup | 22:58 |
katsmeow-afk | or, pull the wings off shorter spars | 22:58 |
QuantumG | a plane you can put on the back of your car, like a boat, is a *long* time coming. | 22:58 |
QuantumG | quite possibly that drivable plane concept is going to be available first. | 22:59 |
katsmeow-afk | of course, but there have beena few that trailered | 22:59 |
ybit2 | for only $150k | 22:59 |
ybit2 | or more, just guessing | 22:59 |
QuantumG | people pay that for a boat. | 22:59 |
katsmeow-afk | pull off the rear draggy wheel, insert trailer hitch, fold or detach wings, drive off | 23:00 |
QuantumG | I guess the difference is that you can't go get drunk on your plane. | 23:00 |
ybit2 | katsmeow-afk: that's an idea | 23:00 |
QuantumG | catch birds. | 23:00 |
ybit2 | http://www.solar-flight.com/projects.html is nice too btw | 23:00 |
ybit2 | http://pastebin.com/m289978ed | 23:11 |
* kanzure compiles sgeom | 23:14 | |
ybit2 | http://groups.google.com/group/rec.aviation.homebuilt/topics?pli=1 | 23:15 |
ybit2 | interesting fact: Wind machines were used in Persia as early as 200 B.C.[2] | 23:18 |
katsmeow-afk | unless you cold a sailboat as a wind macine | 23:19 |
katsmeow-afk | count | 23:19 |
katsmeow-afk | i have this spot on my index phalange where i grabbed some red hot steel with a ole in the glove | 23:20 |
katsmeow-afk | so excuse my typoing | 23:20 |
ybit2 | it was a windmill | 23:20 |
ybit2 | The first windmills were developed to automate the tasks of grain-grinding and water-pumping and the earliest-known design is the vertical axis system developed in Persia about 500-900 A.D. | 23:20 |
ybit2 | where did this 200b.c. come from.. | 23:21 |
QuantumG | some other wind machine perhaps? | 23:28 |
kanzure | is "watching code compile" a legitimate hobby? | 23:50 |
QuantumG | I dunno about hobby, but its certainly a living | 23:51 |
kanzure | you mean to say that people should be paying me for this? | 23:51 |
QuantumG | oh, and [insert dis about Gentoo here] | 23:52 |
kanzure | it's not gentoo | 23:52 |
genehacker2 | yes | 23:53 |
genehacker2 | watch that code compile! | 23:53 |
kanzure | oh no I missed a parse error on line 38124 | 23:56 |
Generated by irclog2html.py 2.15.0.dev0 by Marius Gedminas - find it at mg.pov.lt!