code logs -> 2009 -> Wed, 22 Jul 2009< code.20090721.log - code.20090723.log >
--- Log opened Wed Jul 22 00:00:36 2009
00:12 You're now known as TheWatcher[T-2]
00:14 You're now known as TheWatcher[zZzZ]
00:34 TarinakyKai [~Tarinaky@Nightstar-16638.plus.com] has joined #code
00:36 Tarinaky_ [~Tarinaky@Nightstar-16638.plus.com] has quit [Ping Timeout]
00:40 Thalass [~thalass@Nightstar-8070.sud-cable-cmts2-69-60-245-73.vianet.ca] has quit [Client exited]
00:56 AnnoDomini [~farkoff@Nightstar-28935.neoplus.adsl.tpnet.pl] has quit [Quit: You can't eat someone's pet hamburger!]
00:57 Attilla [~The.Attil@92.1.54.ns-25924] has quit [Ping Timeout]
01:10 Attilla [~The.Attil@92.22.48.ns-26864] has joined #code
01:10 mode/#code [+o Attilla] by ChanServ
01:59 Consul_ [~Consul__@Nightstar-2425.dsl.sfldmi.ameritech.net] has joined #code
01:59 * Derakon adds Jetblade to the list of projects on pygame.org. http://www.pygame.org/project/1225/
02:01 Consul [~Consul__@Nightstar-2425.dsl.sfldmi.ameritech.net] has quit [Ping Timeout]
02:02 gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has quit [Quit: Z?]
02:25 Consul_ is now known as Consul
02:58 Vornicus is now known as Phas
03:05 brianb7u [~fe1ecc@195.229.150.ns-12262] has joined #code
03:06 brianb7u [~fe1ecc@195.229.150.ns-12262] has left #code []
03:08 Thaqui [~Thaqui@121.98.166.ns-22683] has joined #code
03:08 mode/#code [+o Thaqui] by ChanServ
03:15 Attilla [~The.Attil@92.22.48.ns-26864] has quit [Quit: <Insert Humorous and/or serious exit message here>]
03:23
<@McMartin>
http://www.ibiblio.org/apollo/ForDummies.html
03:23
<@McMartin>
Apollo Guidance System code, plus interpreter
03:51
<@Phas>
sweet.
03:52
< Consul>
There's a complete guide to the assembly language for the thing, too.
03:53
<@ToxicFrog>
r0xx0r.
03:54
<@McMartin>
And another reminder of the great virtue of interpreted languages; they had to basically add a terp in order to fit in all their code, becuase the code compression results were huge.
03:55
< Consul>
Yeah, I'm reading about that now.
04:01
< Consul>
It's amazing that they got to the Moon and back with what amounts to 15 bits of floating point precision.
04:02
< Consul>
Kinda puts the whole "what do you REALLY need" question in perspective.
04:02
<@McMartin>
Hey, half my hobbyist programming or more for the past five years has been for 8-bit machines.
04:02
< Consul>
Oh, I spoke too soon. There was a double and triple precision format.
04:03
<@McMartin>
You can also do multiprecision in software pretty easily if you have to
04:03
< Consul>
Yeah, I vaguely remember writing some stuff along those lines in assembler on the C64.
04:05
<@McMartin>
Hell, I probably still have my dividers.
04:05
< Consul>
Oh, cool! The interpreter had a 3D vector format.
04:11
< Consul>
I guess I would call that a data type these days.
04:43
<@ToxicFrog>
bzip2ing a 17GB disk image: rather slow.
04:44
<@SmithKurosaki>
o.0
04:44
<@SmithKurosaki>
How's that going anyways?
04:45
<@ToxicFrog>
Well, the output file is up to 1GB
04:45
<@ToxicFrog>
But bzip2 has no form of feedback, sooooo...
04:50
< Kazriko>
Consul, more than that and you're just saving programmer time. Imagine how long it took them to write and debug the program for that?
04:56 * Phas prepares to... hand-edit a pdf.
05:00
<@Derakon>
You madman!
05:00
<@Phas>
Yes, well.
05:03
<@McMartin>
I've done it
05:04
<@ToxicFrog>
They're more like postscript than you think, IIRC.
05:04
<@Phas>
THey look pretty much exactly like postscript except with very short command names.
05:04
<@McMartin>
They are, in fact, PostScript but abbreviated and without the control flow.
05:05 * ToxicFrog ponders class ss1.ResFile.Chunk
05:13
<@Derakon>
Hmm...someone needs to make a Project Euler that guides people into learning to make programs, as opposed to solve math problems.
05:14
<@Derakon>
Like, problem 1 would be "make a program that prompts the user for two numbers and prints their sum", and problem 10 would involve clicking on shapes or something.
05:14
<@Derakon>
It'd be a good thing to point those "I've been reading a book on programming, but what do I actually do to get started" people at.
05:16
<@Phas>
Project Cactus?
05:16
<@Derakon>
Heh.
05:20
<@ToxicFrog>
Most texts have something of that kind - SICP has loads of programming exercises after each section, for example.
05:22
<@Derakon>
It'd be nice to have something that was language-agnostic, though...though testing such would be hard.
05:35
< Consul>
http://echoesofapollo.com/resources/apollo-guidance-computer/
05:37
<@ToxicFrog>
Derakon: well, personally I did the SICP exercises in three different languages~
05:37
<@ToxicFrog>
Although not all of them were conceptually useful in all of the languages.
05:40 Thaqui [~Thaqui@121.98.166.ns-22683] has quit [Client exited]
06:04 Syloqs-AFH [~Syloq@ServicesAdmin.Nightstar.Net] has quit [Connection reset by peer]
06:20 Phas is now known as Vornicus
06:23 Vornicus [~vorn@ServicesOp.Nightstar.Net] has quit [Quit: Leaving]
06:24 Vornicus [Vornicus@Admin.Nightstar.Net] has joined #code
06:24 mode/#code [+o Vornicus] by ChanServ
07:01
<@ToxicFrog>
Ok, there is a problem with Sonata, and indeed probably with all mpd clients.
07:01
<@ToxicFrog>
mpd doesn't support queueing.
07:16 Derakon is now known as Derakon[AFK]
08:09 AnnoDomini [~farkoff@Nightstar-29105.neoplus.adsl.tpnet.pl] has joined #Code
08:09 mode/#code [+o AnnoDomini] by ChanServ
08:38 EvilCaliforniaLord [~jjlehto3@Nightstar-9591.cs.hut.fi] has quit [Ping Timeout]
08:42 EvilCaliforniaLord [~jjlehto3@Nightstar-9591.cs.hut.fi] has joined #code
08:49 You're now known as TheWatcher
09:40 Consul_ [~Consul__@Nightstar-2425.dsl.sfldmi.ameritech.net] has joined #code
09:41 Consul [~Consul__@Nightstar-2425.dsl.sfldmi.ameritech.net] has quit [Ping Timeout]
09:54 gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code
09:54 mode/#code [+o gnolam] by ChanServ
10:09 gnolam [lenin@Nightstar-1382.A163.priv.bahnhof.se] has quit [Ping Timeout]
10:09 Gruber [lenin@Nightstar-1382.A163.priv.bahnhof.se] has joined #Code
10:11 Gruber is now known as gnolam
10:35 Rhamphoryncus [~rhamph@Nightstar-7168.ed.shawcable.net] has quit [Quit: Rhamphoryncus]
11:01 Vornicus [Vornicus@Admin.Nightstar.Net] has quit [Quit: ]
11:02 Vornicus [~vorn@ServicesOp.Nightstar.Net] has joined #code
11:02 mode/#code [+o Vornicus] by ChanServ
12:06 Attilla [~The.Attil@92.1.240.ns-2748] has joined #code
12:06 mode/#code [+o Attilla] by ChanServ
12:30 crem_ [~moo@Nightstar-28703.adsl.mgts.by] has joined #code
12:30 crem [~moo@Nightstar-28703.adsl.mgts.by] has quit [Connection reset by peer]
14:01 Consul_ [~Consul__@Nightstar-2425.dsl.sfldmi.ameritech.net] has quit [Ping Timeout]
14:08 Consul [~Consul__@Nightstar-2425.dsl.sfldmi.ameritech.net] has joined #code
14:08 mode/#code [+o Consul] by ChanServ
16:07 Syloqs_AFH [Syloq@Admin.Nightstar.Net] has joined #code
16:08 Syloqs_AFH is now known as Syloqs-AFH
16:59 Derakon[AFK] is now known as Derakon
19:19 Doctor_Nick [~nick@Nightstar-8274.hsd1.fl.comcast.net] has quit [Operation timed out]
19:23 Doctor_Nick [~nick@Nightstar-8274.hsd1.fl.comcast.net] has joined #code
19:23 mode/#code [+o Doctor_Nick] by ChanServ
19:35 * Derakon eyes collision detection, starts trying to get his mind back into that particular mode.
19:36
<@Derakon>
I've discovered that after adding a half-dozen or so enemy objects, the game starts grinding while projecting legions of vectors onto other vectors. A simple caching solution would fix that, but I need to figure out how to take positional offsets into account.
20:00 Rhamphoryncus [~rhamph@Nightstar-7168.ed.shawcable.net] has joined #code
20:02
<@Derakon>
Okay, that's much better.
20:06
< gnolam>
I assume you're already using some sort of space partitioning?
20:06
<@Derakon>
Oh, yes. Quadtree and bounding box checks.
20:10
<@Derakon>
The problem basically was that every possible collision between two polygons was being recalculated afresh, which involves projecting every vertex of both polygons onto every surface normal of both polygons. This despite the fact that there's only a tiny number of surface normals (currently, only eight).
20:11
<@Derakon>
Slap a cache on there and we're good to go, though.
20:17 Doctor_Nick [~nick@Nightstar-8274.hsd1.fl.comcast.net] has quit [Ping Timeout]
20:21 Doctor_Nick [~nick@Nightstar-8274.hsd1.fl.comcast.net] has joined #code
20:21 mode/#code [+o Doctor_Nick] by ChanServ
20:24
<@Derakon>
Hrm. This feels like an interview question.
20:24
<@TheWatcher>
?
20:24
<@Derakon>
I want to set up a cache that supports fast access of elements and doesn't go over a maximum size.
20:24
<@Derakon>
(I'm sure there are existing libraries that do this, and I'll look them up in a bit. That's not the point though)
20:25
<@Derakon>
When the cache goes over its size limit, I want to remove the oldest element from it.
20:25
<@Derakon>
I could use a dict that maps keys to a tuple containing the value and the age of the entry, and refresh that age every time it's accessed.
20:25 * TheWatcher has code he could give you in c++ for that, but... yeah
20:25
<@Derakon>
But then to remove the oldest element I have to iterate over the entire cache, which sounds slow.
20:26
<@Derakon>
The question is, what data structure allows fast access of elements and fast removal of old elements?
20:27
<@TheWatcher>
circular array?
20:29
<@Derakon>
I'd not encountered this one before...
20:29 * Derakon eyes the diagram at http://lcm.csa.iisc.ernet.in/dsa/node24.html
20:31 Derakon is now known as Derakon[phone]
20:32
<@TheWatcher>
I use circular arrays for my console, works quite decently
20:33
<@Vornicus>
Well, there's a kind of data structure that rejiggers so that the most commonly used stuff is near the top.
20:34
<@Vornicus>
I don't remember what it's called.
20:35
<@TheWatcher>
rejiggers being the technical term?
20:35 * TheWatcher ponders
20:37
< gnolam>
Vornicus: Splay tree?
20:41
<@Vornicus>
gnolam: that sounds right
20:48 Derakon[phone] is now known as Derakon
20:48
<@Derakon>
Okay, that was the recruiter phonecall for a company...this company apparently has all of its techies submit to a test, which is a new one on me.
20:49
<@Derakon>
I'll have one hour from receipt of the email to answer everything.
20:54
<@McMartin>
Circular arrays sound a lot like ring queues
20:57 * TheWatcher eyebrows at Dera
20:57 * TheWatcher vaguely wonders what the point of a time limit is in that situation ¬¬
20:58
<@Derakon>
It's like an open-book test.
20:59
<@TheWatcher>
yes, but how do they know when you got the email?
20:59
<@McMartin>
It's probably from when the send it, and they send it while you're on the phone with them.
21:00
<@Derakon>
Well, they don't send it while I'm on the phone, but we agreed it'd arrive at 13:00.
21:00
<@Derakon>
And email's generally pretty reliable.
21:00
< jerith>
We usually gave our candidates about 24 hours to write the gateway app.
21:02
<@Derakon>
Dum de doo...13:02 and no email...
21:04
<@Derakon>
Ahh, there we go.
21:04 Derakon is now known as Derakon[distracted]
21:08
<@Consul>
And godspeed to you. :-P
21:38 * TheWatcher vaguely stabs the lj devs
22:04
<@Derakon[distracted]>
Okay, that's done. Sheesh.
22:04 Derakon[distracted] is now known as Derakon
22:04
<@Derakon>
Spent too long answering the barbershop problem, so I didn't get to the "describe a design pattern you've used" problem.
22:04
<@Derakon>
So they got an uber-brief description of quadtrees.
22:04
<@Derakon>
Which is probably not what they wanted, but oh well.
22:06
<@ToxicFrog>
Quadtrees aren't a design pattern as the term is usually used, so I'm guessing not.
22:07
<@Derakon>
Yeah.
22:07
<@Derakon>
They're a datastructure; it's how you use them that's a design pattern.
23:01 TarinakyKai is now known as Tarinaky
23:14 Derakon [~Derakon@Nightstar-4912.hsd1.ca.comcast.net] has quit [Quit: And poof! I am gone.]
23:56 AnnoDomini [~farkoff@Nightstar-29105.neoplus.adsl.tpnet.pl] has quit [Quit: Do not burn the candle at both ends, as it leads to the life of a hairdresser.]
--- Log closed Thu Jul 23 00:00:51 2009
code logs -> 2009 -> Wed, 22 Jul 2009< code.20090721.log - code.20090723.log >