Discussion:
[PubSub] pep wishes
Candide Kemmler
2010-08-15 11:21:15 UTC
Permalink
Hi,

I'm very interested in the PEP xep, in particular in combination with the User Activity XEP. However, I have a few remarks about the specification as it is. Also, maybe it is just me, but I can't seem to find any meaningful implementation of PEP among existing clients and servers. The best I could do is with tigase and psi: I enabled the "Publish tunes" in the psi client and I could indeed see that the xml was pushed to another client in the XML console. But that's about it: an XML message in a debugging console. I think pep is pretty cool and I wonder why it's not given a bit more attention from implementors.

Now to my remarks:

First off, it is my feeling that providing a fixed activity list, even if it can be supplemented by way of a catch-all <other/> category, is very arbitrary and that many people might feel very reluctant to log their activities as dictated by a such an authoritative list. Further organizing that list in a two-level hierarchy is also very constraining: why wouldn't people want to organize their activities in much deeper hierarchies? I had a look at onesocialweb's attempt to use activitystreams for that, but that format seems to be bound to the same limitations.

Now to something more important: as I understand it publishing activities is an all-or-nothing option: subscribers can optionally filter out activities they are not interested in, but I cannot myself choose which activities I'd like to share with a specific friend or group of friends. That's too bad: I was thinking of activities as a way to share statistics - sports statistics for example, and I don't want to potentially bother everyone with these statistics (or force them to filter them out). Another use would be for me to share some bad habit, like alcool, smoking or drug use for example, while seeking support from a (potentially anonymous) group of people who share the habit. In that case, I obviously wouldn't even want others to know that I have that kind of behaviour.

My third remark is on statistics: aside from the type of activity, there's a lot of additional info that users are likely to be wanting to track, if they bother to log their activity in the first place: let's mention: duration of an exercising session, amount spent on a meal, title of book being read, etc... It would be great to allow people to add such information.

I already have some ideas on how to address some of these issues, but as suggested on jdev at conference.jabber.org, I will now stick to just mentioning the "problem I'd like to solve rather than suggesting how it might be solved".

best,

Candide
Dave Cridland
2010-08-16 14:00:05 UTC
Permalink
Post by Candide Kemmler
I'm very interested in the PEP xep, in particular in combination
with the User Activity XEP. However, I have a few remarks about the
specification as it is. Also, maybe it is just me, but I can't seem
to find any meaningful implementation of PEP among existing clients
and servers. The best I could do is with tigase and psi: I enabled
the "Publish tunes" in the psi client and I could indeed see that
the xml was pushed to another client in the XML console. But that's
about it: an XML message in a debugging console. I think pep is
pretty cool and I wonder why it's not given a bit more attention
from implementors.
I think it depends on the client. I personally find Gajim is doing
very well here, publishing and displaying information as the "rich
presence" it was intended to be.
Post by Candide Kemmler
First off, it is my feeling that providing a fixed activity list,
even if it can be supplemented by way of a catch-all <other/>
category, is very arbitrary and that many people might feel very
reluctant to log their activities as dictated by a such an
authoritative list. Further organizing that list in a two-level
hierarchy is also very constraining: why wouldn't people want to
organize their activities in much deeper hierarchies? I had a look
at onesocialweb's attempt to use activitystreams for that, but that
format seems to be bound to the same limitations.
I think "machine readable" is the constraint here. If you've an
alternate form that manages to provide machine processing and yet
allows greater expressivity, this would be interesting. Since I gave
up, I no longer have the major problem of not being able to say I'm
drinking beer *and* having a smoke, though, so I'm not so concerned...
Post by Candide Kemmler
Now to something more important: as I understand it publishing
activities is an all-or-nothing option: subscribers can optionally
filter out activities they are not interested in, but I cannot
myself choose which activities I'd like to share with a specific
friend or group of friends. That's too bad: I was thinking of
activities as a way to share statistics - sports statistics for
example, and I don't want to potentially bother everyone with these
statistics (or force them to filter them out). Another use would be
for me to share some bad habit, like alcool, smoking or drug use
for example, while seeking support from a (potentially anonymous)
group of people who share the habit. In that case, I obviously
wouldn't even want others to know that I have that kind of
behaviour.
Well, the activity node *can* be filtered out to only specific
people, but it's not often a feature available in the server -
changing the access model and configuration of the PEP node will
allow this.

It won't, however, allow anonymous activity information - for that,
you really need to send the events via some anonymizing system, like
a MUC.

