Jak mądrze zadawać pytania?

Zaczęty przez Duch, 22 Sierpień 2005, 16:48

0 użytkowników i 1 Gość przegląda ten wątek.

Duch

Wstęp

W naszym świecie rodzaj odpowiedzi, którą otrzymujesz na nurtujący Cię problem, zależy od sposobu, w jaki postawisz pytanie. Ten temat nauczy Cię, jak formułować pytania, aby otrzymać w pełni satysfakcjonującą odpowiedź.

Pierwszą rzeczą jaką należy sobie uzmysłowić jest to, że lubimy zawiłe problemy oraz dobre, zmuszające do zastanowienia się nad nimi, pytania. Jeśli nie przyjmowalibyśmy zawsze takiego podejścia, nie byłoby nas tutaj. Gdy dostarczysz nam jakieś interesujące zagadnienie do rozgryzienia - możesz liczyć na naszą wdzięczność; dobre pytania są bodźcem do działania, są jak miłe prezenty. Dobre zadania pomagają nam rozwijać nasze umiejętności i często odkrywać sprawy, na które nie zwracaliśmy wcześniej uwagi lub myśleliśmy o nich inaczej. "Dobre pytanie!" - jest dla nas szczerym i prawdziwym komplementem.

Powszechnie znaną opinią jest, iż reagujemy niechęcią lub opryskliwością na proste pytania. To czasem może wyglądać tak, że odruchowo oschle traktujemy i ignorujemy tych 'nowych'. W rzeczywistości tak nie jest.

Nie zamierzamy poświęcać swojego czasu na odpowiedzi ludziom niechętnym do samodzielnego myślenia - odróbcie więc swoją pracę domową zanim zadacie jakiekolwiek pytanie. Tacy ludzie są pożeraczami naszego czasu - zabierają go nam bez opamiętania, marnują każdą chwilę, którą moglibyśmy poświęcić innemu, bardziej interesującemu zagadnieniu lub całkiem innej osobie, która bardziej zasługuje na naszą odpowiedź. Tych pierwszych nazywamy "łajzami" ("losers" z racji historycznych wymawiane często jako "lusers").

Zdajemy sobie sprawę z tego, że jest wiele osób, które chcą korzystać z naszego oprogramowania i nie interesuje ich zagłębianie się w jego techniczne detale. Dla większości z nich komputer jest jedynie narzędziem - w dosłownym tego słowa znaczeniu - interesują się innymi rzeczami i żyją tylko po to by żyć. Rozumiemy to i akceptujemy, nie spodziewamy się, że każdego zafascynuje to, co nas. Jednakże nasz styl odpowiedzi przeznaczony jest dla ludzi, którzy jako tako interesują się tematem i gotowi są aktywnie uczestniczyć w rozwiązywaniu problemu. I to się nie zmieni. I nie powinno się zmienić - jeśli tak się stanie, staniemy się mniej efektywni w tym, co robimy najlepiej.

Jesteśmy (w większości) kimś w rodzaju wolontariuszy. Poświęcamy nasz wolny czas by odpowiadać na pytania, które momentami wręcz nas przygniatają ilością. Więc bezlitośnie musimy je filtrować. W szczególności ignorujemy pytania ludzi, którzy wydają się być łajzami, żeby znacznie efektywniej wykorzystać nasz cenny czas na pytania ludzi, którzy bardziej na to zasługują.

Jeśli twierdzisz, że taka postawa jest wstrętna, poniżająca, bądź arogancka, lepiej porzuć swoje uprzedzenia. Przecież nie błagamy każdego o wstąpienie do nas - jednak większość z nas chętnie powita Cię w naszym gronie jako równego sobie, jeśli tylko włożysz w to tyle wysiłku, ile tylko jest możliwe. Próba pomocy ludziom, którzy nie są skorzy pomóc samym sobie jest bezcelowa. Jeśli nie możesz pogodzić się z takim rodzajem "dyskryminacji", proponujemy Ci zatrudnić kogoś i płacić mu za techniczne wsparcie zamiast prosić nas o bezinteresowną pomoc.

