Fiszki JavaScript

Dzisiaj coś bardziej nietypowego – fiszki z JS-a. Pomysł chodził za mną od dłuższego czasu i ostatecznie postanowiłem go zrealizować.

Pierwsze, z czym ma się do czynienia przy fiszkach, to bez wątpienia ich opakowanie. W tym wypadku całość przychodzi w białym, tekturowym pudełku. Spełnia swoje zadanie, ale… nic poza tym. Osobiście uważam, że jest to zmarnowana okazja. W przypadku fiszek pudełka można bardzo dobrze wykorzystać choćby w procesie nauki. Bardzo często są one podzielone na poszczególne „szufladki”, pozwalające nam grupować fiszki – na te do przyswojenia, na te przyswojone, na te do przypomnienia sobie itd. Tutaj tego nie ma, pudełko służy wyłącznie do przechowywania fiszek, gdy akurat z nich nie korzystamy. A szkoda.

Białe, tekturowe pudełko do przechowywania fiszek.

Zawartość pudełka z fiszkami: trzy zestawy fiszek, każdy w czarnej, kartonowej obwolucie.

Niemniej pudełko nie jest najważniejsze. Najważniejsze są same fiszki. Te podzielone są na trzy zestawy po 50 fiszek – każdy w oddzielnej, kartonowej obwolucie. Same fiszki wykonane zostały z twardego, matowego papieru. Dodatkowo podzielone są na kilka kategorii pytań, z których każda oznaczona jest swoim własnym kolorem. Wszystko to wygląda przyjemnie dla oka i jest po prostu wysokiej jakości. Przeglądając fiszki, nie znalazłem żadnych literówek (poza jedną, na karcie 137, na której napisano o silniku V9 zamiast V8). Od strony wykonania nie ma się do czego przyczepić.

Przód jednej z fiszki: pokolorowany fragment kodu na czarnym tle, imitujący kod z edytora kodu; w prawym dolnym rogu numer fiszki, 101.

Od strony merytorycznej również jest dobrze. Na fiszkach – jak to na fiszkach – informacje są przedstawione w mocno skrótowej formie, ale mimo wszystko są wybrane te faktycznie najważniejsze. Wszystko przekazane jest w formie konkretnego pytania i konkretnej odpowiedzi. To oznacza, że nie ma tu żadnego dodatkowego kontekstu, ale jako powtórka przed rozmową kwalifikacyjną jak znalazł. I chyba największy problem mam z ostatnim zestawem fiszek – w teorii tym najbardziej zaawansowanym. Trafiło się tam co prawda pytanie, na które nie znałem odpowiedzi (135, o barrel w ES6), ale bynajmniej nie to jest powodem. Ten zestaw zaczyna się od pytań z kodem. Dostajemy fragment kodu i mamy określić, jaki będzie wynik jego wykonania. Nie przepadam za tego typu zadaniami, bo często sprawdzają znajomość konkretnych kruczków z JS-a, niekoniecznie zaś – faktyczną znajomość języka. Zamiast tego typu zadań dorzuciłbym mimo wszysto jakieś dodatkowe pojęcia. One w fiszkach sprawdzają się bardzo dobrze, podczas gdy kod lepiej pisać na żywo, gdy jest dodatkowo możliwość komentowania na biężaco co i dlaczego się robi. Bo przy pisaniu kodu często równie ważne co ostateczny wynik jest to, w jaki sposób się do niego dochodzi. I jak podchodzi się do kodu, który nie działa tak, jakbyśmy oczekiwali. Takie wyszukiwanie JS-owych kruczków tego, niestety, nie sprawdza. W ostatnim zestawie są też pytania, które – zgodnie z obietnicą – faktycznie dotykają zaawansowanych tematów… ale mam wrażenie, że czasami aż za bardzo zaawansowanych. Są tutaj np. pytania o algorytmy wykorzystywane w mechanizmie garbage collectora (GC). Jest to jak najbardziej ciekawe zagadnienie, ale nie powiedziałbym, że jest to wiedza potrzebna na co dzień przy tworzeniu aplikacji internetowych. W zdecydowanej większości przypadków GC jest dla frontendowca całkowicie przezroczysty i nie musi (czy wręcz: nie powinien) się nim interesować.

Warto przy tym zauważyć, że równocześnie nie zauważyłem praktycznie żadnych ewidentnych błędów rzeczowych, merytorycznie jest jak najbardziej ok. Jedynie przy 68. karcie uważałbym z nazywaniem klas lukrem składniowym, bo już nim nie są.

Na sam koniec muszę poruszyć jeszcze jedną kwestię, która pojawia się niemal zawsze, gdy mowa o drukowanych materiałach: aktualność. Choć większość fiszek porusza tematy, które wciąż są jak najbardziej aktualne, na niektórych zdecydowanie brakuje nowszych rzeczy. Najwidoczniejsze jest to na fiszkach poświęconych cookies, na których nie ma opisu mechanizmu SameSite – a jest on jednym z najważniejszych ciasteczkowych lukrów (hehe) ostatnich lat. Tak samo brakuje wspomnienia o structuredClone() przy omawianiu klonowania obiektów czy o AbortControllerze przy omawianiu przerywania operacji asynchronicznych.

Powiem szczerze: fiszki mnie pozytywnie zaskoczyły. Spodziewałem się zdecydowanie niższej jakości, zwłaszcza merytorycznie. Niemniej jest solidnie – zarówno pod względem wykonania, jak i treści. Trochę je zaktualizować i zainwestować nieco w lepsze pudełko i będzie to naprawdę dobry sposób na szybką powtórkę wiedzy przed rozmową rekrutacyjną na poziomie juniora/regulara.

Jeden komentarz do “Fiszki JavaScript”

  1. Przyznam, że pierwszy raz spotkałem się z fiszkami w programowaniu 🙂 Ale wydaje się to całkiem fajne. Tylko że troszkę bokli mnie fakt, że tak wiele osób wszędzie mówi, iż na rozmowie rekrutacyjnej tak ważne są kruczki techniczne itp… Sam miałem okazję przeprowadzić sporo rozmów technicznych (w procesie rekrutacyjnym) i wg mnie wiedza techniczna z języka to tylko drobny procent tego, co jest faktycznie potrzebne.
    Spotkałem sporo osób, które sporo mówiły o różnych niuansach JS czy frameworków, ale wypadały bardzo słabo jak zaczynaliśmy rozmawiać o na prawdę istotnych rzeczach jak architektura aplikacji, podejście do rozwiązywania problemów, komuinikacja dev-UX-PM-tester itp., kwestia utrzymania aplikacji, wdrażania, testowania jej itp. Co więcej, zdarzało mi się nawet, że przechodziły osoby nie znające porządnie jakiegoś języka (np. Javy), ale mające doświadczenie w np. Pythonie, lecz z bardzo dobrym podejściem biznesowym i ogólnie podejściem do aplikacji… to jest coś, czego ludziom brakuje na rekrutacjach, a to czy ktoś się potknie na jakimś promisie itp. to na prawdę jest mniej istotne… wiedzę techniczną z języka można nadrobić z kilka tygodni 🙂

    Także reasumując, fiszki spoko, podstawy techniczne spoko, ważne, ale nie twórzmy dalej mitu, że jest to temat najważniejszy, bo jest to tylko drobna część tego, co faktycznie rynek wymaga dzisiaj od programisty 🙂

    Swoją drogą… pomysł fiszek mi się spodobał – Tomek czas na Twoje fiszki z tematu dostępności 🙂

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.