--- Log opened Thu May 29 00:00:48 2008 |
01:45 | | You're now known as TheWatcher[t-2] |
01:47 | | You're now known as TheWatcher[zZzZ] |
02:29 | <@Kazriko> | MyCatVerbs, whazzit doin? |
02:32 | <@Kazriko> | pacman? |
02:34 | <@Kazriko> | dpkg is one of the original packaging tools and i'd seen it described as too verbose before. |
02:35 | <@Kazriko> | i've nearly never had a problem with it. |
03:04 | | gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has quit [Quit: Z?] |
03:34 | <@McMartin> | It's less dpkg and more The Crap They Load It Down With. |
03:37 | <@Kazriko> | i actually prefer apt to any other tool i've tried too. |
03:44 | <@McMartin> | It's hard to tell. |
03:45 | <@McMartin> | The places where apt nominally beats yum never come up for me, and the chaotic mess of false dependencies, missing dependencies, and unmarked upgrades that form the Debian repository kind of outweighs everything else. |
03:47 | <@Kazriko> | apt let me keep the same install for years once though. just kept upgrading |
03:47 | <@Kazriko> | sorry for slow typing |
03:48 | <@Kazriko> | one handed typist this week. |
03:48 | <@Kazriko> | learning left dvorak |
03:51 | <@McMartin> | See, that's the problem. |
03:52 | <@McMartin> | My first and last experience with debian involved attempting to install Python only to find that there were independent packages for each minor version. |
03:52 | <@McMartin> | This is, purportedly, a feature. |
03:52 | <@McMartin> | As opposed to "avoiding this is why I'm using a packaging system in the first place" |
04:12 | <@Reiver> | Kaz: Why are you learning left handed Dvorak? |
06:28 | | AnnoDomini [AnnoDomini@Nightstar-6902.neoplus.adsl.tpnet.pl] has joined #Code |
06:28 | | mode/#code [+o AnnoDomini] by ChanServ |
06:39 | <@MyCatVerbs> | Kazriko: pacman actually... cooperates. |
06:40 | < Shoukanjuu> | wakka wakka wakka |
06:40 | <@MyCatVerbs> | Kazriko: dpkg is amazingly opaque when things go wrong. No verbosity flags, no way to get it to dump logs of what it's attempting to do, etc. Total pain in the neck when it goes wrong. |
06:40 | <@MyCatVerbs> | Kazriko: whereas, well, the Arch people broke things embarrassingly often, but they never did seem to *stay* broken. |
06:42 | <@MyCatVerbs> | Kazriko: it probably helps that Arch gets rebuilt from sources very, very regularly. Anything wrong with the build system gets picked up on quickly. |
06:48 | < Doctor_Nick> | is anyone at the google io conference |
06:48 | <@AnnoDomini> | Hm. Is it very hard to work with XML documents (reading, modifying, adding records) in Java? |
07:17 | < jerith> | Depends what you want to do. |
07:17 | < jerith> | XML is a vast overcomlicated mess, for the most part. |
07:17 | < jerith> | +p |
07:22 | < jerith> | And on that note, I'm off to work. |
08:42 | | C_tiger [~c_wyz@Nightstar-16806.nycmny.east.verizon.net] has quit [Ping Timeout] |
09:07 | | You're now known as TheWatcher |
09:10 | | Thaqui [~Thaqui@Nightstar-711.jetstream.xtra.co.nz] has joined #code |
09:10 | | mode/#code [+o Thaqui] by ChanServ |
09:25 | < AFKSkull> | Hey |
09:26 | < AFKSkull> | How hard is it to reconstruct the 3d points of a four point plane(always planar) when the camera settings are known? |
09:27 | <@Vornicus> | A four point plane being a polygon with four coplanar points? |
09:28 | <@Vornicus> | You end up with four degrees of freedom. |
09:28 | < AFKSkull> | vorn- correct |
09:28 | <@Vornicus> | So there's an infinite number of polygons that can cover that. |
09:29 | < AFKSkull> | presumably there's a reasonable method for choosing between them then |
09:29 | < AFKSkull> | since I know it can be done |
09:30 | <@Vornicus> | Depends. Do you have shading and known light sources? |
09:30 | < AFKSkull> | well, it's rectangular |
09:30 | < AFKSkull> | my mistake not to mention |
09:31 | < AFKSkull> | it's always a planar rectangle |
09:31 | < AFKSkull> | and no, just four points |
09:31 | <@Vornicus> | Okay, that makes your life a /bit/ easier, but that still gives at least one degree of freedom. |
09:31 | < AFKSkull> | and the order they are connected |
09:32 | < AFKSkull> | how about knowing the dimensions of the plane also? |
09:33 | <@Vornicus> | No, that's the one degree of freedom |
09:33 | <@Vornicus> | a rectangle may be tiny and up close, or huge and far away, and you won't be able to tell. |
09:33 | < AFKSkull> | ...no, i mean that I know the dimensions |
09:33 | <@Vornicus> | ah. that would help |
09:33 | <@Vornicus> | ...hang on, are we getting z values? |
09:34 | < AFKSkull> | no |
09:34 | < AFKSkull> | just x,y |
09:34 | <@Vornicus> | okay. |
09:34 | < AFKSkull> | basically, I have a rectangle I want to match to footage |
09:34 | < AFKSkull> | I have motion tracking dat for the four corners. |
09:34 | < AFKSkull> | in the footage. |
09:35 | < AFKSkull> | I wish to reconstruct a 3d scene using that 'corner pin' notion track |
09:35 | <@Vornicus> | Okay, I /think/ you can do that. |
09:35 | < AFKSkull> | *motion |
09:35 | <@Vornicus> | I don't know how, but I htink you can. |
09:35 | < AFKSkull> | I know you can |
09:35 | < AFKSkull> | it anoys me intensely because, in fact, after effects has a built in tool that does it |
09:36 | < AFKSkull> | but does not expose the data needed to utilize it |
09:36 | < AFKSkull> | one of the built in 3d effects can crete a workable 3d camera using nothing at all except corner pins. |
09:37 | < AFKSkull> | but you can only use that camera for the rendering of that effect |
09:46 | | Shoukanjuu [~Shoukanju@Nightstar-20375.dhcp.embarqhsd.net] has quit [Quit: Life is a game.. The object is to survive, to imprint in hostiry your legacy. Go forth and show them what you are, and why you, your memory, and your soul will not be so easily vanquished!] |
10:41 | | Vornicus is now known as Vornicus-Latens |
10:42 | <@AnnoDomini> | jerith: What I want to do is take some data from the user, and then store it in the XML file, which is supposed to be a database. |
11:40 | | Thaqui [~Thaqui@Nightstar-711.jetstream.xtra.co.nz] has left #code [Leaving] |
12:55 | | gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has joined #Code |
12:55 | | mode/#code [+o gnolam] by ChanServ |
13:19 | | AbuDhabi [AnnoDomini@Nightstar-29204.neoplus.adsl.tpnet.pl] has joined #Code |
13:20 | | AnnoDomini [AnnoDomini@Nightstar-6902.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
14:13 | | gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has quit [Ping Timeout] |
14:21 | < AbuDhabi> | Man, this is weird. |
14:21 | < AbuDhabi> | Session variables apparently work. |
14:21 | < AbuDhabi> | But they take a hideous amount of time to work. |
14:21 | < AbuDhabi> | s/variables/arrays |
14:22 | < AbuDhabi> | For an array of 4 elements, I had to wait a full second. |
14:26 | < AbuDhabi> | Hm... |
14:26 | < AbuDhabi> | It seems the dynamic part of arrays fucks them up. |
14:27 | < AbuDhabi> | Static arrays work as fast as expected. |
14:27 | | gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has joined #Code |
14:27 | | mode/#code [+o gnolam] by ChanServ |
14:28 | | Doctor_Nick [~nick@Nightstar-25013.hsd1.fl.comcast.net] has quit [Operation timed out] |
14:32 | | Doctor_Nick [~nick@Nightstar-25013.hsd1.fl.comcast.net] has joined #code |
14:33 | | Doctor_Nick is now known as NSGuest-6737 |
14:35 | < AbuDhabi> | Okay, now I'm getting a different error. :D |
15:10 | < AbuDhabi> | VICTORY! VICTORY FOR CARL. |
15:10 | | * AbuDhabi succeeds in making a basket page work. |
15:12 | <@ToxicFrog> | Baaaaaaasket |
15:12 | <@ToxicFrog> | What sort of site is? |
16:40 | | C_tiger [~c_wyz@Nightstar-16806.nycmny.east.verizon.net] has joined #code |
16:40 | | mode/#code [+o C_tiger] by ChanServ |
17:05 | | You're now known as TheWatcher[afk] |
17:27 | < jerith> | AbuDhabi: Under no circumstances should you ever be using an XML file as a database. |
17:32 | < AbuDhabi> | ToxicFrog: Internet store. |
17:33 | < AbuDhabi> | jerith: Fortunately, I'm not going to have to. |
17:33 | < AbuDhabi> | I was just informed that I get a free pass, due showing up on the last lecture. |
17:34 | < jerith> | That offends my sense of rightness. |
17:34 | < AbuDhabi> | Hm? |
17:36 | < jerith> | You get out of having to demonstrate that you can solve a problem merely by being present at a lecture you should be present at anyway? |
17:36 | < AbuDhabi> | Yup. Me and ten others. |
17:46 | <@ToxicFrog> | vtd-xml.sf.net -- am I the only one looking at this and going AUGH NO> |
17:46 | <@ToxicFrog> | ? |
17:58 | | * jerith looks. |
18:01 | < jerith> | ToxicFrog: What frightens me more is that I know at least three places in our current codebase where this would be useful. |
18:23 | | Shoukanjuu [~Shoukanju@Nightstar-20375.dhcp.embarqhsd.net] has joined #code |
18:29 | <@MyCatVerbs> | jerith: what does that portend? |
18:30 | < jerith> | MyCatVerbs: That we have way too much of a dependence on Java. |
18:33 | <@ToxicFrog> | I was thinking more the whole "yet another XML parsing library, except this one uses bit-packed uint64s as structs in the name of nonportable optimization" |
18:33 | <@ToxicFrog> | "also, our dicks are just huge" |
18:33 | < jerith> | s/java/xml/i |
18:38 | <@MyCatVerbs> | jerith: the two kinda go together, no? |
18:39 | < jerith> | Sadly. |
18:40 | | You're now known as TheWatcher |
19:42 | | GeekSoldier [~Rob@Nightstar-8128.dip.t-dialin.net] has quit [Ping Timeout] |
20:00 | <@McMartin> | /belated Ehn. It's perfectly feasible to use Java without touching XML. |
20:01 | <@McMartin> | That there exist basically no decent DOM libraries outside of Java is beside the point. |
20:01 | <@McMartin> | Though Python's is almost good. |
20:02 | <@Vornicus-Latens> | yey beautifulsoup |
20:05 | | * AbuDhabi did almost everything out of the user section, yay! A day or two more, and the project will be finished. |
20:08 | | Vornicus-Latens is now known as Vornicus |
20:09 | <@ToxicFrog> | Good news: someone's contributed a floating point module for vstruct. |
20:09 | <@ToxicFrog> | Bad news: it doesn't support infinities or NaNs. |
20:09 | <@ToxicFrog> | Good news: this gives me an excuse to create my first topic branch. |
20:15 | <@ToxicFrog> | Heh. |
20:16 | <@ToxicFrog> | I added NaN support and now the self-test breaks, because NaN ~= NaN: |
20:16 | <@ToxicFrog> | 00 00 C0 7F -> nan FAIL (nan) |
20:20 | <@MyCatVerbs> | Anyone who expects IEEE754 to mimic the reals too closely is in for a really nasty surprise. |
20:20 | <@MyCatVerbs> | Many of them, in fact. |
20:20 | <@ToxicFrog> | Well, in this case, it's because the naiive test code checks to see if (unpacked_val == test.val) |
20:20 | <@ToxicFrog> | Which is not the case when I'm testing NaN. |
20:41 | <@ToxicFrog> | ...oh, shitbiskets |
20:42 | <@ToxicFrog> | I can't implement f8 as decode_float(u(8, buf)) |
20:42 | <@ToxicFrog> | Because I can't exactly represent a uint64_t in a double. |
20:51 | <@McMartin> | whut |
20:58 | <@ToxicFrog> | Working on vstruct. |
20:58 | <@ToxicFrog> | Abruptly realized I have no numeric type other than double. |
20:59 | <@ToxicFrog> | My implementation for a lot of formats is "convert to unsigned and then write" or "read unsigned and then convert" |
21:00 | <@ToxicFrog> | The problem, which I just became viciously aware of when testing the newly added floating point support, is that "convert to unsigned" loses data if the resulting unsigned is more than 53 bits wide. |
21:00 | | Chalcedon [~Chalcy@Nightstar-488.ue.woosh.co.nz] has joined #code |
21:00 | | mode/#code [+o Chalcedon] by ChanServ |
21:00 | <@McMartin> | Oh, right |
21:00 | <@ToxicFrog> | Which, in the case of double, is going to be the case very often, as the double itself is 64 bits wide. |
21:01 | <@McMartin> | Casts to and from uint64_t should preserve which NaN/inf they are |
21:01 | <@McMartin> | (PAK CHOOIE INF) |
21:01 | <@ToxicFrog> | Well, inf only has two forms (+inf and -inf) and those are preserved. |
21:01 | <@ToxicFrog> | NaN is not preserved, because there's no way when examining a NaN to figure out what it was originally. |
21:02 | <@ToxicFrog> | The problem is losing data from actual numbers. |
21:03 | <@ToxicFrog> | You can fill the significand without data loss only if the sign and exponent are both 0. |
21:03 | <@ToxicFrog> | If the sign is 1, you can basically only use the upper 40 bits of the significand. |
21:03 | <@McMartin> | If so, something wacky is happening in your conversion |
21:04 | <@McMartin> | Well, or you aren't *doing* a proper conversion and need to hop out to C for bits_of_float-style functions. |
21:04 | <@ToxicFrog> | Hop out to C or represent it as a bit buffer rather than as a number. |
21:05 | <@ToxicFrog> | The issue here is that it's taking a Number which represents the value to store, and constructing another Number which represents the value to store, encoded as a float, stored as an unsigned |
21:06 | <@McMartin> | Aha. |
21:06 | <@ToxicFrog> | So if the input value is 1.0, and the width is float, the output is 0x3f800000 |
21:06 | <@ToxicFrog> | Which is then written out using the unsigned-int IO call |
21:06 | <@ToxicFrog> | If the width is double, though, the output is 64 bits wide, which can't be exactly represented in a Number unless you're lucky. |
21:07 | <@ToxicFrog> | (and if the width is quad you'd just fucked) |
21:07 | <@ToxicFrog> | So, I need to either (a) dip into C, (b) use an arbitrary-precision integer representation, or (c) use a bit buffer |
21:53 | < Shoukanjuu> | \o/ |
21:53 | <@ToxicFrog> | No. |
21:53 | <@ToxicFrog> | ;.; |
21:54 | <@ToxicFrog> | Or possibly /o\ |
21:54 | <@ToxicFrog> | Or even *** |
21:54 | < Shoukanjuu> | I'm sorry you didn't just sell half a page to a customer who is actually intelligent. |
21:56 | <@ToxicFrog> | ? |
21:57 | < Shoukanjuu> | Advertising. |
21:59 | <@ToxicFrog> | ?? |
21:59 | <@ToxicFrog> | Context? |
21:59 | < Shoukanjuu> | I'm selling ads. |
21:59 | < Shoukanjuu> | Directly mailing them to everyone in a certain area. |
21:59 | < Shoukanjuu> | It's cheap, it's effective most of the time |
21:59 | < Shoukanjuu> | and it gets people known |
22:00 | < Shoukanjuu> | Also: Printing+mailing is like $9000 |
23:32 | | AbuDhabi [AnnoDomini@Nightstar-29204.neoplus.adsl.tpnet.pl] has quit [Quit: LotR books were written to justify a coup by the exiled royal house of Gondor, and a war against the so-called lesser races like orcs and Easterners. In reality, Mordor was trying to help Gondor defend itself from Rohan and Aragorn. Aragorn hired black hearted hobbits to sneak a nuclear bomb into Mordor, and the resulting explosion killed millions including the noble Sauron.] |
--- Log closed Fri May 30 00:00:54 2008 |