Gdy zdecydujesz się jednak zwrócić do nas po pomoc, na pewno nie chciałbyś zachować się jak łajza. Najlepszym sposobem by otrzymać szybką odpowiedź jest pytać jak osoba inteligentna, wierząca w siebie, posiadająca wiedzę, której po prostu zdarzyło się szukać pomocy w tym jednym, konkretnym problemie.

Zanim zapytasz

Zanim wyślesz email z zapytaniem, zadasz pytanie na grupach dyskusyjnych, czy też na innym forum dyskusyjnym, to postaraj się znaleźć odpowiedź:
   1. czytając manual,
   2. studiując FAQ,
   3. przeszukując sieć,
   4. zadając pytanie bardziej doświadczonemu koledze.
Gdy będziesz zadawać pytanie, zaznacz, że zrobiłeś już powyższe rzeczy. Dzieki temu będziemy wiedzieć, że nie jesteś po prostu leniwy i nie marnujesz czasu innych ludzi. Jeszcze lepiej będzie, gdy przedstawisz to, czego sie nauczyłeś dzięki "zaliczeniu" powyższych punktów. Lubimy pomagac ludziom, którzy udowodnią, że sami potrafią sie uczyć i szukać odpowiedzi.

Przygotuj pytanie. Przemyśl je. Im lepiej udowodnisz, że włożyłeś sporo wysiłku w próbę rozwiązania problemu zanim zapytałeś nas, tym większe prawdopodobieństwo, że rzeczywiście uzyskasz pomoc.

Nie zadawaj złych pytań. Jeśli pytanie, które zadasz, będzie oparte na błędnym założeniu, ktoś z nas (prawdopodobnie myśląc: "Głupie pytanie...") odpowie Ci krótko i dosadnie, mając nadzieję, iż nauczysz się czegoś, jeśli dostaniesz to, o co prosiłeś, a nie to, co było Ci naprawdę potrzebne.

Nigdy nie zakładaj, że musisz otrzymać odpowiedź. Nie musisz, w końcu nie płacisz za to. Otrzymasz odpowiedź - jeżeli już ją otrzymasz - gdy zadasz solidne, interesujące i zmuszające do myślenia pytanie. Takie, które może wzbogacić wiedzę ogółu, a nie takie, które jedynie wyciąga wiedzę od innych.

Bardzo dobrym początkiem będzie wykazanie chęci do współpracy w procesie rozwiązywania problemu. Zadając pytania typu: "Czy ktoś może dać mi jakąś wskazówkę", "Czego tu brakuje" lub "Czy jest jakaś strona, gdzie mógłbym to sprawdzić", masz większą szansę, żeby otrzymać odpowiedź, niż gdyby pytanie brzmiało: "Proszę o przesłanie dokładnej procedury, jakiej powinienem użyć". Daje to pewność, że dokończysz proces, jeśli ktoś Cię odpowiednio nakieruje.

Gdy pytasz

Odpowiednio wybieraj swoje forum.

Bądź staranny w doborze miejsca swojego zapytania. Prawdopodobnie będziesz zignorowany lub uznany za łajzę, jeśli:
    * wyślesz swoje pytanie na forum, gdzie będzie ono uznane za "nie na temat" (off topic),
    * wyślesz elementarny problem na forum, gdzie oczekiwane są raczej zaawansowane techniczne pytania (lub odwrotnie),
    * wyślesz to samo pytanie do zbyt wielu różnych grup naraz.

Zawsze odtrącamy pytania, które są błędnie sprecyzowane, źle ukierunkowane, by chronić nasz własny kanał komunikacyjny od zasypania go rzeczami zupełnie nie związanymi z tematem. Raczej nie chciałbyś zostać zignorowany.

Generalnie, pytania skierowane do właściwie obranego publicznego forum mają większą szansę uzyskać użyteczną odpowiedź. Istnieje wiele powodów takiego stanu rzeczy. Jednym z nich jest po prostu większa liczba potencjalnych odpowiedzi. Innym jest liczność tzw. publiczności; wolimy raczej odpowiadać na pytania, które edukują wielu ludzi, niż na te, które pomogą zaledwie nielicznym.

