Linux Knowledge Base Proposal


One of the main complaints about Linux is the state of tech support. Often based on empyrical, rather than scientific knowledge, and in a state of disorganization, troubleshooting information regarding Linux is hard to find and, often, hard to use.

What we’d like to do is provide the worldwide Linux community with a tool similar to, for instance, Microsoft’s Knowledge Base (the name has been shamelessly stolen). Visit the MKB to see what I’m talkin’ about here.

It’s probably superfluous to provide scenarios, but this just happened to me today; I upgraded my home computer to Red Hat 5.0 and I have two problems. They involve AfterStep and diald, both very commonly used programs, yet I searched the web for a solution and found nothing.

It happens very often, you have a problem with Linux and the solution isn’t handy. A lot of problems can be solved by digging through news articles at dejanews, or actually perusing newsgroups, or doing exhaustive searches on Altavista.

I can imagine, if I were new to Linux and someone told me “answers are there, but you’ll have a hard time finding them when you have a problem”, I’d probably back off from using Linux and ending in the evil clutches of NT. Or maybe even Solaris. A major point in choosing any of these is that support is readily available from manufacturers. Even more so, Microsoft’s KB, the inspiring idea for this proposal, is a free resource. I’ll probably get killed for saying this, but even if I don’t legally own Word (don’t look at me, I use LaTeX), if I have a problem I can visit the MKB and, quite likely, get a solution to my problem.

So the proposal is as follows: create a free resource on the Web which contains solutions to problems in Linux. Notice I’m not constraining it to most commonly seen problems; we want this to have as wide a scope as possible. So it can range from such trivialities as “I killed LILO with Win95, how do I get it back?” to very specific things, or even really difficult and guru-like questions.

How is this different from the current crop of (excellent) FAQs, HOWTOs, and other resources? first of all, this is, specifically, a problem-solving resource. It’s not tutorial-like the way howtos are. In fact, for a given problem, we can give a quick, 5-step solution to get things back up and running and then say “now that your system is working again, relax, and go read the pertaining HOWTO so that you learn what happened, how it was solved, so that it won’t happen again”. It’s meant to be very specific. A lot of people get discouraged when they say “i’ve got a problem” and are sent to read documentation for 5 hours.

Second, and most important, it’s centralized. Despite the efforts of the LDP and others, resources are still scattered all over the net. LKB centralizes and consolidates a search engine and a catalog. A lot of our answers might contain pointers to external resources, but the LKB contains at least a minimum amount of info to send the user on the right track. No “go read the howto” answers, but “a quick solution is to blah blah blah blah, and if you need full details on all the stuff you did, go visit the howto at blah blah”.

Here are some thoughts on implementation.

Taking on our role model again, I can think of a search engine that can look for information based on different criteria: article number (so people in mailing lists could just refer a troubled poster to “article a45f334 on LKB”), troubled subsystem/program, topic (administration, X, configuration, installation, plain_kewl_tips), keywords, and so on.

This will obviously start out from a few topics we can collect from current FAQs and mailing lists. The idea is to make it very easy to both post a help request and answer a request, via forms.

We could have a place where a user submits a help request. The user is asked to provide as much information about his problem as possible: versions of all programs involved, specific error messages, what exactly is the user trying to achieve, and so on.

help requests would be “moderated”. A fella (or group of) would have to check all incoming requests, basically rejecting stuff like “pppd doesnt work, what do i do?”. These are returned to the sender with, possibly, a generic “give us more info plz” message. This way we educate users into this particular bit of netiquette.

All approved help requests go into a place where they can be checked by other people. If someone knows the answer and feels like posting it, they are welcome to do so. All answers are also checked for completeness; we don’t want to “hey, I think if you twiddle this it might work, I dunno”. For that kind of “trial-and-error” we should encourage potential helpers to contact the troubled user by email, work out a solution in private and then, if they feel like it, post a completed solution into the KB.

A nice feature would be like a “message board” where interested users could exchange oppinions on solving the problem.

The idea is that when a full solution is posted, the original troubled user is notified via email.

Another nice feature would be “signing up” for an unanswered question, so that you can get the solution when it’s posted.

Anyway, after this, the answer gets added to the database. This way the thing grows. It’s entirely user-supported; some might think that “hey, why should I share my problem-solving skills for free when I can charge for that”. True, however the LKB is a free resource for anyone, so even those gurus will probably use it some day too. To me it fits well into what’s considered “kewl” on the net; all we get is the satisfaction of having helped someone solve a problem. That would be another user who will be happy using Linux, instead of cursing at the damn thing, fdisking and installing NT. Ain’t that what we want? 🙂

Here’s another point I think is both interesting and important. I’m currently maintaining the FAQ document for Mexico Linux Users Group. A problem we have is that a lot of the answers are somewhere, but are of little use to a lot of the group’s members because reading english is not easy for them.

I’d like to see the LKB contain translations of answers to several languages. This would make it a useful resource for more people, and would be unique because I don’t think anyone else has something like this.

The way I think this could work is by having the main “articles” in english and having volunteers who would translate them into other languages (spanish and french come to mind, there are others I’m sure ;).

Of course submissions in other languages are accepted. We would then need to have a volunteer translate from language into english, and from that all the other language versions would be obtained.

This multilanguage thing involves a lot more work so I’m thinking we could develop all the required infrastructure but not start doing the translations until we’ve ascertained the whole LKB idea is functional.

OK so does this spell the end for commercial support providers? I don’t know, you tell me. It’s about the only reason why I think this might not be a good idea. But I think not; there’s a big difference between an inherently free and no-guarantee resource and a commercial provider with a full commitment. Even more so, the LKB is a free resource, so nothing stops commercial support providers from getting help from the LKB.

This is a proposal, as such it’s subject to changes and ideas and shooting-at. Here are some ideas I’ve received.

A suggestion I received calls for reducing the amount of “moderation” the LKB should have. His idea is basically to let everything through, but provide the necessary infrastructure so that anyone can post questions, browse through pending questions, provide new answers and modify existing answers. He bases this in a pair of important assumptions. First, not a lot of people will want to maliciously use these facilities to sabotage the LKB. Second, “expert” users who peruse the LKB will “educate” beginners who post inappropriate questions, which will eventually lead to better “netiquette” from these beginning users. A lot of these “expert” users will probably do the job better than a few “moderators” who might quickly become tired and take on a negative attitude towards “beginning” users. I’m at