David E. Smith on 14 Jan 2002 19:48:33 -0000

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

spoon-discuss: Re: spoon-business: Proposal: Bandwidth Limiting That Works?

[[ max 6000 characters per player per ballot ]]

> [[I welcome input from the Administrator on how this might be
> implemented, or if it's impossible.  There are any number of
> freeware/shareware/bloatware editing programs that count non-whitespace
> text (e.g. MS Word, UltraEdit).  But the most elegant solution might be
> to make all proposal submissions via a web page that would automatically
> count the characters and automatically notify the player whether it was
> accepted or rejected.  Saves everyone having to find their own method of
> counting.

The counts will never be precise, since I have to add at least a little
HTML to each proposal/rule/whatever. Just linebreaks and so on, but that's
4 characters per linebreak and 8 per blank line.

http://www.nomic.net/~g6/sizer.php is the two-minute prototype. It's
broken, but it shows that it sorta kinda works. It counts whitespace and
HTML because I'm lazy. Here's all it does:

// first a quick SQL query, then...

while($row=mysql_fetch_array($res) {
  $playersize[$row["owner"]] += strlen($row["ruletext"]);

Writing a function to only count "real" characters wouldn't be that
difficult, but it does border on the "takes more than five minutes to do"
category, since it has to track at least a little bit of state internally.
(And do I count the Standard Delimiter characters or not? The fun

For reference: player 6 is Iain, player 16 is gritter, 17 is Scoff!, and
21 is Bean. (The Web page mentioned above only lists player numbers. Like
I said, it was a quickie. I've spent more time on this email than on that
page, and I'm not even done with this email yet.)

Personally, I like Bandwidth Rationing, for two reasons:

1. It keeps my workload down. I know that right now, in the worst possible
case, I'll only have to deal with about 48 proposals (assuming all 16
players submit all three proposals). That doesn't count the fact that some
people hold theirs over through an (unintended?) loophole in Bandwidth
Rationing, but it's still vaguely tolerable.

2. In a backhanded way, it can encourage player cooperation. If you have
some sweeping change you'd like to implement, but it's too complex for one
big omnibus bill (236 just leaps to mind here), you can always work with
another player. You can submit part of the changes, and someone else can
submit the other part of the changes. Yeah, you have to share the points
and the glory; it's called compromise (or, "playing nice with others"). If
we look at Nomic in general as a microcosm of real-world government, this
sort of thing is almost necessary.