Pisz poprawnie stylistycznie, gramatycznie i ortograficznie

Z doświadczenia wiemy, że ludzie, którzy niedbale i niechlujnie piszą posty, najczęściej są niedbali i niechlujni w myśleniu i programowaniu (taka jest powszechna opinia). Odpowiadanie na pytania takim ludziom mija się z celem, wolimy inaczej wykorzystać czas.

Formułowanie swoich pytań jasno i zrozumiale jest zatem bardzo ważne. Jeśli nie potrafisz zrobić tych dwóch rzeczy jednocześnie, nie oczekuj od nas, że zwrócimy na Ciebie szczególną uwagę. Włóż więcej wysiłku w poprawność swojego języka. Nie chodzi tu o sztywność czy oficjalność - w rzeczywistości nasze środowisko ce***e się językiem swobodnym, żargonowym i humorystycznym, używanym jednak z precyzją. Tu musi być precyzja - pamiętaj, że muszą być jakiekolwiek oznaki Twojego myślenia, byśmy zwrócili na to uwagę.

Pisząc, używaj znaków przestankowych, wielkich i małych liter poprawnie. Nie PISZ WIELKIMI LITERAMI, to odczytywane jest jako krzyk. (Pisanie samymi małymi literami jest nieco mniej drażniące, jednak trudne do odczytania. Alanowi Coxowi to ujdzie, ale Tobie nie.)

Jeśli piszesz jak pseudo-inteligentny cycek - będziesz prawdopodobnie zignorowany. Pisanie l337 h4X0r - 'hakerskim alfabetem' - jest położeniem głowy pod topór i gwarantuje Ci, że nie otrzymasz nic poza grobową ciszą (lub, w najlepszym przypadku zostaniesz zasypany sarkazmem i lekceważącymi radami).

Jeśli zadajesz pytanie na forum, na którym nie używa się Twojego rodzimego języka, możesz spodziewać się pewnej tolerancji dla błędów gramatycznych i ortograficznych, ale zerowej tolerancji dla lenistwa (tak jest, zwykle potrafimy dostrzec różnicę). Ponadto, jeżeli nie znasz języka swoich respondentów - pisz po angielsku. Mamy tendencję do olewania pytań zadanych w niezrozumiałym dla nas języku, angielski uważany jest za język 'roboczy' Internetu. Pisząc po angielsku minimalizujesz szansę odrzucenia swojego pytania.

Używaj treściwych, ściśle sprecyzowanych tematów w nagłowkach

Na listach pocztowych lub grupach dyskusyjnych temat w nagłówku Twojej wiadomości, zawarty w około 50 znakach (lub mniej), jest doskonałym sposobem na przyciągnęcie uwagi wykwalifikowanych ekspertów. Nie trać szansy na ich odpowiedź poprzez bełkot w stylu "Proszę, pomóżcie mi" (nie mówiąc już o "PROSZĘ, POMÓŻCIE MI!"; wiadomości z takim tematem są omijane odruchowo). Nie próbuj wywrzeć na nas wrażenia, ukazując swoje ogromne cierpienie.

Dobrym zwyczajem dla tematów w nagłówkach, stosowanym przez organizacje typu tech-support, jest trzymanie się konwencji "obiekt - nieprawidłowość". Część "obiekt" specyfikuje z jaką rzeczą lub grupą rzeczy zaistniał problem, w części "nieprawidłowość" opis niespodziewanego zachowania.

Głupio:
    POMOCY! Nie działa mi grafika w laptopie!
Mądrze:
    W XFree86 4.1 znika mój kursor, grafika Fooware z chipsetem MV1004
Najrozsądniej:
    XFree86 4.1 na grafice Fooware z chipsetem MV1004 - znikający kursor.

Konwencja opisywania "obiekt - nieprawidłowość" pomoże Ci sformułować problem w bardziej szczegółowy sposób. Co jest nie tak? To tylko kursor, czy może także karta graficzna? Czy to jest normalne dla XFree86? Dla wersji 4.1? Czy to jest specyficzne dla chipsetów grafiki Fooware? Dla modelu MV1005? Jeśli widzimy rezultaty tych obserwacji, możemy natychmiast zrozumieć, co jest przyczyną Twoich problemów i stwierdzić na pierwszy rzut oka, jakiego rodzaju to jest problem.

