code logs -> 2011 -> Mon, 11 Jul 2011< code.20110710.log - code.20110712.log >
--- Log opened Mon Jul 11 00:00:16 2011
00:15 You're now known as TheWatcher[T-2]
00:19 You're now known as TheWatcher[zZzZ]
01:27 Kindamoody is now known as Kindamoody[zZz]
01:37 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Client closed the connection]
01:51 Finerty is now known as Vornicus
01:56 Attilla [Some.Dude@Nightstar-f29f718d.cable.virginmedia.com] has quit [Ping timeout: 121 seconds]
02:57 McMartin [mcmartin@Nightstar-11664913.pltn13.sbcglobal.net] has quit [[NS] Quit: upgrades]
03:20 cpux is now known as shade_of_cpux
03:21 McMartin [mcmartin@Nightstar-11664913.pltn13.sbcglobal.net] has joined #code
03:25 AnnoDomini [annodomini@Nightstar-3a5a2fc4.adsl.tpnet.pl] has quit [[NS] Quit: leaving]
03:56 Taki^ [Taki@Nightstar-0d4dd6d5.consolidated.net] has quit [Ping timeout: 121 seconds]
04:07 gnolam [lenin@Nightstar-202a5047.priv.bahnhof.se] has quit [[NS] Quit: Z?]
04:13 * kwsn doesn't want to go to work tomorrow D:
04:26 Vash [Vash@Nightstar-f03c5637.sd.cox.net] has joined #code
05:03 kwsn is now known as kw\t-2
05:06 kw\t-2 [t1gg@Nightstar-5a8951e9.res.rr.com] has quit [[NS] Quit: moooooooooooooo]
05:42 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code
06:00 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Ping timeout: 121 seconds]
06:03 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
06:19 Stalker [Z@2C3C9C.B2A300.F245DE.859909] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
06:23 * Vornicus gnarps, designdesigndesigns.
06:39 Derakon is now known as Derakon[AFK]
07:04 You're now known as TheWatcher
07:06 Kindamoody[zZz] is now known as Kindamoody
07:08 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Client closed the connection]
07:10 celticminstrel [celticminstre@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
07:38 celticminstrel [celticminstre@Nightstar-5d22ab1d.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
07:41 Vornicus is now known as Vornicus-Latens
07:41 Vash [Vash@Nightstar-f03c5637.sd.cox.net] has quit [[NS] Quit: Spaaaaaaaaaaaaaaaaace sleeeeeeeeeeeeeeeep!]
07:56 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has joined #code
08:08 You're now known as TheWatcher[afk[
08:09 You're now known as TheWatcher[afk]
08:52 Attilla [Some.Dude@Nightstar-f29f718d.cable.virginmedia.com] has joined #code
09:12 Kindamoody is now known as Kindamoody|out
09:37 Derakon[AFK] [Derakon@Nightstar-c826c088.ca.comcast.net] has quit [Ping timeout: 121 seconds]
10:05 Derakon [Derakon@Nightstar-c826c088.ca.comcast.net] has joined #code
10:51 You're now known as TheWatcher
10:52 Derakon [Derakon@Nightstar-c826c088.ca.comcast.net] has quit [Operation timed out]
11:10 AnnoDomini [annodomini@Nightstar-c04a5b58.adsl.tpnet.pl] has joined #code
11:19 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
11:34 Derakon [Derakon@Nightstar-c826c088.ca.comcast.net] has joined #code
13:09 gnolam [lenin@Nightstar-202a5047.priv.bahnhof.se] has joined #code
13:16 Rhamphoryncus [rhamph@C06FE3.F5723C.BE3FEB.9D4666] has joined #code
13:42 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [[NS] Quit: This computer has gone to sleep]
14:28 * TheWatcher stabs idiot module writers
14:30
< TheWatcher>
You do not make your fucking .t files access a website that has anything like 'dyndns.org' in the sodding hostname
14:30
< AnnoDomini>
Is the module just a railroad where the characters don't really have anything to say about the plot?
14:41 You're now known as TheWatcher[afk]
14:48 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
15:24 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Client closed the connection]
15:24 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
15:40 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Client closed the connection]
15:41 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
15:44
< gnolam>
Ok, the first testing version of the editor has been put into the hands of its end user... wish me luck.
15:44
<@froztbyte>
I'd rather wish that your user doesn't have bullets
15:45
<@froztbyte>
luck doesn't help much with dodging them if the user's a good shot with an itchy trigger finger
15:49 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Client closed the connection]
15:49 celticminstrel [celticminstre@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
15:51 celticminstrel [celticminstre@Nightstar-5d22ab1d.cable.rogers.com] has quit [Connection reset by peer]
15:51 celticminstrel [celticminstre@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
16:00
< gnolam>
:)
16:01
< gnolam>
But they have a very high percentage of pacifists, for some reason.
16:17
< gnolam>
I'm pretty sure I'm better armed, if it should come to that.
16:17
< gnolam>
On the other hand, I might have to start checking my tea for polonium...
16:17 AnnoDomini [annodomini@Nightstar-c04a5b58.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
16:19 AnnoDomini [annodomini@Nightstar-3b08438a.adsl.tpnet.pl] has joined #code
16:31 AnnoDomini [annodomini@Nightstar-3b08438a.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
16:33 AnnoDomini [annodomini@Nightstar-84178795.adsl.tpnet.pl] has joined #code
16:52 AnnoDomini [annodomini@Nightstar-84178795.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
16:54 AnnoDomini [annodomini@Nightstar-707f80fe.adsl.tpnet.pl] has joined #code
17:05 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has joined #code
17:19 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has quit [Connection reset by peer]
17:20 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code
17:21 celticminstrel [celticminstre@Nightstar-5d22ab1d.cable.rogers.com] has quit [Connection reset by peer]
17:22 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
17:26 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Client closed the connection]
17:26 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
17:46 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has quit [Client closed the connection]
17:46 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code
18:10 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Client closed the connection]
18:11 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
18:12 Vornicus-Latens is now known as Vornicus
18:17 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has quit [Client closed the connection]
18:17 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code
18:19 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
18:46 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has quit [Client closed the connection]
18:46 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code
18:47 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Ping timeout: 121 seconds]
19:51 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
19:57 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has quit [Connection reset by peer]
19:57 Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code
20:24 You're now known as TheWatcher
20:27 * TheWatcher drops a mass of documentation on an Enemy.
20:27
< TheWatcher>
Ah, that's why I write this stuff~
20:27
< Tamber>
See, there is some use for the stuff!
20:28 * jerith has been fiddling with a project that has /two/ sets of documentation, both of which are incomplete and misleading.
20:28
< TheWatcher>
You've been using PHP?
20:28
< jerith>
No, graphite.wikidot.com
20:28
< jerith>
(That's one set.)
20:30 * TheWatcher fingertappity, decides it is time for graphics
20:30
< TheWatcher>
Or maybe database, hm
21:12 Kindamoody|out is now known as Kindamoody
21:15
< McMartin>
Speaking of database, I need to get up to speed with SQLite.
21:16
< jerith>
It's... suboptimal.
21:16
< McMartin>
I'm not learning it because it's the best database solution.
22:11 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [Client closed the connection]
22:12 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
23:00 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code
23:18
< McMartin>
Oh, SQLite. We get to have the Apollo 13 conversation.
23:18
< Vornicus>
the what
23:19
< McMartin>
#xkcd chat log about how Internet tech support goes, with the Apollo 13 response being "why are you even in space, you shouldn't be in space there's nothing there"
23:19
< McMartin>
(To wit, the official answer to "Is SQLite3 thread-safe" is "Threads are evil, you shouldn't be using them")
23:19
< TheWatcher>
... what
23:20
< McMartin>
I associate this attitude with UNIX jerks
23:20
< McMartin>
I initially wrote "UNIX twats" but they, as the saying goes, lack both the depth and the warmth.
23:20
< McMartin>
It is not uncommon amongst UNIX partisans, though, presumably because they also hate GUIs and anything that touches them.
23:21
< McMartin>
GUI being one of the few problem domains where OO is actually useful, and one of only two cases I can think of where threading is for all practical purposes mandatory
23:21
< McMartin>
(Hosting server-side web applications being the other, though you can fake it with a kajillion processes there)
23:26
< ToxicFrog>
(asynchronous IO + coroutines~)
23:27
< McMartin>
(Coroutines are in fact threading.)
23:28
< McMartin>
(And poll/select for GUIs works right up until you need to actually do something that takes more the 50ms)
23:29
< ToxicFrog>
(generally by "threading" people mean "concurrency", which coroutines are not)
23:36
< McMartin>
("When you block on disk I/O, does your entire computation screech to a halt")
23:36
< ToxicFrog>
(what)
23:37
< McMartin>
(This is the problem with most user replacements for threads; blocking I/O blocks the whole process because as far as the OS is concerned that's what's happening)
23:37
< McMartin>
(Also, if you have a GUI "worker thread" implemented as a coroutine, either you're hanging the GUI or you're reimplementing co-op threading, probably poorly.)
23:37
< ToxicFrog>
(right, that's where the "asynchronous IO" part comes in; it lets you write code that looks threaded and does not block on IO but is also not concurrent)
23:38
< ToxicFrog>
(granted, this only works if you spend most of your time IO-blocked or input-blocked, rather than performing computation)
23:39
< McMartin>
(The GUI problem is "input is a continuous stream and as a rule your computations Do Not Give A Shit About It, but there are real-time requirements on responses to the events)
23:40
< McMartin>
(Your options are to have the computation time itself out to poll the event stream or thread it like you should have in the first place. "The mouse moved, have an interrupt" is not an acceptable solution)
23:40 * Vornicus should really get a server up and running so he can write web code with serverness.
23:40
< McMartin>
(But yes, this is also why I wound up basically implementing continuations in Game Maker 8)
23:41
< McMartin>
(Which is not threaded)
23:41
< celticminstrel>
Why are you all in parentheses?
23:41
< Vornicus>
because they haven't popped yet.
23:41
< ToxicFrog>
Because we forked and then the parent process died~
23:41
< celticminstrel>
XD
23:42
< ToxicFrog>
McMartin: I'm coming at this from the perspective of writing code that doesn't actually do much computation; the only real concern with the UI is that you don't want it to sieze up when the program is performing network or disk IO.
23:42
< ToxicFrog>
Since most of the software I write either has no UI, or behaves as above.
23:43
< McMartin>
Yeah, and if you write your GUI code such that the work happens in UI event handlers, even if you're getting away with it now, the standard response is that you're doing it wrong.
23:44 You're now known as TheWatcher[T-2]
23:44
< ToxicFrog>
Well, the "work" here is "add a message to a queue", and then there's a different coroutine that reads from the queue and talks to the server accordingly.
23:44
< McMartin>
Both because Magic Button architecture is intrinsically wrong, and because if you're architecting it like this you are 99.9998% likely to be violating model/view separation.
23:45
< McMartin>
Right. That's fundamentally equivalent to a producer/consumer threading model.
23:45 * Alek grars at xp home and OEM
23:45
< ToxicFrog>
Yes. But I would not consider it "threading" in the sense discussed earlier; there's no preemption and, more importantly, no concurrency.
23:46
< McMartin>
There's no reason to believe that processing the message from the queue won't be pre-empted.
23:46
< McMartin>
By paint() if nothing else
23:48
< ToxicFrog>
Um
23:48 You're now known as TheWatcher[zZzZ]
23:48
< ToxicFrog>
These are coroutines; preemption is, by definition, not possible
23:48
< McMartin>
s/won't/shouldn't/
23:48
< McMartin>
Right.
23:48
< McMartin>
What I'm saying is, if you're writing, oh, I don't know, a board game.
23:48
< ToxicFrog>
>.>
23:48
< McMartin>
And you'd like to AI to be able to take its own turn in its own time.
23:49
< McMartin>
You really probably should let the AI not have to give a shit about the paint queue or reacting to "the window has been moved/obscured" events.
23:49
< McMartin>
GUI events have real-time requirements on them, albeit not terribly onerous ones by the standards of realtime
23:50
< ToxicFrog>
Right. But now we're back to "doing computation in the same process as the UI", which - as mentioned earlier - is not a concern for me.
23:50
< McMartin>
But 100ms can go pretty fast, and the system will obviously seize up.
23:50
< McMartin>
Right
23:50
< McMartin>
The UNIX approach is to say that GUIs should never do anything and subprocesses should do all the work.
23:50
< McMartin>
I'm pretty comfortable saying that they have mistaken their preferred problem space for the entire universe.
23:52 * ToxicFrog nods
23:52
< celticminstrel>
I see you escaped the suffocating regime of the parentheses. :P
23:52
< McMartin>
And any time your reaction to a question about anything outside your preferred problem space is "your problem is that you are not in my preferred problem space" you get hit with large sticks.
23:53
< McMartin>
And SQLite puts this in their FAQ, which means they are now #2 against the wall after whoever wrote the GIMP line tutorial.
23:54
< Vornicus>
I should really put my settlers stuff on github.
23:55
< Vornicus>
...and find a replacement for ruby/rake, because while it did make my life pretty easy, I'm not writing anything else in the entire thing in ruby.
23:57
< Vornicus>
Well. Github or something.
23:58
< celticminstrel>
Settlers stuff?
23:59
< Vornicus>
My on-again off-again project to build a persistent, web-based Settlers of Catan.
--- Log closed Tue Jul 12 00:00:02 2011
code logs -> 2011 -> Mon, 11 Jul 2011< code.20110710.log - code.20110712.log >

[ Latest log file ]