Tutorial: Getting Help

The general idea is as follows:

<you> help help hlep1!! I need help plz!
<notyou> Dude, just ask your question.
<you> I use sniffleblob version archangelgabriel and when I try to connect to the pentagon it shows me pictures of cheese.
<notyou> Ok, what platform are you on?
<you> Windows. IE doesn’t have this problem, I hate you.

It happens every day. People have issues that need fixin’ and they go to IRC or a forum or sometimes their local strip club, and start asking people for help. Sometimes they get it, and sometimes they don’t. This happens a lot with Open Source because the users are the programmers and we all know what it’s like to want things to work when they don’t… so we tend to devote time to solving problems (which was the point of making software in the first place).

But a lot of times the users don’t really get the fact that aside from a few developers, everyone else is working for free, because they want to. While we advocate using free software, we aren’t forcing anyone to use it. There’s a good and a bad way to get help.

The rules of getting help are:

1. Ask your question, provide as much information as you can, as prompted. If you’re really psyched about getting help you can visit pastebin.ca or another paste site and put a ton of info there (especially if you know or believe it to be relevant to your question/problem).

2. Don’t flood, try to keep things short and sweet. Yes, more information will probably be needed, but you don’t hold a wrench and hammer at the same time. Use a pastebin.

3. Be calm. Be respectful. This goes both ways, but even if the people helping are being patronizing toward you, if they’re still helping then try to forgive them and let it go. Everyone has bad days, but people that hang out in help channels tend to be masochists (or at least feel like they are sometimes). You want them to help you, so try to give their personalities the room and their brains the information to let that happen.

4. Try to understand the problem. There’s nothing that exists that isn’t understandable. Your data didn’t just eat itself, and the address bar isn’t in Chinese for no good reason. There’s a cause and there’s a solution in that cause. If your arm is bleeding, the cause is the lack of skin. The solution is to buy more skin (or alternatively stop being so anal about having your blood stay inside).

5. Open a text editor. Hit up google and start trying to diagnose it yourself first. Is there an error message? Try googling for pertinent words from the error message or a symptom phrase along with the application name and your OS name/version. For example, “Firefox windows toolbar shake” yields a bunch of links dealing with an existing bug in firefox (not just on windows if I remember correctly). There’s no error, but “shake” is a symptom phrase for that problem.

6. As you find information via google, copy the link and a brief summary of the information there. If you use tabs you can just keep those open instead of notepad, either way… have some sort of summary of your progress in the problem.

7. When you do visit forums/IRC add that information and try to widdle away at the problem as you find plausible solutions.

8. Take your solutions and, one at a time, see if they work. Repeat until problem is solved.

But really, the best thing you can do for help channels is narrow down your problem beforehand. If it’s a browser, turn off all plugins/addons/extensions you can. Start the browser fresh. If applicable start it with a new, clean profile or in safe mode.

If it’s a music player, start it without a playlist, without any visualizations or other plugins or modules loaded.

You want a base to start from, and see if the problem exists there. Simple as possible. If it does exist, then you go simpler. If it doesn’t, you go more complex until it does. Try turning on one plugin at a time, and only one on at a time. If it never appears then try combinations.

If it does happen in your base case, try to determine when and why. Start the application over clean and repeat the actions that cause the behavior. Try to remove steps where possible each time until you know the basic things that cause the behavior.

Okay, this post is a mess. Sorry…