Jeśli zadajesz pytanie w odpowiedzi na inną wiadomość (Reply), pamiętaj, aby tak zmienić temat listu, żeby wyraźnie wskazywał, iż zadajesz pytanie. Temat, który wygląda tak: "Re: test" lub "Re: nowy bug" prawdopodobnie nie przyciągnie wystarczającej uwagi. Obcinaj również cytaty poprzedniej wiadomości do minimum, zgodnie z wątkiem.

Bądź precyzyjny i podawaj dokładne informacje dotyczące problemu

    * Opisz swój problem lub błąd Cię nurtujący jasno i przejrzyście.
    * Opisz środowisko, w którym się pojawia (sprzęt, system, aplikacja, cokolwiek).
    * Opisz, co zrobiłeś i spróbuj zrozumieć problem zanim zadasz pytanie.
    * Opisz kroki diagnostyczne, jakie spróbowałeś podjąć i spróbuj zająć jakies stanowisko zanim zadasz pytanie.
    * Opisz wszelkie zmiany w komputerze i konfiguracji oprogramowania, jakie zaszły w ostatnim czasie i mogą mieć jakieś znaczenie.

Skoro prosisz o pomoc, to zrób wszystko co w Twojej mocy, by odpowiedzieć na pytania, jakie zostaną Ci przez nas zadane.

Dużo nie znaczy dobrze

Musisz zwięźle i precyzyjnie określić problem. Nie pakuj olbrzymiej ilości kodu lub informacji w swoje zapytanie. Jeśli posiadasz wielki, skomplikowany wynik błędnego działania jakiegoś programu, spróbuj przyciąć go i uczynić go jak najmniejszym.

To jest użyteczne z co najmniej trzech powodów. Pierwszy: zauważalny wysiłek włożony w uproszczenie pytania sprawi, że z większym prawdopodobieństwem otrzymasz odpowiedzi. Drugi: samo uproszczenie pytania sprawi, że szybciej otrzymasz odpowiedź. Trzeci: w procesie oczyszczania Twojego raportu o błędzie może sam opracujesz jego rozwiązanie lub znajdziesz jego obejście.

Opisz symptomy problemu, a nie Twoje domysły.

Nie pisz co - według Ciebie - powoduje problem (gdyby Twoje domysły były słuszne, nie prosiłbyś o pomoc). Upewnij się, że podajesz konkretne symptomy problemu, a nie własną interpretację czy teorię. Interpretacje i diagnozy pozostaw nam.

Głupie:
    Ciągle otrzymuję błąd SIG11 podczas kompilacji jądra i podejrzewam jakieś uszkodzenie podzespołu płyty głównej. Jak najlepiej to sprawdzić?
Mądre:
    Mój domowy K6/233 z płytą główną FIC-PA2007 (chipset VIA Apollo VP2) oraz 256MB RAM-u Corsair PC133 SDRAM zwraca błąd SIG11 po dwudziestu minutach od włączenia, podczas procesu kompilacji jądra, ale nigdy przez pierwsze 20 minut. Reboot nie powoduje restartu zegara, natomiast wyłączenie wszystkiego - tak. Wymiana RAM-u nie pomogła. Interesująca część logu z zapisem procesu kompilacji wygląda tak.

Opisz symptomy problemu w kolejności chronologicznej

Najbardziej użyteczna wskazówka w rozszyfrowywaniu czegoś, co poszło źle, najczęściej leży w poprzedzających to zdarzeniach. Zatem Twój raport powinien opisywać precyzyjnie, co zrobiłeś lub co zrobiła maszyna, od początku do końca. W przypadku linii poleceń, tworzenie logów sesji (np. używając programu script) i przytoczenie stosownych dwudziestu linii jest bardzo przydatne.

Jeśli program, którego problem dotyczy, posiada wbudowane opcje diagnostyczne (jak np: -v for verbose), spróbuj pomyśleć nad starannym ich dobraniem, by wydobyć możliwie jak najwięcej pożytecznych informacji.

