code logs -> 2008 -> Tue, 19 Feb 2008< code.20080218.log - code.20080220.log >
--- Log opened Tue Feb 19 00:00:30 2008
00:30 Derakon[AFK] is now known as Derakon
00:57 Reltzik [Reltzik@Nightstar-15817.dsl.pltn13.sbcglobal.net] has joined #code
01:09 Syloqs-AFH [Syloq@NetAdmin.Nightstar.Net] has quit [Connection reset by peer]
02:04 gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has quit [Quit: Z?]
03:31 Pi [~sysop@ServicesAdmin.Nightstar.Net] has quit [Ping Timeout]
03:33 Pi-2 [~sysop@24.19.152.ns-3536] has joined #code
03:33 Pi-2 is now known as Pi
04:40 GeekSoldier|bed [~Rob@91.18.96.ns-26590] has joined #code
05:04 AnnoDomini [AnnoDomini@83.21.47.ns-26441] has joined #Code
05:04 mode/#code [+o AnnoDomini] by ChanServ
05:08
< Reltzik>
Okay, a programmer shouldn't be getting this frustrated coming up with the right NAME for a class.
05:11 Syloq [Syloq@NetAdmin.Nightstar.Net] has joined #code
05:12 Syloq is now known as Syloqs-AFH
05:12
<@AnnoDomini>
Reltzik: Just call it yourMom(). :P
05:14
< Reltzik>
Nonono. yourMom() is a method. I want a CLASS, which would hypothetically be DOING yourMom().
05:14
<@Derakon>
YourMominator.
05:17
< Reltzik>
Seriously, I'm in Java doing wrappers for various basic types -- Booleans, Ints, etc -- but with the added feature of supporting listeners so that other classes are notified when the data changes. And I can't think of what to CALL the damned things!
05:18
<@Vornicus>
ListenableThingy
05:18
< Reltzik>
Bit long, but it beats my option of NeonThingy.
05:18
<@McMartin>
Publisher
05:19 * Reltzik ponders making a Listenable class and making all of these things public inner classes, eg, Listenable.Boolean
05:19
<@Vornicus>
I don't know. This still seems wrong; you should be using reactive/passive calculation.
05:20
< Reltzik>
You mean on-demand rather than as-it-changes?
05:20
<@ToxicFrog>
Yes.
05:21
< Reltzik>
Well, 1, I'm on a bit of a tangent anyway, and 2, it makes better design sense to have the things affected by stat changes be responsible for updating themselves.
05:21
<@Vornicus>
I don't see /any/ advantages to using proactive calculation.
05:21
<@Vornicus>
At all.
05:22
< Reltzik>
Let's suppose the strength modifier changes. There are two ways to handle propogating the consequences of that.
05:22
<@Vornicus>
Three, actually
05:22
< Reltzik>
How 'bout I list my two and then you add the third?
05:22
< Reltzik>
((Or fourth and fifth, perhaps.))
05:23
< Reltzik>
1st: You can have code IN YOUR STRENGTH MODIFIER CLASS (or whatever that class is) go to ALL the affected classes, and tell them, hey, I've changed!
05:24
<@Vornicus>
waugh
05:24
< Reltzik>
2nd: You can put the code in the classes that are interested in the change, rather than in the changed class. Can we agree this is superior to 1?
05:24
<@Vornicus>
Okay, here's third and fourth.
05:25
<@Vornicus>
3rd: You can have all the things that depend on one's strength, /check the strength/ each time it needs to figure out what its value is.
05:25
<@jerith>
(I'd make that the 0th.)
05:25
<@jerith>
Morning all, btw.
05:26 * AnnoDomini blarghs. Morning? 'Tis still night. :(
05:26
<@Vornicus>
4th... actually no, in this case lazy won't work, because there's too many things.
05:26
<@Derakon>
Retlzik: you remind me of a vector class I wrote a long while back that had public components and a pre-calculated magnitude.
05:26
< Reltzik>
Doesn't work with the GUI I have in mind. If you change the strength stat, the GUI should reflect that.
05:26
<@Derakon>
The upshot being that the pre-calculated magnitude was useless because you couldn't trust that it was accurate.
05:26
< Reltzik>
*should reflect all the changes.
05:27
<@Vornicus>
Relt: Sure it does; the thing is, you have to refreshthe whole gui when you change a stat. THis sucks, but you've got to do it /anyway/, so who cares.
05:29 * Reltzik tries to put into words why this approach just feels wrong.
05:30 * Reltzik thinks it has something to do with the Rules class he's envisioning.
05:30
< Reltzik>
Anyhow, thanks for the naming help.
05:31
<@jerith>
Many approaches that feel wrong are actually the best way to do things.
05:31
< Reltzik>
Well, I could make the performance argument, but this is Java.
05:31
<@jerith>
Programming is all about tradeoffs and the lesser of several weevils.
05:31
< Reltzik>
AKA, bugs.
05:31
<@jerith>
Like the argument I had yesterday.
05:32
< Reltzik>
Argument? What did you get called?
05:32
<@jerith>
We have one class that contains business logic and one that hits the db.
05:33
<@jerith>
I had some computation in the db class, which didn't really belong there.
05:33
<@jerith>
In this case, the business logic for that API call was just a wrapper that passed a complex data structure through to the db class.
05:34 * Reltzik decides not to do the one class of all inner-classes. Very unconventional.
05:34
<@jerith>
So putting the computation in the business-logic class would require unpacking and repacking said structure.
05:35
< Reltzik>
Okay, so what was the tradeoff?
05:39 AnnoDomini [AnnoDomini@83.21.47.ns-26441] has quit [Quit: There is strength not only in *knowing* the self, but *knowing* how to bring it forth in others.]
06:33 Derakon is now known as Derakon[AFK]
06:41 Thaqui [~Thaqui@Nightstar-11575.jetstream.xtra.co.nz] has joined #code
06:41 mode/#code [+o Thaqui] by ChanServ
07:05 You're now known as TheWatcher
07:21 Reltzik [Reltzik@Nightstar-15817.dsl.pltn13.sbcglobal.net] has quit [Quit: DEATH TO THE UNDEAD!]
08:08 You're now known as TheWatcher[afk]
08:38 Pi [~sysop@ServicesAdmin.Nightstar.Net] has quit [Ping Timeout]
08:39 gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has joined #Code
08:39 mode/#code [+o gnolam] by ChanServ
08:44 Reiver [~reaverta@Admin.Nightstar.Net] has quit [Ping Timeout]
08:51 Reiver [~reaverta@Admin.Nightstar.Net] has joined #Code
08:51 mode/#code [+o Reiver] by ChanServ
09:45 You're now known as TheWatcher
09:54 Thaqui [~Thaqui@Nightstar-11575.jetstream.xtra.co.nz] has quit [Quit: This computer has gone to sleep]
10:31 GeekSoldier|bed is now known as GeekSoldier|work
10:36 Pi-2 [~sysop@76.104.130.ns-21570] has joined #code
12:48 You're now known as TheWatcher[d00m]
14:03 You're now known as TheWatcher
15:10 You're now known as TheWatcher[afk]
16:07 AnnoDomini [AnnoDomini@83.21.64.ns-27289] has joined #Code
16:07 mode/#code [+o AnnoDomini] by ChanServ
16:11 gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has quit [Ping Timeout]
16:11 gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has joined #Code
16:11 mode/#code [+o gnolam] by ChanServ
16:36 GeekSoldier|work is now known as GeekSoldier|Student
17:28 Pi-2 is now known as Pi
17:28 Pi is now known as NSGuest-5124
17:59 NSGuest-5124 is now known as Pi-1
18:00 Pi-1 is now known as Pi
18:14 William__ [~JPL@Nightstar-3116.dsl.sndg02.pacbell.net] has joined #code
18:14 Jeff [~JPL@Nightstar-3116.dsl.sndg02.pacbell.net] has quit [Ping Timeout]
18:17 You're now known as TheWatcher
18:33 GeekSoldier|Student is now known as GeekSoldier
20:54 GeekSoldier is now known as GeekSoldier|bed
21:33 GeekSoldier|bed [~Rob@91.18.96.ns-26590] has quit [Ping Timeout]
21:40
<@Chalain>
Design question. I have a command-line utility that serves a similar purpose as apt, rpm, gem, piston, etc. One of the things you can ask it is if you need or want a given module. It gets the test suite for that module, and runs it without the module
21:40
<@Chalain>
installed. If the tests pass, it says "no". The question is this: what is the command for this? "tool want module" seems to me like it's *TELLING* tool to want module, not asking tool if it DOES want module.
21:41
<@Chalain>
Since most CLI's adhere to a syntax of "tool command object", I guess what I need is a word that is a command to investigate the necessity for a module, and report this status.
21:41
<@gnolam>
Hmm.
21:43
<@Chalain>
"tool investigate_need_for_module_and_report module" really doesn't roll off the tongue.
21:43
<@gnolam>
is-needed? :P
21:43
<@Chalain>
I would love to use "tool wants? module" but ? is a special character on a command line.
21:43
<@McMartin>
'reqs'
21:43
<@McMartin>
And that's two commands.
21:43
<@McMartin>
needs-module and report-module.
21:43
<@Chalain>
reqsum? Darn near kill -9'd em!
21:44
<@Chalain>
Right... but "needs-module" again seems to imply to me a command: "I am telling you that you need this module".
21:44
<@Chalain>
HMMMMMMMM
21:44
<@gnolam>
And does the tool reply "DO NOT WANT" if the module is not needed?
21:44
<@McMartin>
Well, if you're going that route, wants? looks like it ends in the middle fo the sentence.
21:44
<@Chalain>
Hehe
21:44
<@McMartin>
gnolam: THAT'S IT
21:45
<@McMartin>
Clearly the command you want is:
21:45
<@McMartin>
tool can-haz cheezburger.i386
21:45
<@Chalain>
tool can-haz--LOL
21:45
<@Chalain>
jinx
21:45
<@McMartin>
(Where is there not yet a libcheezburger?)
21:45
<@Chalain>
Where? Maybe some corners of C#.
21:46
<@Chalain>
Why? No one can say.
21:46
<@McMartin>
Er, yes. WHy
21:46
<@Chalain>
oh man.
21:46 * McMartin needs fudz
21:46 * McMartin can perhaps has cheezburger!
21:46
<@Chalain>
Now I wanna go write a cheezburger DSL.
21:46
<@AnnoDomini>
I think this needs to go in FtDoM.
21:46
<@Chalain>
Heh
21:46
<@McMartin>
(There is not yet a libcheezburger in libc, so "where is there not" is an easy question)
21:47
<@McMartin>
Is FtDoM like zOMGband?
21:47
<@Chalain>
def can-has(cheezburger); raise DoNotWant unless WANT; end
21:47
<@Chalain>
in other news, hi all. How's folks?
21:48
<@McMartin>
I haven't had lunch yet. Going to fix that now.
21:49
<@Chalain>
Cheers
21:50
<@AnnoDomini>
McMartin: It's a thread for wacky IRC dialogs over at the Nightstar Zoo.
22:16
<@McMartin>
Aha
23:44 AnnoDomini [AnnoDomini@83.21.64.ns-27289] has quit [Quit: I am Yulaw! I am nobody's bitch! You - are mine.]
--- Log closed Wed Feb 20 00:00:28 2008
code logs -> 2008 -> Tue, 19 Feb 2008< code.20080218.log - code.20080220.log >