Ostatnio doszedłem do wniosku, że odpowiadanie na z pozoru trywialne pytania początkujących programistów (głównie na forum Warsztatu, rzecz jasna) nie jest w rzeczywistości takie proste. Zwykle nie chodzi oczywiście o samą naturę problemu, który w większości ogranicza się do “tajemniczego” (głównie dla pytającego) komunikatu kompilatora, narzekającego na taką-a-taką linijkę w kodzie. Owszem, rozwiązanie często widać na pierwszy rzut oka. Gorzej jest z odpowiednim jego przekazaniem.
Z jednej strony można odpowiedzieć krótko, zwięźle i precyzyjnie, trafiając w samo sedno sprawy bez zbędnych wyjaśnień. Wtedy jednak nierzadko okazuje się, że taka odpowiedź rodzi raczej dodatkowe pytania, chociażby ze względu na odruchowe posługiwanie się pewnymi bardziej zaawansowanymi pojęciami, które dla nowicjusza będą nieznane. A stąd już niedaleko do bycia postrzeganym jako zarozumiały mądrala.
Zamiast tego można oczywiście udzielić długiej i wyczerpującej odpowiedzi, omawiającej spory zakres zagadnienia, którego dotyka problem. Można – jeśli ktoś ma na to czas i ochotę ;P Przy okazji można też niestety skutecznie oduczyć delikwenta samodzielności w znajdowaniu rozwiązań swoich programistycznych problemów.
A więc i tak źle, i tak nie(zbyt )dobrze :) Ale nie jest to w sumie zaskakujące: przecież podobno nie ma niewłaściwych pytań, a jedynie takież odpowiedzi. A przedstawiony wyżej dylemat ma też jedną poważną zaletę: jest całkiem dobrym pretekstem, aby przestać zajmować się cudzymi kłopotami i wziąć się za własny kod ;]
Wg mnie najlepiej jest przedstawić z grubsza problem, lecz nie wyjaśniać wszystkiego do końca, lecz powiedzieć…a to znajdziesz w tym dokumencie, ale o tym to już musisz pogooglać. Ale racja. Nie można za bardzo wyręczać ludzi. Nie można też za bardzo wyręczać. Wg mnie, ważne jest żeby świeży programista widział postęp w swoich pracach.
Mam identyczne zdanie; najlepiej gdy na pytanie odpowiemy wskazowka, ktora pomoze odnalezc pytajacemu odpowiedz samodzielnie.
Ja znalazłem sobie jakiś czas temu metodę: gdy potrzebuję w odpowiedzi napisać komuś jakiś poglądowy kod, to zawsze używam pseudokodu (mniej lub bardziej abstrakcyjnego), by delikwent sprawę przemyślał i sam się troszkę pogłowił, jak to przepisać na C++ (czy czego tam używa).
A ja się chyba jeszcze zaliczam do tych początkujących ;P
Witam
myślę że jest to dylemat który stoi przed większością osób które znają odpowiedź na dane pytanie “początkującego” ( który tak naprawdę tym początkującym nie musi być ).
Na jakimś forum była dyskusja o różnicy pomiędzy nauką języka programowania a nauką programowania … myślę że co do tego pierwszego jest dużo materiałów, a do drugiego mniej.
Uważam że ludzi trzeba uczyć szukać rozwiązania samemu, wskazywać źródła wiedzy, pokazywać sposób rozwiązania problemu bez pomocy osób innych. ( po kilku latach “interesowania” się programowaniem uważam że materiałów jest dużo, ale na początku one były “głęboko ukryte” przedemną ;) )
To jest moje zdanie, i oczywiście mogę się mylić.
Jako że jest to ( bodajrze ) mój pierwszy komentarz na tym blogu, pozdrawiam Autora i czytelników.
Zainspirowany Twoimi rozważanaimi popełniłem posta na temat Odpowiadania (ogólnie) na pytania:
http://moriturius.wordpress.com/2008/09/21/odpowiedzi/