Jeśli Twój raport zrobił się dosyć duży (więcej niż 4 akapity), pożytecznym byłoby scharakteryzowanie krótko problemu na początku, a następnie posortowanie reszty w chronologicznej kolejności. W ten sposób, będziemy wiedzieli czego szukać podczas czytania Twojego raportu.

Nie proś o odpowiedź na prywatny adres

Uważamy, że rozwiązanie problemu powinno być przejrzyste, i powinno odbywać się na forum publicznym dlatego, by - jeśli w pierwszej odpowiedzi pojawi się błąd, bądź będzie ona niekompletna - ktoś o większej wiedzy mógł ją poprawić. Czasami także jesteśmy za udzielanie dobrych odpowiedzi postrzegani przez innych jako ludzie kompetentni i o solidnej wiedzy w danym temacie.

Gdy prosisz o prywatną odpowiedź, zakłócasz ten proces. Nie rób tego. Jest to wybór odpowiadającego jak odpowiedzieć. Jeśli ktoś odpowiada na adres prywatny, oznacza to zazwyczaj, że pytanie jest źle sformułowane lub zbyt oczywiste, by zainteresować innych.

Jest jeden wyjątek od tej reguły. Jeśli uważasz, iż pytanie jest takie, że otrzymasz mnóstwo podobnych odpowiedzi, napisz: "odpowiedzi proszę kierować na mój adres, a ja podsumuję je i prześlę na grupę". Ustrzeżenie listy bądź grupy dyskusyjnej przed zalewem identycznych wiadomości jest uprzejmym zachowaniem - musisz jednak dotrzymać obietnicy i przesłać podsumowanie.

Pytając, wyrażaj się precyzyjnie

Nieprecyzyjne pytania są postrzegane jako pytania bardzo czasochłonne. Ludzie, którzy z pewnością udzielą Ci dobrej odpowiedzi, są również bardzo zajęci (dlatego, że biorą na siebie wiele obowiązków). Tacy ludzie są uczuleni na pytania czasochłonne, więc również na pytania nieprecyzyjne.

Z dużym prawdopodobieństwem uzyskasz pozytywny odzew, jeśli wyjaśnisz dokładnie jakiego działania oczekujesz od swoich respondentów (dostarczenia wskazówki, przesłania kodu, sprawdzenia Twojej łatki, czegokolwiek). To skupi ich wysiłek na konkretnych czynnościach i pośrednio ograniczy czas i energię, którą musiałby ktoś włożyć, by Ci pomóc, w przypadku nieprecyzyjnych pytań.

By zrozumieć świat, w którym żyją fachowcy, pomyśl o fachowości, jak o niezmiernie obfitych zasobach i skąpo krótkim czasie, który masz na korzystanie z nich. Im mniejszą część czasu fachowcy zużyją na zrozumienie zadanego pytania, tym bardziej prawdopodobne będzie otrzymanie odpowiedzi od kogoś naprawdę dobrego (i bardzo zajętego jednocześnie).

Spraw by forma Twojego pytania zminimalizowała czas potrzebny fachowcowi na to, by zagłębić się w nie - bardzo często forma ta nie sprowadza się jedynie do uproszczenia pytania. Zatem, na przykład, "Czy możesz dać mi jakąś wskazówkę do wyjaśnienia X?" jest zwykle o wiele mądrzejsze niż "Czy możesz mi wyjaśnić X?". Jeśli jakiś kawałek kodu nie działa prawidłowo, zwykle lepiej poprosić kogoś, by wyjaśnił co jest nie tak, niż prosić kogoś o naprawienie tego.

Nie wysyłaj zapytań z pracą domową

Jesteśmy nieźli w wynajdywaniu prac domowych - większość z nas bowiem też je odrabiała. Te pytania są dla Ciebie, zebyś samodzielnie znalazł odpowiedź i czegoś się nauczył. Pytaj o wskazówki, a nie o rozwiązanie.

Nie zadawaj bezcelowych pytań

