Najczęściej spotykane błędy w pytaniach na forum

Dość sporo udzielam się na szeroko pojętych forach, pomagając ludziom z C++ a czasem również z innymi językami. W związku z tym bardzo często spotykam się z fatalnie zadanymi pytaniami. W tym wpisie wyleję swoją frustrację na najczęstsze z nich, w kolejności nieuporządkowanej. Porady jak uniknąć tych błędów oraz jak zadawać pytania znajdują się we wpisie Jak zadawać pytania na forum.

Nie będę prezentował żadnych linków, aby nikogo konkretnego nie zawstydzać, ponieważ nie o to w tym wpisie chodzi. Ale jeśli dostałeś od kogoś linka do tego posta, to jest szansa, że wstydzić się powinieneś. Albo powinnaś.

Pytanie forum, gdy Google zna odpowiedź

Nie zliczę linków do lmgtfy, które zamieściłem, z dokładną treścią zapytania delikwenta. Nie jestem w stanie powiedzieć co kieruje takimi ludźmi, ale dość powiedzieć, że zapytanie na forum, które skutkuje przekierowaniem przez lmgtfy do wyszukiwarki, to więcej roboty, trwa dłużej i tylko irytuje wszystkich dookoła.

Screenshoty kodu

Tak, są ludzie którzy to robią. Niestety, kodu ze screenshota nie da się skopiować do IDE/edytora/przeglądarki, aby go poprawić. Niektórzy potrafią ponadto robić screenshoty w notepadzie albo innym, równie ubogim edytorze, pozbawiając czytelników kolorowania składni.

Najbardziej dziwne w tym wszystkim jest to, że z reguły wrzucenie obrazka jest bardziej kłopotliwe, niż wklejenie kodu.

Bezsensowne pytania, brak opisu problemu

Wyobraźcie sobie post zawierający kilkadziesiąt lub kilkaset linijek kodu kończącym się pytaniem “co tu jest źle?”, albo brakiem pytania w ogóle. Dodatkowo temat wątku to “POMOCY” albo “PROBLEM”.

Do piszących takie potworki: tego typu zapytania pozostają bez odpowiedzi, ponieważ nikomu się nie chce tego czytać – pytanie powinno naprowadzić chociażby na typ błędu, którego się spodziewamy (np. syntax error, czy błąd w algorytmie?).

Przeinaczanie komunikatu błędu

Zamiast wkleić komunikat błędu, albo chociaż jego screenshota, można np. powiedzieć “rzuca wyjątek”, chociaż po dopytaniu okazuje się, że wystąpił błąd kompilacji. W końcu jeśli nie rozumiem różnicy, to jej nie ma, prawda? O myleniu linkera z kompilatorem nawet nie wspominam1.

Alternatywnie, również zamiast wklejenia komunikatu błędu, można niepoprawnie opisać jego znaczenie. Kompilator zakończył pracę z błędem error: ‘s’ was not declared in this scope? Czemu by nie napisać “problem z deklaracją s”?

Dużo kodu, okropny kod, a czasem combo: dużo okropnego kodu

Masz problem z funkcją obliczającą pole kwadratu? Ok, to wrzuć kilkaset linii projektu do posta. Najlepiej jeśli formatowanie kodu będzie beznadziejne. Może to się objawiać np. losową – lub odwrotnie, kompletnie zerową – indentacją.

Dodatkowe punkty można zdobyć za nazwanie zmiennych w stylu str1, str2, str3, tmp, temp. Dodatkowe dodatkowe punkty jeśli strX nie jest stringiem.

Bezczelność

Oczekujesz pomocy od wolontariuszy w internecie? Doskonałym pomysłem będzie przedstawienie zapytania jako żądania pomocy. W dobrym guście będzie też wyznaczenie terminu wykonania pracy, oraz, jeśli ma to sens, pochwalenie się, że oszukujesz na egzaminie/kolokwium/pracy domowej.

Na szczęście wątki tego typu delikwentów są sprawnie usuwane lub kończą w serii lawful evil.

1jednak wspomniałem

Leave a Reply

Your email address will not be published.