CodeEurope – subiektywna relacja z Warszawy (PL)

Słowo wstępne

Gdy to piszę CodeEurope Warszawa 2016 to już historia. Ale że nie minęło dużo czasu (w sumie to godziny) to napiszę coś na świeżo.

Pojechałem

Poranek

Wczesna pora. Wrocławskie drogi były puste jak nigdy. Znacznie ułatwiło to drogę na dworzec. 5:30 odjazd pociągu. Pełen luksus jak zawsze w polskiej kolei : klimatyzowane ciepłe wagony, kawa na pokładzie, laptop z „długą baterią” i prąd pod siedzeniem – EIC jest sprawcą mojego dev-rozwoju!

Pierwsze wrażenia i oczekiwania

Stadion narodowy w Warszawie to nie tylko całotygodniowe lodowisko, na konferencyjnym 2. piętrze rozstawiła się cała świta małego polskiego światka IT wraz ze wszystkimi panami i paniami ładnie reklamującymi swoją firmę która na koniec i tak okazuję się takim samym smutnym korpo albo niedojrzałym startupem jak poprzedni wpis w CV 😛
Cóż tam oni, zaraz zaczyna się pierwszy wykład na który jestem spóźniony, bo jednak idealny pociąg okazuje się nie być idealnym do końca – mimo „ekspresu” w nazwie jest 15 minut później. Zdyszany wpadam na 1. wykład. Szczególnie oczekiwany. Najbardziej byłem ciekaw wywodów kolegi z Amazon/Google nt. silników wyszukiwania i osławionego Crockford’a rozprawiającego o ciemnych stronach JS.

Konferencja

Pozwolę sobie w kilku słowach opisać to co zapamiętałem korzystając z niektórych prelekcji.

Szukamy i skrobiemy – O’Neall

W fascynującym So, how do Google, Bing and Yahoo work? pan O’Neill opisał działanie silników wyszukiwania. Indeksy którymi panowie w wyszukiwarkach operują to na prawdę BIIG data. Nie byłem świadomy że na prawdę ogrom pracy wykonują ludzie – którzy ręcznie oceniają i kategoryzują teksty. Machine learning potrzebuje czasem ludzkiego czynnika. Nie wiem czy wiesz ale Ty też wspierasz wyszukiwarki. Każdym zestawem słów uczysz mechanizm że są to słowa powiązane, dzięki temu Twojemu następcy będzie już łatwiej.

Nie lekceważ potęgi Search’u

Po wykładzie podszedłem do Allena zapytać czemu nie wspomniał o moim koniku : Elasticsearch. Ale okazuje się on też jest tam wykorzystywany do przeglądania historycznych danych. Prelekcję zakończyły bardzo interesujące porady nt. tworzenia web-scrapera samemu. Zabrakło mi jedynie tzw. prawnych kwestii które się rodzą w temacie polityki prywatności i zasad wykorzystywania portali. Koniec końców mam mobilizację do dokończenia mojego projektu scrap i indeksuj (do ES oczywiście).

Java8 – Nihil Novi

Spodziewałem się nieco więcej po 12 rzeczy o Java 8 Jakuba Marchiwckiego ale w sumie poszedłem może ze zbyt wygórowanymi oczekiwaniami. Ale spodobało mi się określenie

Java to już dorosły język

dlatego od pojawienia się strumieni nie musimy mówić jak ale co ma zrobić i ona już wie jak sobie z tym poradzić. Fajnie, że teraz można się skupić bardziej na biznesowych zadaniach – dobrze uwidocznił to Jakub na przykładzie analizy pliku CSV.

Nowy JS to już nie ten JS (this JS) – ECMA6

Przegląd najważniejszych cech nowego JS był przedsmakiem do wytwornej kolacji (wykład Crokforda), której wszyscy nie mogli się już doczekać. W FutureJs Jakub Waliński zaprezentował parę smaczków nowego(lub/i)lepszego Javascript a właściwie ECMAScript. Szczególną nadzieje wiąże z pozbyciem się odwiecznego problemu var na rzecz let i const co raz na zawsze rozwiąże problem dziwnie – z punktu widzenia programisty JAVA – zachowujących się var-ów. Nie musimy już też martwić się bardzo wieloznacznym this, gdy mamy arrow functions. Czas na pogodzenie się z Babel i niepisanie już w jakże starożytnym ES5.

Dzielna Czeszka z Cambridge szybko analizuje duże dane ze Stackoverflow

Gdy kobieta ma prelekcję zawsze spodziewam się czegoś fajnego. Jakaś odmiana. Miękkie, ludzkie spojrzenie na programowanie. Ale tego się nie spodziewałem, niepozorna na pierwszy rzut oka Evelina Gabasova wgniotła nas wszystkich w fotele i krzesełka analizując z pomocą F# dane ze Stackoverflow na naszych oczach. To była najpłynniej i najciekawiej przeprowadzona prelekcja jaką do tej pory widziałem, ever. Swoją drogą to na prawdę niezłe: w tym F# że można te dane analizować z taką łatwością z wielu źródeł danych.

Nie zrobi ojciec nie umie matka tego co zrobi w F# templatka

W kilku linijkach dosłownie Evelina analizowała na naszych oczach HTML, JSON żeby przeprowadzać na nich operacje i dopasowania matematyczne których efektem były zaawansowane statystyki. Dowiedzieliśmy się m.in. jakie języki są przez programistów wykorzystywane ‚po godzinach’ a także jakie pojęcia (tagi) są ze sobą powiązane, jakie agregacje pojęć można spotkać na Stack’u. I to rzeczywiście działało, wszelkie powiązania jakie znalazła były jak najbardziej uzasadnione. A jakby tego mało to importowała funkcje z R bo było jej mało i skompilowała to jeszcze do JS żeby robić ładne „widoczki”. Po prostu pełny profesjonalizm a do tego ŚWIETNY przekaz: płynnie i bardzo interesująco opowiedziane. Jest się na czym wzorować. Polecam.

Czarnobiała prawda Doug’a – dla JS nie ma szans

Znany z wielu książek nt. Javascript Douglas Crokford był wisienką na torcie w tym dev-dniu. Rozpoczął od uroczego przedstawienia uroczej zasady pewnej Japoneczki KonMari która zaleca odśmiecanie na wielką skalę. W domu należy pozostawić tylko rzeczy, co do których jesteśmy w stanie twierdząco odpowiedzieć sobie na kluczowe pytanie

Does it spark joy?

Jeśli nie wytwarza w tobie to pozytywnych uczuć : do śmieci. I tak właśnie pan Douglas bez ogródek potraktował następujące tematy:

  • po co nam tab w ASCII (zaszłość po maszynach do pisania)
  • var vs let i const
  • null i undefined (twórca idei NULL w Java po dziś dzień miewa koszmary)
  • funkcje które przy kolejnych wywołaniach zwracają różne wyniki (niezgodnie z matematyką)
  • generatory z ES6
  • try catch finally jako próba ukrycia GOTO
  • nieobowiązkowe {} w if
  • JS matematyka (0/0, 0*NaN, 0.1+0.2 != 0.3)
  • niefortunne nazewnictwo throw
    Ogólnie chciałby napisać język od nowa ale uważa że dobrze że powstał ten ES6. Troszkę naprawi. Ale niewiele.
    Cała prezentacja w zupełnych ciemnościach i czarnobiałe Matrix-slajdy zrobiły wrażenie. Wyszliśmy jak Neo.

Polecam.
Luke-Konf-Walker