Something that's been on my mind recently was the process of troubleshooting. Specifically troubleshooting while asking for help.
I came to think along these lines because I had been going through my many thousands of emails. No, let me explain this another way.
I take great pride in direct contact with small developers and webmasters, and with troubleshooting and helping troubleshoot. I love improving documentation and creating tutorials. I urge to fix broken links. This is what attracts me to wikis. I much prefer anonymous wikis, but I do sometimes sign up just to fix something small. A wiki lets me make a docs change without needing to contact a webmaster.
And since I'm an information archivist, I tend to keep a backlog of notes including old emails. This also means that I have a collection of various aborted conversations about spelling, links, bugs, usability discussions etc. Either I or the other party get tied up or distracted or whatever happens, and the email becomes lost in a huge archive.
And so when going through those many thousands of emails, I've found the occasional stray email or conversation that was aborted before a problem was solved. This really distresses me.
One thing that I really appreciate about directly contacting an author is that they take the time to work with me. If I'm asking for help, I try to waste as little of their time as possible by doing as much as I am able before I even think to contact them. This is the essence of asking questions the Smart way (Oh, and also check out RFC 1855). Even if I'm convinced I found a bug, I still troubleshoot as much as I am able before reporting it. I've learned about this through experience and a lot of thinking about the experience of troubleshooting.
But when I started coming across those old emails, I realized that my perspective isn't right yet. While I've learned to spend time before asking for help, I've only just now started to accept that I need to set some time aside after the fact so that I can perform additional troubleshooting.
Setting time aside is quite impossible, so what I do have to admit to myself is that when I have a problem that's important enough for me to troubleshoot it and then ask for help, at some future point in time I have to be willing to accept the responsibility to that problem, and allot more time if I am asked to.
This also goes for when I offer advice to someone else. I am committing myself to work with them to help with the particular bit of advice I gave them. I don't need to stick with them through their entire troubleshooting process, just whatever I suggested. So if I'm asked for clarification, I need to be willing to give a little more time and effort to clarify, or my original help will have been largely useless.
So now that I'm going through my backlog of emails, I'm spending a little more time to wrap up any old issues. I've been revisiting old bug tracker tickets and re-testing things whenever I could. Now whenever I have a problem, not only do I always self-troubleshoot and provide the steps I followed when I ask for help, but I make sure that the problem is important enough for me to spend more time on it later.
So this means that I don't usually ask for help on multiple broad subjects all at once. Even though many things bother me at once, i wouldn't be able to work with the assistance to all those separate issues in a timely manner. I just troubleshoot one or two things at a time, and spend the time before and during the troubleshooting. I also spend time afterwards, to write up proper bug tickets or write the solution.
Mind you, sometimes I slap my forehead with the amount of work I do to self-solve before I contact a developer, only to be told "oh, that's been fixed in the beta." I'm slowly learning to smile and shake my head when that happens.