EM poleca (#30) Eric Freeman, Elisabeth Robson „Programowanie w JavaScript. Przewodnik po tworzeniu nowoczesnych aplikacji w JavaScript”
Lubię książki z serii „Rusz głową”. Powodów jest wiele, poczynając od wymaganej przez oryginalnego wydawcę [O’Reilly] doskonałości wydawniczej, a kończąc na skutecznej metodzie nauczania. Są to bowiem książki, których celem jest nauczenie języka programowania lub technologii, a nie tylko prezentacja tematu.
Uważa się, że poważne książki o programowaniu powinny być napisane precyzyjnym językiem i obejmować całość zagadnień. Koniecznie musi być też zastosowana żelazna zasada pisania podręczników, czyli używanie słownika zawierającego nie więcej niż 2000 słów (dotyczy książek napisanych po angielsku o zasięgu światowym). Nie mówię, że to złe podejście, w końcu z takich podręczników programowania uczyło się parę pokoleń programistów, ja też. Niestety, takie podejście nie gwarantuje opanowania języka na poziomie wykraczającym poza tradycyjne „Hello, World!”. Nie mówię też o osiągnięciu biegłości po przeczytaniu jednej książki, do tego potrzebna jest praktyka. Chodzi o to, żeby po przepracowaniu (ładne słowo, prawda?) książki móc poczuć specyfikę i horyzonty tego języka, rozumieć konstrukcje i umieć sprawnie przekładać realne zadania programistyczne na konstrukty danego języka.
Każdy język programowania projektowano z jakimś szczególnym zamysłem. Jeden miał być szybki, drugi łatwy do nauczenia się i uniwersalny, trzeci miał być kompromisem wszystkiego ze wszystkim, a czwarty miał się wstrzelić w niszę, która do tej pory była łatana czym się da z powodu braku pasującego rozwiązania. Na siłę w każdym (prawie każdym) języku programowania można zakodować praktycznie wszystko. Tylko po co? Cała sztuka polega na właściwym wykorzystaniu właściwych elementów języka we właściwych miejscach. Dlatego między innymi programowanie przez wielu jest nazywane sztuką.
Krótko o metodyce nauczania książek z serii „Head First”.
HeadFirst to nowoczesna metodyka nauczania oraz nadtytuł znanej serii książek wydawnictwa O’Reilly wydawanej od kilkunastu lat i chętnie tłumaczonej na język polski pod nazwą „Rusz głową!”. Charakteryzuje się unikalnymi cechami zapewniającymi nadzwyczajną skuteczność nauki:
- Przedkłada aktywne zaangażowanie nad bierne czytanie. Wykorzystuje nowoczesne techniki zgodne z naturalnym sposobem, w jaki mózg przetwarza informacje.
- Szata graficzna jest bogata i niebanalna, przyciąga swą atrakcyjnością i skłania Ucznia do zaangażowania.
- Wykorzystuje różne, komplementarne formy przekazu tej samej treści (łamigłówki, żarty, interaktywne ćwiczenia, quizy), aby dotrzeć jak najskuteczniej do przyswojenia i utrwalenia treści.
- Przykłada się do zrozumienia prezentowanego zagadnienia, ukształtowania właściwych ścieżek rozumienia danego problemu lub metody. Zaangażowany uczeń jest zdolny do myślenia twórczego, a o to szczególnie chodzi w programowaniu. W przeciwnym razie jego programowanie polegałoby jedynie na odtwarzaniu wyuczonych schematów, bez głębszego pojęcia, o co tu właściwie chodzi.
- Nauka przez przykłady. Nic nie nauczy skuteczniej niż dobrze skonstruowany i opowiedziany przykład. Dotyczy to zwłszcza programowania.
- Metodyka przykłada szczególną wagę do pisania własnego kodu w trakcie nauki. Jest tego naprawdę dużo, a ćwiczenia są zróżnicowane i praktyczne.
- I na koniec wisienka na torcie, czyli skłonienie Ucznia do zrozumienia własnego procesu poznania, zrozumienia własnych procesów myślowych prowadzących do zdobywania i utrwalania wiedzy, wsłuchania się w siebie.
Czytałem kilka książek tej serii i mogę z pełną odpowiedzialnością stwierdzić, że jest to najbardziej skuteczna metoda dotarcia z wiedzą do tępych programistycznych łbów. Co prawda była kiedyś seria „…dla Opornych”, zawierająca pewne elementy Head First, niezła, ale nie posiadająca interaktywności właściwej dla HeadFirst. Head First nie unika trudnych zagadnień, nie traktuje ich wyjątkowo, dobiera tylko odpowiednią formę dotarcia.
Dlaczego programowanie w JavaScript szczególnie nadaje się do nauczenia metodą Head First?
JavaScript to rasowy, w pełni fukcjonalny, nowoczesny język programowania przeznaczony do wykonywania w przeglądarce jako element strony internetowej. Jest to język interpretowany, ale dzięki ogromnemu wysiłkowi swoich deweloperów niezwykle szybki i wystarczający dla większości, nawet bardzo wymagających, zastosowań. Dość powiedzieć, że po JavaScript coraz częściej sięgają twórcy systemów dość odległych od przeglądarek, jak na przykład programiści robotów czy internetu rzeczy (Internet of Things IoT).
Warto też obalić mit o bliskim pokrewieństwie JavaScript i języka Java. Nie ma pokrewieństwa, żadnego, a człon „Java” znalazł się w nazwie języka przypadkowo, prawdopodobnie przez zapatrzenie się twórców w karierę, jaką robiła wtedy Java.
Wróćmy do pytania zadanego w podtytule. JavaScript jest językiem uniwersalnym i obszernym, jeśli chodzi o zastosowania. Jest to język osadzony w przeglądarce i zanurzony w środowisku wyświetlania stron internetowych. Znajomość tego języka polega nie tylko na opanowaniu technik programistycznych właściwych większości języków programowania ogólnego zastosowania, ale też połączenia tej ogólnej wiedzy ze specyfiką środowiska HTML, CSS, DOM itp. A to już nie jest takie intuicyjne. Oczywiście można metodą prób i błędów dojść do jako takiej biegłości w programowaniu stron internetowych z wykorzystaniem JavaScript, ale po pierwsze nie będzie to poziom mistrzowski, po drugie stracimy na to dużo czasu popełniając po drodze setki klasycznych błędów, a po trzecie po co iść drogą Koziołka Matołka, skoro można pójść na skróty.
Eric Freeman, Elisabeth Robson „Programowanie w JavaScript. Przewodnik po tworzeniu nowoczesnych aplikacji w JavaScript”, Wydawnictwo Helion 2025
Notka o Autorach
Eric Freeman jest informatykiem o imponującym doświadczeniu zawodowym: pracował między innymi dla The Walt Disney Company, O’Reilly Media, NASA i w kilku startupach. Freeman od 15 lat pisze o wielu dziedzinach informatyki: zarówno o podstawach tworzenia witryn internetowych, jak i o wysokopoziomowym projektowaniu oprogramowania. Obecnie Freeman jest prezesem spółki WickedlySmart.
Elisabeth Robson jest projektantką oprogramowania, pisarką i instruktorką. Pasjonuje się technologią, a studia na Uniwersytecie Yale ukończyła projektując współbieżny, wizualny język programowania. Jest współzałożycielką WickedlySmart, internetowego projektu edukacyjnego poświęconego technologiom związanym z WWW.
Autor

- Jestem informatykiem i analitykiem. Przez trzy lata prezentowałem dane epidemiczne na Twitterze jako @docent_ws. W gronie pasjonatów z Twitterowej Akademii Nauk (TAN) uzupełniamy wiedzę na temat Covid-19. Na BlueSky jako @wieslawseweryn.bsky.social. Piszę o informatyce i Kosmosie, recenzuję i polecam książki popularnonaukowe. Walczę z dezinformacją, którą uważam za największe zagrożenie ery social-mediów, zwłaszcza wspieraną przez niekontrolowaną tzw. "sztuczną inteligencję".
Ostatnie wpisy
EM poleca4 lutego 2026EM poleca (#43) Leo Porter, Daniel Zingaro „Programuj ze sztuczną inteligencją”
EM poleca14 stycznia 2026EM poleca (#41) Ryan Day „Interfejsy API w AI i Data Science. Programowanie w Pythonie z użyciem FastAPI”
EM poleca31 grudnia 2025EM Poleca (#40) Mark Lutz „Python. Wprowadzenie. Wydanie VI”
EM poleca24 grudnia 2025EM Poleca (#39) William Ayd, Matthew Harrison – „Pandas. Receptury”