Oprzyj się pokusie by sprowadzać Twoje prośby o pomoc do nic nie znaczących pytań w stylu "Czy ktoś może mi pomóc?" lub "Czy jest na to jakaś odpowiedź?". Po pierwsze: jeśli opisałeś swój problem na wpół kompetentnie, takie pytania są naprawdę zbędne. Po drugie: ponieważ są zbędne - niezmiernie nas drażnią - w odpowiedzi będziemy odpowiadać zgodnie z żelazną logiką lecz wymijająco, coś w stylu "Tak, może Ci ktoś pomóc." lub "Nie, Tobie już nikt nie może pomóc."

Nie oznaczaj pytań jako "Pilne", nawet jeśli są takie dla Ciebie

To Twój problem, nie nasz. Zaznaczenie pilności prawdopodobnie przyniesie odwrotny skutek: większość z nas po prostu skasuje takie wiadomości jako przejaw niegrzecznego i samolubnego zachowania - żądania natychmiastowej uwagi i specjalnego traktowania.

Grzeczność nigdy nie boli, a czasem pomaga

Bądź kurtuazyjny. Używaj 'Proszę' i 'Z góry dziękuję'. Doceń to, że ludzie spędzają czas, by Ci pomóc zupełnie za darmo.

Bycie przemiłym nie jest ważniejsze (i nie jest namiastką tego) niż pisanie poprawnie gramatycznie, precyzyjnie a zarazem opisowo, unikanie zastrzeżonych formatów itp. Generalnie wolimy raczej odebrać coś ciężkostrawnego, na przykład technicznie ścisły raport o błędzie, niż mglistą, niewiele mówiącą grzeczność i kurtuazję.

Spróbuj jednak upiec dwie pieczenie na jednym ogniu - grzeczność zwiększy Twoje szanse otrzymania użytecznej i pomocnej odpowiedzi.

(Musimy zaznaczyć, że jedynym poważnym zarzutem, który odebraliśmy pod adresem niniejszego howto, jest zalecenie używania jedynie "Z góry dziękuję". Niektórzy odbierają treść tej intencji jako zamierzenie braku podziękowań później dla kogokolwiek. Zalecamy robić obydwie rzeczy.)

Wyślij podziekowania po rozwiązaniu problemu

Kiedy rozwiązałeś problem, wyślij wiadomość do wszystkich, którzy Ci pomogli; daj znać jak poszło i podziękuj. Jeśli w rozwiązanie problemu była zaangażowana lista pocztowa czy grupa dyskusyjna, podziekowania wypada wysłać też tam.

Ta wiadomość nie musi być długa czy zawiła; proste " Witam - to był zepsuty kabel sieciowy! Dziękuję wszystkim - Bolek" będzie lepsze niż nic. Tak naprawdę to krótkie, treściwe podsumowanie jest lepsze niż długa rozprawa, jeżeli wyjaśnienie nie zawiera technicznych szczegółów. Powiedz co rozwiązało problem, ale nie ma potrzeby wdawać się w szczegóły.

Poza uprzejmością, informacja, które konkretnie rozwiązanie pomogło Tobie, ułatwi innym wyszukiwanie w archiwum wiadomości, które mogą pomóc im.

I na koniec, tego typu mail usatysfakcjonuje wszystkich, którzy zaangażowali się w rozwiązanie problemu. Jeśli nie jesteś kumatym misiem zaufaj nam, że to uczucie jest bardzo dla nas ważne. Problemy przekształcające się w nierozwiązane ciągi dyskusyjne są niezmiernie frustrujacymi rzeczami; chcielibyśmy je rozwiązywać. Dobra karma zgromadzona poprzez zaspokajanie tego pragnienia, będzie Ci bardzo, bardzo pomocna, gdy będziesz zmuszony zadać kolejne pytanie.

// Skrócony tekst ze strony http://rtfm.bsdzine.org/.

Kǝmac

O Jezu wymiękłem po 3 linijkach.
Skrócona wersja:
1. Kultura.
2. Tytuły tematów zgodne z treścią wątku.
3. Napisz wersję SMF której używasz jeśli zgłaszasz problem.
Dropbox +0.5 GB dla nowych użytkowników (i dla mnie): http://db.tt/dO6tmv2