By day, I’ve been learning my way around the awesome Telepathy framework as part of my work with Collabora. By night, I’ve been busy hacking away on Yelp 3.0 (which, I don’t mind telling you, will rock). And somewhere in between, I’ve been contemplating how to make Yelp telepathic.
Here’s the general notion: When the help just isn’t helping you, you’d be able to connect to Live Help, which would be something like a chat room, hopefully populated with people who want to help. The Live Help chat would be attached to your Yelp window. Other users would be able to see what document you’re looking at, and send you pages which would open in your Yelp window.
The Live Help channel would also maintain a list of comments made about pages. So if somebody asks a damn good question, somebody could write something up in a comment on a page of the help document. As soon as you connect to Live Help, you’d get all the comments stored in the channel for the document you’re viewing.
This is a very rough idea right now. There are tons of technical and social problems that would have to be solved to make sure it works well. I’m curious if people have any thoughts, opinions, or criticisms. (And, by the way, we could totally extend this functionality to developer documentation as well, which I think would be awesome.)
Great Idea, I propose an xmpp server dedicated to it rather than connect to current irc channels which may not be used for help purposes but more for development and social purposes. That way it would be kept clean.
Great way of getting people to notice the help documents though. +1 from me 😀
trettle, yeah, that was the notion. I don’t think we’d get much more than a simple chat out of IRC. Stuff like persistent page comments will probably need special server-side support. With XMPP, we should be able to add the extra functionality on cleanly.
Google Wave?
I suggest that there is some way of recording stats, so you can see which questions are asked the most. I think this would great to use as a tool to see where the actual documentation is lacking the most, so that those area can be improved. Hence, this would be beyond just recording comments.
Additionally, a system like this would probably need some sort of checks and balance system where people can know they can trust the other person helping them and also to keep abusers out (i.e. someone who’s really rude and brings down the community).
Lastly, I think this would be a great hook for people to get involved in the community and help work on documentation, so I’m not sure if this could make that process easier where someone can talk to a real person live and get mentored every now and then about documentation, so that they can help.
XMPP might be interesting, true, but also Open Collaboration Services would make a lot of sense:
http://www.freedesktop.org/wiki/Specifications/open-collaboration-services
Didn’t Ximian try something like this back in the day?
I was looking at doing something similar with KHelpCenter, but not as elaborate as you have thought out. I really like this idea. I was trying to figure out the best way to do the commenting stuff, then Google released their side wiki thing which is pretty darn similar to what I was thinking, but for the doc browser.
What with l10n issues?
Kinda reminds me of those MSDN document pages, myself. Those don’t have live chat though…
MSDN Live?
Really great idea,
I filled a related bug for devhelp some time ago: https://bugzilla.gnome.org/show_bug.cgi?id=580246
Also, there are some related work here:
http://live.gnome.org/LiveDocumentationEditing
and here
http://live.gnome.org/DocumentationProject/StatusTracking
Regards
Have you considered setting up a wiki so that everybody can write the help online, in addition to posting helpful comments? I reckon communities can be far more efficient in that regard if the cost of editing is low – especially if we want to address comments that were made by modifying the docs.
Eric, great comments, thanks. We definitely need to be careful of asshats ruining it for everybody else. Maybe we just need semi-active moderators with kick powers. I was contemplating having some sort of “thanks” system, where users could gain thanks points when they help people. I can’t think of any way to make the system not gameable though.
Henri, that looks interesting. I’ll give it a read. Is anybody using Open Collaboration Services right now?
Alex, well yes, yes they did. But AFAIR, it was really just a stripped down IRC client that went to a pre-defined channel. And that’s not bad on its own. It can mean users who otherwise have no idea what IRC is can still find your IRC support channels. But I’m trying to think just a bit bigger. I’d be interested to hear about people’s experiences with Ximians chat thing though.
nixternal, the big problem with comments I haven’t figured out how to solve is how to keep them from getting stale. Let’s say you add a warning in a comment. The docs team sees this comment that thinks it’s worthwhile, so they incorporate it directly into the help. Now the comment is redundant. Maybe we could have a way for priveleged users to remove comments (might be necessary anyway to remove abusive comments or spam). Or maybe comments could just auto-expire after some set amount of time.
Maciej, very good question. I was thinking the same thing myself before bed last night. For comments, I don’t think it’s feasible for us to translate all users’ comments. I tend to think of comments as stopgaps. That is, if a comment is worthwhile, it’s worth incorporating that information into future versions of the help. At the least, it’s no worse from a localization perspective than the multitude of support forums one finds on the Internet.
For the chat itself, we could have separate channels for different languages. This only works if a language has enough users to keep a channel alive. The big problem I foresee is that it will be hard for the docs team to incorporate non-English comments back into the main help.
This sounds familiar… go install Ximian Desktop 2 (though I guess the IRC server is no more, so monkeychat won’t actually do anything).
I’m guessing that your thoughts were leaning pretty much in the same direction of implementation (though hopefully you wouldn’t be hacking up xchat, but instead using telepathy). It really didn’t work out all that well in XD2. There were a few people who hang out helped people, but there wasn’t really any incentive to do it. Maybe if GNOME had some paid support staff, and if there was a way for downstreams to integrate it into their systems, and their support staff could use it (so users of Ubuntu would get help from Ubuntu people, etc…).
Man, everybody’s all over the MonkeyChat. To me, the chat is the carrier for what I think is more interesting, which is the help viewer integration. It’s not mind-numbingly innovative stuff, but I think the technical side is interestingly novel. It’s combining a lot of old ideas in a new way.
The social side is much harder. Rodney, thanks for your input on IRC. A lot of thought would have to go into how we ensure there are regular (and knowledgeable) helpers, and that users actually get responses to their questions.
And I don’t develop Gnome-only solutions. The way I was envisioning it, help pages would need to declare a help channel. So if, for instance, the Gnumeric community wanted to provide live help, they could set up their own channel and point their help pages to that. Or if there were language-specific channels, the translated help pages would point to them.
That said, I think it would be a real shame if Ubuntu patched all our documents to point their users to their own channels. That’s very divisive, and having major distros do that would kill any upstream help-community efforts.
I don’t know what all the Ubuntu side does to the docs and patching. Hopefully they do like we do on the Kubuntu side. We keep the KDE docs as they are and we just add out docs that work together.
Now, with that said though, and I don’t know how GNOME is, but I know in KDE it gets annoying when distros patch and it is their fault. There are quite a few bugs like this in KDE Bugzilla, and I am willing to bet the same goes for GNOME. See, this would be a tricky part, because a part of me says yeah, have Ubuntu patch to point to #ubuntu and the other half is no, don’t patch, keep them going to #gnome or whatever.
Figuring this whole thing out will be a blast though 🙂 How about working with the OpenDesktop social API that they put out and have been having the competitions for? That might be something to keep in the back of your mind too during the planning phase.
This is a neat idea, Shaun. The part that concerns me about the live help is the, “hopefully populated with people who want to help,” part. Unless this was done via IRC, I think we’d have a rough go of it. As it is now, getting live support in IRC can be pretty hit-or-miss, and new users are prone to join a channel, ask a question, and then leave if they don’t get some kind of direct response within 30 seconds or so.
Moreover, I think asking people who normally idle/assist users in IRC to also idle/assist users in another real-time messaging format might be a tough nut to crack.
As for the comments and such . . . It sounds interesting. I agree with others’ concerns about how to handle comment spam and internationalization issues. As a point of reference for help feedback, it might be worth looking at some sample Gmail help topics: http://mail.google.com/support/bin/answer.py?answer=6593 You’re being all visionary and cool, though, while I’m just saying, “Let’s see what other folks do.”