Wchodząc
ostatnio na YouTube, zauważyłem że od dawna nie oglądam
tutoriali. Ostatnie nagrania techniczne, jakie widziałem, to kurs
Angulara od Kudvenkat i Acemind. Regularnie oglądam wszystko co
wrzuca Gynvael Coldwind. Tymczasem, takie znakomite kanały, jak:
-
NetNinja
-
Codevolution
-
Traversy Media
-
Learn Code Academy
-
Coding train
-
Mariusz Jurczenko
-
Rem Zolotykh
-
itd.
leżą
odłogiem. Skąd ta niechęć do oglądania tutoriali? Moim zdaniem,
ta metoda nauki programowania, jest kiepska!
Większość kanałów o programowaniu webowym, skupia się na
podstawach, rzeczach, które można wyczytać z pierwszej strony
dokumentacji na dany temat. Z tutoriala nauczymy się tego, co można
bardzo łatwo znaleźć, natomiast „na projekcie”, trzeba
znacznie wgłębić się w temat.
Przyjmowanie informacji w formie tutoriala, jest mało efektywne.
Autorzy często tracą czas na omawianie zupełnych podstaw (jak
instalacja Node), co zajmuje pół filmu. Co więcej, spisywanie kodu
z ekranu, potrafi być równie trudne, co wyczyny cyrkowe, ponieważ
prowadzący wykład, potrafi na przykład ukryć kod ułamek sekundy
po jego wklejeniu. Wspominam o wklejeniu, ponieważ bardzo rzadko
autor porywa się na wpisywanie kodu „z palca”. Jeśli już kod
jest pisany ręcznie, to autor musi pochwalić się perfekcyjnym
poznaniem sztuki robienia 3 literówek w każdym wyrazie.
Jeśli w pracy chcesz skorzystać z rozwiązania wskazanego przez
autora, zmarnujesz mnóstwo czasu na przeglądanie filmu w
poszukiwaniu odpowiedniego fragmentu kodu. Pozostaje mieć nadzieję,
że autor wrzucił kod tutoriala na ogólnodostępne repozytorium.
Pozytywnym wyróżnikiem tutaj jest Kudvenkat, który do każdego
filmu wrzuca link do posta na blogu oraz kodu źródłowego.
Kolejnym zarzutem odnośnie do tutoriali z YT, jest fakt, że
rozwiązują one konkretny problem, ale nie mówią nic o tym,
dlaczego zostało użyte dane rozwiązanie. Autorzy idą utartą
ścieżką, zamiast tak, jak przy tłumaczeniu rozgrywki szachowej
przez eksperta, wskazywać inne możliwości i omawiać możliwe
niuanse.
Aplikacje powstające w takich poradnikach są prawie zawsze bardzo
małe i budowane od zera. Nie przekłada się to na naszą późniejszą
wiedzę o tym, jak rozbudowywać duże projekty lub jak się w nich
odnaleźć.
Autorzy tutoriali, jak na przykład Brad Traversy, często nie są
programistami na pełny etat – zarabiają na afiliacjii i tworzeniu
treści.
Na koniec chciałem wspomnieć o złych praktykach w tutorialach tego
typu. Nieporadne korzystanie z edytora (mouse-driven development) i
systemu operacyjnego to najczęstszy z nich.
Autorzy tutoriali często robią rzeczy w złej kolejności.
Przykład – wiele tutoriali z JS, zaczyna się od instalowania
kilkudziesięciu paczek NPM z konsoli, bez informowania o tym,
dlaczego są one potrzebne. Lepszym rozwiązaniem było by
umieszczenie przez autora linku do pobrania pliku package.json,
dzięki czemu, słuchacz mógłby zaoszczędzić czas na zabawy z
cmd.
Autorzy bardzo rzadko pokazują jak korzystać z dokumentacji, czy
chociaż skorzystać z opcji podpowiedzi w edytorze. Początkujący
widz, może mieć wrażenie, że nazwy wszystkich funkcji i
przyjmowane przez nie parametry, powinien mieć w głowie. W żadnym
z tutoriali (pomijając te dotyczące samego Gita), które obejrzałem
do tej pory, nie doszukałem się też wersjonowania kodu.
Niestety, ale problemy, które wymieniłem wyżej, dotykają nie
tylko nawet najlepsze kanały na YT, ale także (chociaż w mniejszej
mierze), kursy płatne.
W jednym z kolejnych wpisów postaram się omówić lepsze metody
nauki.
Brak komentarzy:
Prześlij komentarz