Wpadki i wypadki #7

Zapewne zaczęliście podejrzewać, że seria Wpadek i wypadków już dawno przestała istnieć, prawda? Niestety, muszę Was zmartwić, bo seria powraca!

Nie będą to jednak typowe Wpadki i wypadki, ponieważ ten wpis będzie niezwykle krótki i poruszy raptem jeden temat: reklamę frontendowego bootcampu od eduweb.pl. Reklama ta wydała mi się na tyle ciekawa, że postanowiłem wręcz napisać o niej słów kilka.

  • Wiem, że to niekoniecznie sprawa związana z webdevem, ale strasznie drażnią mnie apostrofy w niewłaściwych miejscach, jak choćby w formie frontend’owców – ewidentnie go tutaj nie powinno być.
  • Podczas Bootcampu nauczysz się najważniejszych technologii działających po stronie klienta – będziesz pracował z JavaScript, AngularJS, jQuery czy narzędziami jak WebPack i Git.

    Jak bardzo bym się nie starał, nie jestem w stanie uznać WebPacka i Gita za działające po stronie klienta. WebPack jest zaawansowanym narzędziem do zarządzania zależnościami i kodem aplikacji. Jego podstawowa funkcja to przetwarzanie modułów w gotowy do uruchomienia kod aplikacji, często także dołączając do niego statyczne zasoby. Tego typu działania wręcz proszą się, aby dziać się na serwerze. Git z kolei jest systemem kontroli wersji i nijak się ma do przeglądarki.

  • Zaawansowany JS – poznasz serię dobrych praktyk pracy z JavaScript, podejście obiektowe jak również praca z Ajax czy JSON.

    Okrutna prawda jest taka, że podejście obiektowe w JS to absolutne podstawy. Mamy rok 2016 i JS jest już na tyle dojrzałym językiem, że OOP wrosło w niego na dobre. I to na tyle, że… obecnie wieszczy się jego koniec, na rzecz programowania funkcyjnego. Zresztą trudno poruszać się po języku, w którym wszystko jest obiektem (albo przynajmniej zachowuje się jak obiekt), bez znajomości choćby podstaw programowania obiektowego.

    Tak samo nie mogę się zgodzić, że JSON to zaawansowany JS, skoro obsługa tego formatu w JS sprowadza się do zrozumienia składni literałów obiektów (czyli absolutne podstawy) i poznania dwóch funkcji: JSON.parse i JSON.stringify.

    To może Ajax jest zaawansowany? Tutaj mam pewien dylemat: w końcu trzeba zrozumieć asynchroniczność. Z drugiej strony, w dobie Fetch API Ajax stał się niesamowicie prosty. Poza tym tak po prawdzie asynchroniczność jest jedną z podstawowych koncepcji w JS-ie. Choćby głupia obsługa zdarzeń DOM to nic innego jak asynchroniczność. Zatem nie uznałbym tego za tak zaawansowany temat.

    Co zatem uważam za zaawansowany JS na chwilę obecną? Choćby właśnie wprowadzenie w programowanie funkcyjne, które wciąż jest traktowane po macoszemu (i tu się przyznam bez bicia: obiektówka leży mi po prostu lepiej!), choćby modularyzacja, połączona z hermetyzacją kodu, choćby ciekawe zabawy z asynchronicznością (generatory, async/await…).

  • API HTML 5 – Poznasz techniki pracy z nowymi API w HTML5 takimi jak Geolokalizacja, Aplikacje Offline czy File API.

    Słówko nowe jest tutaj użyte mocno na wyrost, zważając na fakt, że wymienione technologie mają kilka lat. Co więcej, Aplikacje Offline są obecnie usuwane z Sieci, po tym jak okazały się po prostu tragicznie zaprojektowane. Obecnie zastąpione zostają przez Service Workers.

  • ES6 i TypeScript – wprowadzenie do zmian w JS, które pozwolą Ci zrozumieć działanie nowoczesnych frameworków.

    Nie bardzo wiem, co wyjaśnienie zmian w składni ma do zrozumienia działania frameworków – zwłaszcza, że frameworki narzucają wiele swoich specyficznych konwencji, jak choćby JSX w React.js czy słynne serwisy fabryk serwisów serwisów w Angular 1.x.

  • Frameworki – działanie ekosystemu frameworków JS takich jak Node, Angular i WebPack.

    Z wymienionych rzeczy tylko Angular to framework. Node.js to środowisko uruchomieniowe dla aplikacji JS, a o WebPacku już wspominałem.

  • AngularJS – najważniejsze koncepcje najważniejszego z frameworków JavaScript.

    Pisownia nazwy sugeruje, że chodzi o Angulara 1.x… który nigdy nie był najważniejszym frameworkiem – zwłaszcza biorąc pod uwagę ilość krytyki pod jego adresem. Zresztą nawet jeśli chodziłoby o Angulara 2.0, to i tak nie można go nazwać najważniejszym frameworkiem! To stwierdzenie jest tak śmieszne i niczym nieuzasadnione, że nie wiem nawet, jak je skomentować.

Prawdę mówiąc mam nadzieję, że tak reklamowany bootcamp będzie jednak miał wyższy poziom niż ta reklama. Bo tak duże nagromadzenie błędów merytorycznych w tak krótkim tekście po prostu przeraża.

3 komentarze do “Wpadki i wypadki #7”

  1. Bardzo dziękujemy za komentarz do oferty naszego Bootcampu http://eduweb.pl/bootcamp/FrontEndDeveloper. Przeanalizowaliśmy szczegółowo Pana sugestie i przekazaliśmy je do naszych copywriterów. Dziękujemy za rozwinięcie pojęć – niestety forma skróconej oferty nie pozwala na tak dokładną analizę każdego pojęcia, jak Pan tutaj przedstawił. Z kilkoma sugestiami się zgadzamy, kilka naszym zdaniem dotyczy źle zinterpretowanej interpunkcji (np. zwrot „technologie po stronie klienta” dotyczył JavaScript, a WebPacka, sformułowanie „narzędzia”). Co do innych, szanujemy Pana zdanie, ale pozostajemy przy swoim 🙂

    Pozdrawiamy!

  2. kilka naszym zdaniem dotyczy źle zinterpretowanej interpunkcji

    Podczas Bootcampu nauczysz się najważniejszych technologii działających po stronie klienta – będziesz pracował z JavaScript, AngularJS, jQuery czy narzędziami jak WebPack i Git

    Tego typu zdanie wskazuje na to, że to, co następuje po myślniku, jest wymienieniem technologii działających po stronie klienta, do których zaliczają się narzędzie typu WebPack, Git. Gdyby to zdanie było zapisane jako:

    Podczas Bootcampu nauczysz się najważniejszych technologii działających po stronie klienta – będziesz pracował z JavaScript, AngularJS, jQuery czy narzędziami jak WebPack i Git

    wówczas nie byłoby możliwości mylnej interpretacji. Zwłaszcza, że w języku polskim wtrącenia (a tym jest lista technologii po stronie klienta) wypada otoczyć odpowiednimi znakami interpunkcyjnymi z obydwu stron.

Skomentuj Eduweb.pl – frontendowy bootcamp — WebKrytyk.pl Anuluj pisanie odpowiedzi

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.