http://www.perlmonks.org?node_id=703328

We had a really long discussion the other day in the CB about bots who could speak. Right now, the Site Doc Clan has the Chatterbox FAQ which says, "Are bots allowed in the Chatterbox?" and answers, "No. But actually, as long as the bot doesn't talk, it's o.k. Bots which talk on their own are not tolerated. One quasi-official bot is im2." The question is: is this true?

If we want to be pedantic, it's nominally true because it is written. But the question is: what is it about chatting bots that are problematic? Could there be bot(s) that the community find to be "ok"? What conditions would that be?

From the conversation in the CB, I got from tye his opinion that, basically, while it's true that chatting bots aren't currently allowed, he doesn't think that means that no bot could be accepted. And the criteria he gave was that bots should not be obnoxious. Which seems reasonable to me.

So the question is: would you think that PM's CB could accept a bot? If so, under what conditions? If not, why not? And would this be a good thing or a bad thing?

Now, due to some recent changes, there is a theory going around that it's easier to get feedback if a change is already implemented. Since tye seemed ok with this, I've gone and put together a proof-of-concept for this idea which may help get the juices flowing. If you go into the CB and type "Tankbot, stat $user", some stats will be extracted from data on $user's homenode and displayed. Similarly, if you type "Tankbot, lolcat $text", then $text will be run through Acme::LOLCAT and results displayed. Or, "Tankbot, is $question", Acme::Magic8Ball is consulted. This currently requires that my IRC connection is up, and ambrus' cbstream bridge is also active. This will only be true while I'm actually active (or close to active), as per Corion's request (see update below).

Just to keep some of the feedback from yesterday (as I remember it) and today (with it already running while I'm typing this):

Preferably, we stick to what a bot would try to do, not how it would do it. Implementation details could come later (if ever).

Also, please don't try to break Tankbot (I'm sure it's easy to do). It's just a proof-of-concept, for fun, and not intended for long-term use. :-P

Update: Corion has asked me to take Tankbot offline while I'm not around, so, not wanting to *entirely* piss off the gods ;-), I'm doing so... which is unfortunate, because I think having it there would allow people to see what it's really like (which may, or may not, kill the idea more effectively than abstract talking).

Update 2: "fun and games" ... I thought that was half the purpose of CB. Ah well.

Replies are listed 'Best First'.
Re: Chatty CB bot(s)
by shmem (Chancellor) on Aug 09, 2008 at 22:33 UTC

    The problem with the Chatterbox in general is that it is hooked upon the wrong protocol, so there is significant overhead involved in passing around those messages, even with FullPage Chat. There's the overhead of storing those messages in a database table and all that http request/response hoops. IRC servers are optimized for passing around chat messages, perlmonks is not. That's why the Chatterbox is restricted and Anonymous Monk is not allowed to speak. Chatty bots are, in a way, also Anonymous Monks, even if they were invented and are driven by a member.

    Indeed, I think the chatterbox could be replaced by a link to an irc2http hub and the perlmonks site could just dish out the external link, and have its talkbox speak to a #perlmonks irc channel via that external hub - the reverse of ambrus' cbstream. Of course, tying an IRC channel to perlmonks authentication is an interesting challenge...

    The chatterbox is - in terms of perlmonks content - an extension to SoPW, and it is, in those terms, already too IRCy. But then it is also a place for us monks to talk to each other within the confines of the Monastery. Chatty bots have no place there, imho.

Re: Chatty CB bot(s)
by Corion (Patriarch) on Aug 09, 2008 at 21:30 UTC

    I'm against it. This is not irc - people can click on a user's name if they want to see more information on that user. If you want to provide statistic information on users, set up a website. Bots speaking or even auto-greeting users may or may not have their use on irc but I'm against such fun and games here - it's just noise in the CB.

Re: Chatty CB bot(s)
by Your Mother (Archbishop) on Aug 10, 2008 at 00:03 UTC

    I hardly ever use the CB and don't have an opinion either way but ++ for stirring the pot and trying something new however it shakes out.

Re: Chatty CB bot(s)
by jdporter (Paladin) on Aug 11, 2008 at 15:32 UTC

    In my opinion, the position that bots must never be allowed to utter in the cb under any circumstances is extreme, dogmatic, and unrealistic. My feeling is that most cb users would tolerate some chat from a bot, under some (perhaps very constrained) circumstances. Finding that common ground is the challenge.

    For starters, any prohibition on bot chat based on technical concerns is inappropriate, as it is an extremely premature optimization. If one finds bot chat completely unacceptable, there is always /ignore. The /ignore feature can be enhanced to allow some fine-tuning (i.e. conditional /ignore) if there is demand for it.

    Secondly, what bots do via private messages is not really relevant to the discussion here, except to the extent that someone proposes a mixed-mode bot interaction. Bots like im2 and cbs are strictly non-chatty, so they're irrelevant, except perhaps as examples of that behavioral extreme.

    The reasons some people have given for being against bots sound reasonable enough, mostly, but then, in general, those reasons don't seem to lead to their conclusion that bots should be 100% verboten. Tanktalus' bot idea doesn't sound very useful? Not a reason to ban bots altogether. CB isn't IRC? Bots can communicate privately? "I don't want to hear from non-humans"? These are not reasons to ban bots altogether.

    Seriously. We should be able to come up with some parameters of acceptable bot behavior.

    For example - I would not be opposed to a bot which utters unbidden after some long period of cb quietude. (Heck, we already have a bot that does that.) Of course, if multiple bots try to do this, there will be contention, and we'd probably have to ask the bot authors to add tighter conditions on when the bot will utter. Another possible mode: a bot could be allowed to reply publicly to a direct query from a user when that user is the only one active in the cb. Or: bots could respond to direct queries when the cb contains only "bot-friendly" users. A user could register herself as "friendly" to a bot by sending a registration /msg to the bot.

    I believe we may also need to proscribe user behavior in the brave new world of a chatterbox with bots. For example, we may feel it necessary to define a policy saying "Users should never (publicly) respond to a bot's utterance."

    Between the mind which plans and the hands which build, there must be a mediator... and this mediator must be the heart.

      Well said, and I agree with you.

      chomp; # nom nom nom

        ++ to you solely for your sig :-)

        meh.
Re: Chatty CB bot(s)
by marcussen (Pilgrim) on Aug 11, 2008 at 04:46 UTC

    For me it's not so much the bot as the purpose of the bot. im2 does a few things and does it relatively well. I think I would rather see your work go into im2 patches than the next purl for CB. Since super search is only a few pixels away I would like to see some healthy discussion on potential features, whether it be a stand alone bot or further work on im2. So far your stats looks interesting, but does not strike me as particularly useful or beneficial.

    Confucius says kill mosquito unless cannon
Re: Chatty CB bot(s)
by castaway (Parson) on Aug 12, 2008 at 13:46 UTC
    Heyho..

    My tuppence or two, for what it's worth (not that I followed the actual conversation that this post resulted from). When I was making im2, it did originally respond to direct queries in the CB, via CB. That was deemed annoying by various people (I forget exactly whom, tho I think merlyn was involved ;).. Consequently it now only responds via /msg, which seems fine to me.

    In general, while it's an interesting subject, I can't see an argument for changing the current "rules" until someone actually comes up with a request/proposal for a bot that requires to use / can only work via the CB itself. There may have been one mentioned in the prior discussion, but there isn't one in this post.

    So, some concrete reasons please, other than "we're under opression here!"

    Patches / extensions to im2 always welcome!

    C.

Re: Chatty CB bot(s)
by theorbtwo (Prior) on Aug 12, 2008 at 13:48 UTC

    Part of the problem is that IRC bots are meant to be a way of getting information into the IRC environment. The CB environment is the web, so there's not much reason for that. !g Foo? Why not just google it? Or, for that matter, just write Foo -- part of the reason to write a bot just gets subsumed by perlmonks itself.

    That said, I still think the best metric is "don't be annoying". I don't think responding to chatter is necessarily annoying, even if you do it when not addressed directly, so long as you don't do it too much -- if your bot is in the top 10 on the CB stats, you're probably doing it too much.

    If people keep thinking "didn't she just say that", it's probably talking too much...

    If it starts spouting wrong answers to questions, it, er, needs a better AI.

Re: Chatty CB bot(s)
by Intrepid (Deacon) on Aug 11, 2008 at 04:23 UTC

    I am very strongly opposed to a bot that is allowed to speak publicly in the cb.

    I propose that if a bot were created and blessed for cb operation at all, it would be ok for it to respond to public stimulus (like: "chatterbot, stats Barrd") with a private reply, and the sending of a brief and uninteresting action report to the cb, like: "[chatterbot] has replied to [<some-monk>]".

    The use of the brief acknowledgement / status action message would prevent the confusion, silliness and disorderliness of seeing people appearing to be speaking to an entity that does not ever appear to answer.

      Actually, I find private reply to public requests to be an even more unacceptable mode due to causing as great an increase in noise but with zero increase in information. It can even lead to copy-cat requests as those watching get curious what the previous requesters got shown privately. Afterall, the limitation on the CB is the number of lines (never more than 10 shown) so an action report still consumes 10% of the available real estate while providing almost nothing of value.

      To reduce noise in the CB, it would actually be better to have requests to a bot be made only via private message with the option of requesting either private or public reply. A public reply would mention who asked for it and so could provide all of the available information in a single line of chatter.

      - tye        

Re: Chatty CB bot(s)
by wol (Hermit) on Aug 11, 2008 at 14:01 UTC
    Thinking about the chatterbox, surely it should be referred to as the "Parlour"? That's the monastic location for chattering...