I'd also note that specialized information really means a specialized
client (or rather, one that understands the PEP node you're trying to
use), and PEP makes that easy to do.
Post by Candide Kemmler
My third remark is on statistics: aside from the type of activity,
there's a lot of additional info that users are likely to be
wanting to track, if they bother to log their activity in the first
place: let's mention: duration of an exercising session, amount
spent on a meal, title of book being read, etc... It would be great
to allow people to add such information.
I don't think there's anything preventing you from adding extra
information there, except that you may well not want to receive all
that information.

I do quite like the notion of advertising the book I'm reading, for
instance, but I wouldn't put that in User Activity, I'd put that
somewhere else - much like User Tune isn't bundled into Activity.

Dave.
--
Dave Cridland - mailto:dave at cridland.net - xmpp:dwd at dave.cridland.net
- acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
- http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade
Candide Kemmler
2010-08-17 08:30:00 UTC
Permalink
Post by Candide Kemmler
I'm very interested in the PEP xep, in particular in combination with the User Activity XEP. However, I have a few remarks about the specification as it is. Also, maybe it is just me, but I can't seem to find any meaningful implementation of PEP among existing clients and servers. The best I could do is with tigase and psi: I enabled the "Publish tunes" in the psi client and I could indeed see that the xml was pushed to another client in the XML console. But that's about it: an XML message in a debugging console. I think pep is pretty cool and I wonder why it's not given a bit more attention from implementors.
I think it depends on the client. I personally find Gajim is doing very well here, publishing and displaying information as the "rich presence" it was intended to be.
Unfortunately, it turned out to be a real pain to try to run Gajim on my Mac, so I will have to trust your word for it :(
Post by Candide Kemmler
First off, it is my feeling that providing a fixed activity list, even if it can be supplemented by way of a catch-all <other/> category, is very arbitrary and that many people might feel very reluctant to log their activities as dictated by a such an authoritative list. Further organizing that list in a two-level hierarchy is also very constraining: why wouldn't people want to organize their activities in much deeper hierarchies? I had a look at onesocialweb's attempt to use activitystreams for that, but that format seems to be bound to the same limitations.
I think "machine readable" is the constraint here. If you've an alternate form that manages to provide machine processing and yet allows greater expressivity, this would be interesting. Since I gave up, I no longer have the major problem of not being able to say I'm drinking beer *and* having a smoke, though, so I'm not so concerned...
IMO User Activities can be interesting for instrospective behavioral analysis. I mentioned a couple use-cases: substance abuse, eating disorders or more commonly, exercising... There are user activities that are potentially fascinating to track. But that would probably need some marketing, i.e. I don't think that current generic jabber clients are going to make a very good job at explaining how to best take advantage of that feature. Nonetheless I find that the decentralized nature of xmpp makes it a perfect fit for privacy aware users.
Post by Candide Kemmler
Now to something more important: as I understand it publishing activities is an all-or-nothing option: subscribers can optionally filter out activities they are not interested in, but I cannot myself choose which activities I'd like to share with a specific friend or group of friends. That's too bad: I was thinking of activities as a way to share statistics - sports statistics for example, and I don't want to potentially bother everyone with these statistics (or force them to filter them out). Another use would be for me to share some bad habit, like alcool, smoking or drug use for example, while seeking support from a (potentially anonymous) group of people who share the habit. In that case, I obviously wouldn't even want others to know that I have that kind of behaviour.
Well, the activity node *can* be filtered out to only specific people, but it's not often a feature available in the server - changing the access model and configuration of the PEP node will allow this.
As I understand it, pubsub allows several access models for nodes, one of them being for example "whitelist". Yes, but that still means that everyone can _see_ the node, hence anyone would see that I'm tracking, let's say, my eating habits, and I don't want that.
It won't, however, allow anonymous activity information - for that, you really need to send the events via some anonymizing system, like a MUC.
I'd also note that specialized information really means a specialized client (or rather, one that understands the PEP node you're trying to use), and PEP makes that easy to do.
That is very clear.
Post by Candide Kemmler
My third remark is on statistics: aside from the type of activity, there's a lot of additional info that users are likely to be wanting to track, if they bother to log their activity in the first place: let's mention: duration of an exercising session, amount spent on a meal, title of book being read, etc... It would be great to allow people to add such information.
I don't think there's anything preventing you from adding extra information there, except that you may well not want to receive all that information.
I do quite like the notion of advertising the book I'm reading, for instance, but I wouldn't put that in User Activity, I'd put that somewhere else - much like User Tune isn't bundled into Activity.
Well then, that opens up for a whole infinite list of XEPs, one for every kind of activity. That's essentially the problem I'm trying to solve: IMO "Personal Eventing Protocol" should allow people to state all sorts of events that are affecting their lives, according to _them_. The key word here is probably semantics. There must be a way for users to create their own semantics for events they deem enough important for them to track. I'm thinking along the lines of _basic_ semantic web stuff, like: users should be able to create statement types, like say: "reading" [book_title] [book_author]? [isbn]?, or "ran" [distance] "miles", etc... then share the statement types so other user can use them as well if they want to.
Dave.
--
Dave Cridland - mailto:dave at cridland.net - xmpp:dwd at dave.cridland.net
- acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
- http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.jabber.org/pipermail/pubsub/attachments/20100817/71d11444/attachment.htm>
Dave Cridland
2010-08-17 08:48:37 UTC
Permalink
Post by Candide Kemmler
Post by Dave Cridland
Post by Candide Kemmler
I'm very interested in the PEP xep, in particular in combination
with the User Activity XEP. However, I have a few remarks about the
specification as it is. Also, maybe it is just me, but I can't seem
to find any meaningful implementation of PEP among existing clients
and servers. The best I could do is with tigase and psi: I enabled
the "Publish tunes" in the psi client and I could indeed see that
the xml was pushed to another client in the XML console. But that's
about it: an XML message in a debugging console. I think pep is
pretty cool and I wonder why it's not given a bit more attention
from implementors.
Post by Dave Cridland
I think it depends on the client. I personally find Gajim is
doing very well here, publishing and displaying information as the
"rich presence" it was intended to be.
Unfortunately, it turned out to be a real pain to try to run Gajim
on my Mac, so I will have to trust your word for it :(
Well, I think Psi does display things like Tune and Mood in places,
too.
Post by Candide Kemmler
Post by Dave Cridland
Post by Candide Kemmler
Now to something more important: as I understand it publishing
activities is an all-or-nothing option: subscribers can optionally
filter out activities they are not interested in, but I cannot
myself choose which activities I'd like to share with a specific
friend or group of friends. That's too bad: I was thinking of
activities as a way to share statistics - sports statistics for
example, and I don't want to potentially bother everyone with these
statistics (or force them to filter them out). Another use would be
for me to share some bad habit, like alcool, smoking or drug use
for example, while seeking support from a (potentially anonymous)
group of people who share the habit. In that case, I obviously
wouldn't even want others to know that I have that kind of
behaviour.
Post by Dave Cridland
Well, the activity node *can* be filtered out to only specific
people, but it's not often a feature available in the server -
changing the access model and configuration of the PEP node will
allow this.
As I understand it, pubsub allows several access models for nodes,
one of them being for example "whitelist". Yes, but that still
means that everyone can _see_ the node, hence anyone would see that
I'm tracking, let's say, my eating habits, and I don't want that.
The problem is that nodes are discoverable, yes. What you need is a
configuration button that changes whether nodes are discoverable by
those without permission to use the node. I've argued that we need
something similar for MUC, too.
Post by Candide Kemmler
Post by Dave Cridland
Post by Candide Kemmler
My third remark is on statistics: aside from the type of
activity, there's a lot of additional info that users are likely to
be wanting to track, if they bother to log their activity in the
first place: let's mention: duration of an exercising session,
amount spent on a meal, title of book being read, etc... It would
be great to allow people to add such information.
Post by Dave Cridland
I don't think there's anything preventing you from adding extra
information there, except that you may well not want to receive all
that information.
Post by Dave Cridland
I do quite like the notion of advertising the book I'm reading,
for instance, but I wouldn't put that in User Activity, I'd put
that somewhere else - much like User Tune isn't bundled into
Activity.
Well then, that opens up for a whole infinite list of XEPs, one for
every kind of activity. That's essentially the problem I'm trying
to solve: IMO "Personal Eventing Protocol" should allow people to
state all sorts of events that are affecting their lives, according
to _them_. The key word here is probably semantics. There must be a
way for users to create their own semantics for events they deem
enough important for them to track. I'm thinking along the lines of
_basic_ semantic web stuff, like: users should be able to create
statement types, like say: "reading" [book_title] [book_author]?
[isbn]?, or "ran" [distance] "miles", etc... then share the
statement types so other user can use them as well if they want to.
No, PEP is a very simple framework for allowing additional streams of
events about (typically) a person.

You want, firstly, something closer to pubsub-onna-jid - ie, you want
configurable nodes, access-models, etc.

Secondly, you then need to establish a well-known node for each
category of information. At the least, you need this to establish
differentiated access control, but you also need it to allow
selectivity of the information stream by the consumer.

You seem to be arguing for an additional method to do this beyond
PEP/PubSub's innate ability.

Dave.
--
Dave Cridland - mailto:dave at cridland.net - xmpp:dwd at dave.cridland.net
- acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
- http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade
Loading...