Picospan was designed twenty-two years ago. Conferencing on Grex hasn't evolved very much since then. We have a web interface, but that's really a mostly cosmetic change. This wouldn't be a problem, except that I don't think that the currrent model of conferencing is working very well on Grex these days. I think it offers inadequate tools to help users find what they want among what they don't want. I've been thinking a bit about how conferencing software could be modified to work better for Grex. I don't have a plan, but I think it would be worth doing some brainstorming on this, so I'm going to type in some half-baked ideas on this. My idea would not to be replace the current Picospan/Backtalk combination. Instead this would be initially be a separate, alternate conferencing system also offered on Grex. Or it might be a separate interface to the same conferences - depends on how radical the design changes get. I'm partly inspired by slashdot's moderation system. Their FAQ (http://slashdot.org/faq/com-mod.shtml) covers the basic concepts of the moderation system in a very clear and logical fashion, and I recommend reading it. The basic idea is that by a somewhat complex method that is the result of a lot of expermentation and fine tuning, each response is assigned a score. When people read, they set a threshold, and any responses/items rated below that threshold vanish from sight. Nothing gets deleted but low-value comments don't get seen by many people. The slashdot example, though very interesting, is not quite a viable model for Grex. The most important difference is that Grex is a vastly less focused community than slashdot. That is, the range of things people come to Grex to find is very large. Think of some typical items from agora: - The "Why are you Happy?" item - A generic gun control debate item - The humor item - The license plate item - Some one's weight loss item - Polytarp's latest post So let's rate these from best to worst. Well, the best is obviously... um, opinions vary. Well, at least we can agree on the worst ... well, no we can't. Polytarp's items evidently make polytarp happy. All of these items have constituencies, otherwise they wouldn't keep getting entered. In every case there are also people who would rather gouge their eyes out than read one more of these items. Slashdot has a much narrower focus than Grex - it's a technology news site. This narrowness of focus is really the norm on the net these days - there are very, very few conferencing systems that don't have a specific unifying topic. This is one of the things that make Grex special - it presents you not only with material you are interested in, but with material that you never suspected that you might be interested in. So a system for scoring Grex responses must differ from the slashdot system first by recognizing that there are different things different people are interested in. The traditional Picospan way of doing this is the idea of topical conferences. If you are interested in politics, you go to the politics conference. If you are interested in humor, you go to the humor conference, etc. This basically works badly. Over time, all activity in other conferences dies out, and everything moves to Agora. You want to post where the most people will see it. You want to catch the interest of people who might not go out of their way to see your item. In this day and age, if there is a narrow topic you want to discuss, you'll probably go to a conferencing system or mailing list that is devoted narrowly to that topic, not to Grex. If I have a Linux question, I'll post it to the Washtenaw Linux Users Group list, not to the Grex unix conference. This has accelerated the death of most non-Agora conferences on Grex. Agora offers a community of semi-familiar people, a circle of acquaintances whose value to you is less predictable than a quick answer to a technical question. At this point, I think I may have talked myself out of the idea I had in my head when I started this post, but, hey, that's the point of writing things down. I'm going to proceed to describe some of the ideas I had. My notion of a way to handle differing interests was to loosen up the concept of a conference. We start with a big unsorted pool of miscellaneous items entered by various people, pretty much like Agora today. We create a thing called an "agenda". An agenda is a list of items that are interesting from a specific point of view. There might be a "politics" agenda that hold items of interest to people who want to talk about politics. Maybe a "humor" agenda for people who want to read funny things. Maybe a "dork" agenda for people who want to see other people make fools of themselves, a "rude" agenda for people exhibiting poor manners, and a "meta" agenda for people who want to hear Grexers talk about Grex. Each such agenda would have items on it that fit into that agenda. Any given item could be on many agendas. So far this is just like conferences, except that linking would work better, so reading something on one agenda would mark it read on all other agenda's too, and it would be much more normal for items to be included in many agendas. Within an agenda, we would also have the capability of rating the relevanace of each response (or item text) to that agenda. So on the "politics" agenda things would be rated for how political they are, on the "humor" agenda things would be rated for how funny they are, on the "rude" agenda things could be rated for how rude the poster is. As a reader, could simply read the agendas you like, like politics, with a threshold of your choise (so low rated responses get filtered out). But you could also read combinations - political things that are funny but not rude, combining agendas with different weights. Obviously this is something you could fiddle with a lot to fine tune to your needs. One possible way to make this easier is to give every user a "personal agenda" - where they can include items they like and rate responses by how much they liked them. It might be possible to match an individual user's preferences against the system agendas and automatically generate a weighted combination of agendas that roughly matches their ratings. (This is a tricky, but much studied computational problem.) You'd also have some system-generated agendas in the mix, like "newness" that rates responses by how recently they were entered, "brevity" that rates them by length and "polygon" and "polytarp" that rates them 5 if they are by janc or polytarp or 0 otherwise. You can mix these into your item selection function, so you can bump up or down things that are in those categories. Most of the other agendas would have to be manually maintained by someone though. I think there should be different models. Some might be created by cfadm with the list of administrators assigned in much the same way that we now assign fairwitnesses. Generally this would work best if you assign people to run it that actually like stuff like that - say put "klg" and "richard" in charge of the politics agenda. They probably wouldn't agree on the truth of many political postings, but they'd likely mostly agree on whether the subject is political in nature, and since they are likely looking for such discussions, having them mark them when they see them is pretty painless. For something like "humor" you'd likely want to get more people voting. For anything there would need to be a mechanism where other people who happen across a new political or humorous posting can toss it toward the appropriate agenda. I'd really rather see a more open model for agendas though. One idea is letting any user create as many agendas as he or she likes, and make them available for others to use. This makes a marketplace of agendas. Well maintained agendas get subscribed to by more users. There might be ways to let interested people feed into existing agendas without having to formally appoint them. For newusers and anonymous readers, you could do something like keep track of how many users used which agendas with which weights in the last weeek. Use those to compute a default set of weights for a default agenda. An alternative approach would be to ditch the idea of topical agendas (like "politics") and use only the personal agendas, where each user rates things by how much they like. Then you'd pick users whose judgement of goodness is similar to yours (perhaps by an automated mechanism that matches their past ratings to yours) and use a combination of those to select and rate things you haven't seen yet. As I'm writing here, I'm tending to drift more toward the idea of personal agendas only. Obviously not all these ideas could be used, as things would get wildly complex if you did, and there are some interesting GUI issues too. There are issues in figuring how to keep the labor cost in rating things low. Some of these ideas wouldn't fully achieve my goals. I don't want a mechanism so perfect that it shows you only content that you expect to be interested in. This would be boring, and would tend to fragment the community into multiple narrow communities. Maybe there should be a system generated "random" agenda that assigns random plus scores to random items and then can be used to mix in a random scattering of other items into your reading. The ideas for tools that do pattern matching to find agendas that resemble your personal agenda and predict interest based on that would probably throw in enough goofy results to fulfill my desire for a certain level of chaos all by themselves. So I'm still playing with ideas here. I think Grex needs some kind of mechanism for helping people sort signal from noise, but I'm far from sure what that mechanism should be. I'd be intereted in any ideas.37 responses total.
This response has been erased.
This response has been erased.
Going in the direction of making it easier for readers to see only what they want to read and avoid what they don't is fine by me. And the more this filter can be set to individual preference, the better. I'm only slightly familiar with the Slashdot rating system. Would it result in those who visit here most often seeing responses soon after they are posted and therefore have more influence over the rating system? My observation is that filtering a person for all of his or her responses is pretty useful. Seldom does someone who enters empty or offensive remarks most of the time come in with something brilliant that just shouldn't be missed. But I'd not be opposed to trying a different system. But whatever system we go to I'd *really* like to see it require as little staff maintenance as possible. We should go out of our way to design a system that could chug along without needing unnecessary attention. Cause it probably won't get it. Having just one conference and using "forget" would be fine with me. Especially if the items could then be displayed either chronologically or by level of activity.
I only skimmed through this, so a few general points: The new ideas for items are nice, though I doubt poly will restrict himself to one item unless he grows up. I'd like to see gate extended to provide an emacs- or perhaps joe- or pico-like interface. I'm not particularly fond of picospan, but it does the job adequately (apart from the editing function, as I just implied.) But then I'm not wild about text-based menu interfaces in general. Of course, these days people have the option of using backtalk.
Wow, for the second time someone today I've heard someone say something similar to something I said a long time ago. The first was an entry to the Plan 9 fortune file with a David Gelertner quote about software needing to be beautiful to avoid complexity. I said something similar several years ago, substituting elegance for beauty. But that's sort of common knowledge. The non-existance of viable online communities was something I was apparantly thinking about late last year; I found a file in my home directory (not on grex) with an mtime sometime on December 3, 2003 that contains the following text: : augusta 2244; cat community Building a Community --- it's still too hard. Online communities are a great idea, but building them just doesn't work. It's just too hard. Small experiments work well, but the systems never scale up well, and you're left with an issolated enclave inside a larger mass. What we need are dynamic community spaces---ways to build sub communities quickly and easily, and to tie those together in dynamic ways on a per-user basis. : augusta 2245; Your ideas are interesting, Jan, but I think you're thinking in terms of a global namespace for topics, items, agendas, whatever. I think the real answer lies elsewhere. You're right that users need a way to build collections of items that they're interested in, but why does that imply anything other than a global namespace at all? Why not put items in a generic pool, and then tag them with meta-attributes that users can use to build up collections of items they're interested in? I think Microsoft is trying to do something similar with their new filesystem: there won't be a hierarchy anymore, but users will be able to create groups of files by selecting on attributes kept in a relational database (or maybe an object database, or object-relational database). I guess there's some way to link such groups together to great a graph that can be operated on like a more traditional filesystem. I think that's a sucky way to organize files, but maybe something to think about when organizing online discussions and building communities.
For what it's worth, I like Jamie's ideas. I suspect that you could write a newsreader client that mimics the current Picospan look and feel. Import all existing conferences into grex.* newsgroups, and go from there :) I would probably STILL use the text interface that works like picospan and/or Yapp, because I LIKE this interface.
This response has been erased.
Hey! Substituting an NNTP server for Picospan was *also* something I proprosed a long time ago! Stop stealing my ideas, people! :-)
I know nothing of how such software is designed or even what's possible for Grex, but here is my wish list in order of priority: 1. Stable (minimizing the need for staff maintenance) 2. Robust (as in fast) 3. Easy to set-up user controlled content filter 4. Preference menu determines how items are displayed (by activity, date entered, author, etc.) 5. The software is open source and Grex would be able to make changes as policy and use dictates 6. Compatible with dialup access 7. Designed to be usable for those with little computer experience 8. Compatible with previously used software so our history isn't lost 9. Automatically fixes all my misspellings
10. Automatically fixes all my misattributions
It's too complicated, janc, and it's AGENDAE, not agendas.
This response has been erased.
And agendae is the plural of agenda.
re 1 >There are a couple of essays on this topic on jameshoward.us. Where, exactly?
This response has been erased.
I have been thinking of something along the lines Jan brought up. Only instead of conferences and agendas, there would be lists. Anyone could create as many lists as they wanted to, and have any of them be public or private. When people create an item they may submit it to as many lists as they wish. The owner of the list would then either accept or reject them. People so inclined could view just the accepted items or all the submitted items, or I suppose just the rejected ones. There should also be what iTunes calls smart lists, for example everything on the science list except for the geology list. An official hierarchy would also be nice way to get things started. At the top would be EVERYTHING and COMPUTERS/HARDWARE/MACINTOSH/IBOOK would be near the bottom. When someone tried to submit something to the COMPUTERS list they would be asked to pick sub-categories. You couldn't get the hierarchy right before hand so there would need to be a way to split categories.
This response has been erased.
Another area for a new system to address is the "fixseen" problem. Fixseen sort of works, but it marks things as seen which haven't been. I would suggest having old-unseen, new-unseen, and seen items. By default only new- unseen stuff would be shown. When someone joins a list it might be a good idea to mark something other than the first and last items as new-unseen. Say all entries in the last week, or the 50 most recent entries. Another thought would be to allow responses to responses, not just the original item. This would change things from lists to trees, but might help keep discussions on track. Having a reader program running on client computers could be great, and if the system had an SQL interface, might not be that hard to pull off.
<DRIFT>
Picospan does offer "unseen", although it doesn't separate by date. I
regularly use "browse unseen" and "read unseen" to get caught up in a
conference. I wonder if a command like
read unseen since yesterday
works.
</DRIFT>
There's been some talk about using NNTP here and (somewhat bizarrely) in the retroGrex item. I'm kind of baffled by that idea. Yes, you could use a newsreader to read Grex. But every newsreader I've seen had an interface even suckier than picospan. Yes, you could have a client/server architecture, but what does that gain us? It'd only be a server for content, not for participation information. Most newsreaders keep records of what you've seen in local files, so if you try reading from more than one server, you'd lose your participation information every time you change servers. It's a client/server architecture, but it's not even as good as the fronttalk/backtalk combination. It really sounds like a plan that has not really been thoroughly thought through to me. It also contributes nothing to solving any of the problems I was addressing in this item. I don't know what prp is talking about with respect to "fixseen". It is supposed to mark everything in the conference seen. It is supposed to mark things seen that haven't been. Backtalk already allows fairwitnesses to configure which items will be new for users joining for the first time. At the moment, I don't think any fairwitness has bothered to modify this from the default first/last setting. Probably because right now it only works for users who first join the conference via backtalk, not those who first join it via picospan. Backtalk has about 20% of a capability to do responses to responses. I'm not enthusiastic about this being used in other than very limited ways. Deep branching makes it much more confusing to read a conversation.
This response has been erased.
jp2, why do you never answer any of my questions ?!
Personally, I quite like the grex / other-bbses model of topic-based conferences. If you can mimic that "automatic separation" with "lists" or whatever in one big conference, that's OK I guess. IMO newer isn't always better. Even if it *is* "better", it may not be for the individual, who is familiar with and comforable with the older. Even though I'm on Win2K, I still use Program Manager and File Manager because they better suit how I choose to organize and find things. I simply detest the Win95 "Start" button and "clutter the desktop" paradigm.
I like Jan's idea of "agendas" in #0, of getting away from the
current static model into something more flexible and less
hierarchical. Instead of a conference set maintained by a central
administrator and modifiable only with the administrator's
cooperation, why not a system in which administrators could create
"official" agendas (the equivalent of our current conferences),
but users could also create agendas by grouping existing items
and add new items to the group. I'm not sure that Grex has the
critical mass for a Slashdot-style rating system to be effective,
but I think that the flexible "agenda" approach has merit even
without that.
The user interface to all this could really look just like
Picospan or Backtalk - "join", "read", "forget", "fixseen",
etc. could work essentially as they do now.
Setups that give you something like this already exist in the blog
world. They're variously called "news aggregators", "rss
clients", etc. News sites or bloggers can "syndicate" their
sites, and a user can subscribe to any number of these using
appropriate client software. Have a look at http://bloglines.com
for a web-based client.
Frankly, I don't find the NNTP-based alternative that's been
suggested to be at all attractive. Part of the problem with
Picospan-style conference organization is its strict, inflexible
system of disjoint topical conferences, leading to dead-conference
syndrome, as Jan points out in #0. NNTP makes this even worse by
extending the hierarchy to arbitrary depths (anybody remember
alt.swedish.chef.bork.bork.bork?), so things can get fragmented and
lost even more thoroughly than in Picospan's single-level
conference hierarchy, *and* with NNTP we're still imposing a
centrally-administered structure over which individual users have
no direct control, which is another part of the problem.
For implementing the "agenda" concept, I think we should take a
close look at the RSS ("Real Simple Syndication") format and its
cousin format Atom. They're what is used to implement
"syndication" or "feeds" of news sites, blogs, and other websites whose
content is updated frequently. The idea is simple: A
news site (such as cnn.com) or blogger that wishes to syndicate
its content creates a web-accessible file in an appropriate format
(RSS or Atom) and publicizes its url. For example,
http://slashdot.org/slashdot.rss is the one for Slashdot. The
file contains a list of items on the site, and is updated whenever
a new item is added or an existing one modified. To "subscribe"
to the "feed", users enter this url into their client software.
The client keeps track of what items on the site the user has
already seen and displays any material that is new. So instead of
going to the Slashdot site to see what's new, you can subscribe to
their rss feed and be informed whenever anything new shows up.
Sound familiar? Firing up a news aggregator and checking on
what's new is a lot like running Picospan and doing a "browse new"
or "read new". The .rss file that supplies the feed is
functionally like Picospan's "summary" files, and the records kept
by the client are like Picospan "participation" files. The
difference is that RSS is an open, non-proprietary, widely-used
format.
I now use bloglines.com to keep track of a number
of news sites and blogs, and the left-hand frame of their web
interface looks a lot like the output of Picospan's "check"
command (10 new items in Slashdot, 25 new items in The Register,
etc.) To access the new items in a particular site, I just click
on its name and item summaries show up in the right hand frame.
When I click on a summary, it takes me to the actual website and
displays the material.
The RSS file that supplies the feed doesn't even have to be on the
same website as the content being fed; it just has to be kept in
sync with changes on the website. I know of some "bootleg" feeds
not under the control of the site that supplies the content.
So one way to implement agenda-based conferencing on the Next Grex
would be to have the conferencing software maintain an RSS (or
Atom) file for each item and each agenda. Users could "subscribe"
to agendas (the equivalent of "join") or to individual items.
A user-created agenda could be implemented as a world-readable
RSS file in the user's web directory. A user's "cflist" would
be a list of RSS files, and could be a mixture of official system
files (e.g. "politics") and user-created ones
(e.g. "remmers-list-of-weird-items-on-various-topics").
If we use RSS as the basis for conference structure, folks could
read Grex material using any news aggregator (e.g. "bloglines"),
which would make Grex material more accessible to a wider
community. To post, of course, a person would still have to log
in via the backtalk or tty interface.
RSS alone probably wouldn't give us all the functionality we'd
want (e.g. filtering individual users), so Grex's homegrown
conferencing software would have to implement those in addition to
RSS support, should we choose to go the RSS route.
Whether we go with the "agenda" paradigm and RSS, or with
something else, I do think we should move in the direction of
employing open, widely-supported standards and away from
proprietary formats, especially those not under our control.
Could BackTalk be taught to incorporate rss data so that it functions as both an aggregator and the actual conference client interface?
Cool. I need to read up on rss. That certainly has applications. Backtalk is open source. In theory, anything can be done with it.
I should note, that with the proposals I've entered here, I'm not really sure that Backtalk is the right vehicle. If the changes get radical enough, and entirely new program might be a better choice. I'm not thinking on that level yet. First question is *what* we want to do.
Re. 24: Agendae, you mean.
moderation is an atrocious idea for grex.
The potential advantage of a client program is speed. I like the backtalk interface better than the picospan one, but I wind up using picospan because it is faster. There is also no reason the client couldn't keep the server up-to-date on participant information. In essence the client would be a cache and display program. As to the "fixseen problem", really there are two. The minor one is that it does indeed mark things as seen. Leaving no way to look at the unseen stuff later. Now if it marked things as something else, say skipped, you could go back later and see what you missed. The major problem is the need for Fixseen and conference restarts. Picospan and Backtalk tend to bombard new participants with lots and lots of old stuff. There may be no perfect solution to this, but I have two ideas. - Present items so that the one with the most recent response goes first. This would tend to direct people to the most active stuff. It might also get some items to end sooner, cutting down on ones with hundreds and hundreds of responses. - When presenting an item with tons of unseen responses, at first display only the ten most recent, or maybe as many as add up to 6KB, or whatever to stop the deluge.
In Picospan you can type "postpone" ("po" for short) to skip something
and leave it marked as unseen.
Actually, in picospan items can have three different states - seen, new,
and unseen. Then you first join a conference the first and last items
are marked "new" while the rest are "unseen". "Unseen" items are not
normally shown when you do a "read new". You can do "read unseen" to
see both "unseen" and "new" items. However, if at some point after you
first joined the conference an "unseen" item gets a new response, then
the entire item becomes new.
There is nothing wrong with the "fix seen" command - it does exactly
what it is supposed to. Paul however seems to want a fourth state for
items to be in "skipped". I guess you could mark items as "skipped" and
then they wouldn't come up unless you did a "read skipped" at some later
date. This is different than the "postpone" command, where the item is
new again the next time you read the item.
I suspect that something like this could be accomodated if we did the
agenda thing - you'd just create a private agenda containing items you'd
like to come back to later but don't want to read now.
I have a file of notes on item types somewhere. It was part of a scheme
for automating restarts and making better choices about what to show new
users. It had to do with flagging different items different ways. One
way to flag an item would be as a "rolling item". Examples of rolling
items are the "why are you happy" item or the "vanity plate" item. When
you read a conference for the first time, you'd see only the item text
and the 20 most recent responses to a rolling item. (You could, of
course, go back and see the rest if you wanted.) On the other hand, for
an item where someone enters a newspaper article and people discuss it,
you probably don't want this behavior.
Note the "rolling" flag would be an attribute of the agenda, not of the
item. So the same item could be flagged as rolling in one agenda and
non-rolling in another. Restarts would also be modified. I see three
possible restart models for agendas:
- Periodic restarts, possibly automated, like agora1, agora2, etc.
- Archive. When items are removed from the "petunias" agenda, they
get placed in the "petunias-archive" agenda.
- None. Items removed from the agenda just vanish. Actually they
probably get placed on a "deadwood" agenda which automatically
catches any item that is on no other agenda.
If you do restarts, you should be able to flag items as persistant.
These items would automatically be carried over into the new version of
the agenda when you restart, retaining the same item number within the
agenda. Then new version could be just a link to the old one, or it
could be a new copy. For a rolling item, probably the last N responses
would carry over.
Biggest issue with agendas would be how to handle the posting of new
items. I think there would be different schemes at the option of the
agenda organizer. On any given agenda, the organizers could define the
set of users who can add items (either new items or linked items from
other agenda) to the agenda. At one extreme, anyone could be allowed to
insert items, at the other extreme maybe only the organizer. An
in-between solution would be to have a separate "petunias-new" agenda to
which anyone could post, then allow only the agenda organizer to move
things from there to the "petunias" agenda. Readers could read either
or both.
Plainly there needs to be a limited hierarchy of agendas - within the
petunias agenda we could have petunias.new, petunias.archive,
petunias.1, petunias.2 etc. All would share the same set of organizers.
For "restart models", I think the archive one would work best. Back to the idea of rating responses and thresholds, I think this could work well. It could be cumbersome to give a rating for every list/agenda which contains the response, so one overall rating would have to do. The fact that different people would give vastly different ratings would not be a problem, it would be an advantage. Of course the system would have to do some sort of adaptive filtering to make things easy enough for everyone. As I remember John Holland's 1975 book describes something very much like this. I think it was a system to find articles of interest, but sadly my copy got lost during a move. I did find the title for it and some others: BF441.I53 1986 Induction : processes of inference, learning, and discovery QH546.H64 1975 Adaptation in natural and artificial systems : an introductory analysis with applications to biology, control, and artificial intelligence QH546.H64 1992 Adaptation in natural and artificial systems : an introductory analysis with applications to biology, control, and artificial intelligence QA401.H527 1998 Emergence : from chaos to order TJ217.H64 1995 Hidden order : how adaptation builds complexity The Slashdot model only lets someone enter ratings on relatively rare occasions; they call it being a moderator. That's fine if you want to come up with a single rating for use by everyone. But if you want to predict individualized ratings, the more ratings you get from someone the better.
Can you think of some way not to mark items with new response from twits as unseen, or is this not a problem in backtalk?
That's what I've requested but the cookiecutter answer is always "the bbs program only looks for file modification date to report a new response" rather than "we can look into this and maybe make the code change." I'm not demeaning our staff, but that is the situation as I understand it.
I've changed my mind on how items should be ordered. I now think the item with the highest predicted score should go first. This assumes there is score pridiction of course. Also it would be nice if entering a new item was as easy as entering a response. "Respond or pass" sort of encourages people to respond, but there is no similar prompt for Enter. Backtalk provides a box for new responses, but not one for new items. An "Add as new item" by the "Add Response" one would be nice.
TROGG IS DAVID BLAINE
You have several choices: