18 kwietnia 2013

4Developers z Wojtkiem z Androidem i Kubą ze Spring Data w akcji

Wybrałem się na konferencję 4Developers wcześnie rano. Na miejscu pojawiłem się około 8:30.

Pierwsza niespodzianka to kolejka. Długa. Za długa, abym w niej stał, więc wszedłem bez rejestracji.

Korytarz długi i ciasny - z pewnością nie zachęca do dłuższej bytności. Samo usytuowanie budynku, w którym odbywała się konferencja umieszczam po stronie zalet konferencji, ale już same sale i dwa piętra idą na stronę wad. To bodaj najtrudniejsza część podczas organizowania konferencji - dobrego miejsca typu sala kinowa dorobił się jedynie GeeCON i za to wyróżniłbym tę konferencję. Pozostałe wciąż borykają się z doborem właściwego miejsca.

Rozejrzałem się po salach w poszukiwaniu +Bartek Zdanowski i +Wojtek Erbetowski. Właśnie ich wybrałem jako prelegentów z tematami jQuery kickstart (Bartek) oraz Testowanie Androida z mocą Grooviego i Spocka (Wojtek). Wybór nie był łatwy i trudno nawet było zdecydować się na pierwszego, tzn. z jednej prezentacji trzeba było wyjść w połowie, aby pojawić się na drugiej i wyjście z sali nigdy nie należy do przyjemnych dla obu stron.

W końcu trafiłem do sali Bartka. Słówko i miałem już ustawiony plan. Zostanę u Bartka, a w połowie ewakuuję się do Wojtka. Jak się później okazało, plan nie wypalił i kiedy już spotkałem się z Wojtkiem, tak już zostało i przesiedziałem całego Androida u niego.

Zanim jednak prezentacja się rozpoczęła, trafiłem do sali, w której zaplanowane były warsztaty z platformą .Net. Jeszcze nikogo nie było w sali poza prowadzącym i innym gościem - rozmawiali o czymś. Korzystając z chwili zapytałem o F# i programowanie funkcyjne na .Net. Odpowiedź jaką dostałem była najgorszą z możliwych - nie znam i nie korzystam z F#, bo…Microsoft tego nie promuje (!) Co?! To potrzeba firmy, aby poznać język, który swoim podejściem może zmienić rozwiązywanie problemów?! Zmroziło mnie.

Według obu Panów, C# daje wszystko, co może programista .Net potrzebować. Chcesz funkcje? Są w C#. Chcesz programowanie funkcyjne? Cóż, może nie jest takie, jakiego moglibyśmy oczekiwać, ale skoro nie oczekuję wiele, więc jest w porządku. Co za ludzie?!

Szczęśliwie, jeden z nich okazał się mniej potrzebującym wsparcia Microsoft, aby poznać F# i wspomniał nawet o Scali, którą porównałem do F# jako alternatywy. Moje postrzeganie platform .Net vs JVM jest takie, że Javę przyrównałbym do C#, aby Scalę przyrównać do F#. Nie twierdzę przy tym, że języki są zamienne, ale że dają podobne możliwości w swoich "środowiskach" - z pewnością pod kątem wsparcia dla programowania obiektowego (Java i C#) oraz funkcyjnego (Scala i F#). Osobiście nie przesiadłbym się na C#, ale gdyby zaproponowano mi projekt z F#, miałbym problem z odmówieniem. Zresztą to samo tyczy się Scali, Clojure i F#.

Byłbym zapomniał, ów prowadzący warsztaty stwierdził coś jeszcze (spróbuję przytoczyć dosłownie): "W C# jest Linq, więc jest dobrze i mam trochę smaczku funkcyjnego, a F# nie potrzebuję, bo klientów to nie obchodzi i…jest mało programistów znających temat". Cóż, wyczułem opór i nie parłem do przodu.

U Wojtka Erbetowskiego o RoboSpock'u


Poszedłem szukać Wojtka. A ostatecznie to Wojtek mnie znalazł przechodząc do swojej sali.

Zaczęliśmy z lekkim opóźnieniem oczekując liczniejszej publiki - naliczyłem 7 osób na sali, a że temat ciekawy - RoboSpock - to można było oczekiwać kilku więcej. Niestety, zostaliśmy w kameralnej atmosferze do samego końca. W końcu, jak to ujął Wojtek, co 4 uczestnik to prelegent, więc trudno było oczekiwać większej frekwencji w salach.

I to była zaleta tej prezentacji. Poczułem się trochę, jakby Wojtek przygotował się specjalnie dla mnie. Szczęśliwie była jeszcze jedna osoba, która próbowała zawłaszczyć spotkanie dla siebie i wspólnie nakręciliśmy interakcję z prelegentem.

Pierwsza rzecz, którą dostrzegłem w prezentacji Wojtka to przeraźliwy brak pewności w głosie. Rano daje się to specjalnie odczuć, kiedy ludzie potrzebują pewniaka. Wojtkowi zabrakło tego, choć nadrabiał pewnością znajomości tematu. Tutaj nie miałem złudzeń, że jesteśmy u najlepszego!

Niespodzianką prezentacji były slajdy na github.io. Pamiętam pierwszy raz u Kuby Nabrdalika (podczas ostatniego spotkania WJUGowego), kiedy zobaczyłem tę domenę. Musiałem przegapić zmiany na GitHubie, bo nie wiedziałem, że na io można posadzić stronkę. Pewnie jeszcze można ją wersjonować. Jak to na GitHubie. Niczego innego nie oczekiwałbym. Robią to doskonale.

Kolejny prelegent z IntelliJ IDEA w użyciu. To chyba jakaś "plaga" w Polsce :-)

Do poprawki wrzuciłbym jeszcze slajdy - bardziej do czytania niż oglądania (czy to aby nie przez małą liczbę kotków?!) Tutaj widzę dużo do zrobienia w naszym warsztacie prezenterskim. Zwykle prelegenci to znawcy tematu (choćby w ograniczonym zakresie, ale wciąż przygotowani merytorycznie), ale oprawa leży - slajdy, gesty, mimika, głos, itp. Za mało nas publicznie wciąż. Może temat nagrywania skrinkastów mógłby to zmienić? Materiał krótki i możnaby dotrzeć do większej rzeszy osób, co sprawiłoby, że większy byłby strumień ocen.

Brawa dla Wojtka za utrzymanie czasu! Prezentacja poprowadzona sprawnie i z każdą minutą było widać coraz większe opanowanie w głosie. Możnaby jeszcze nad tym popracować. I proszę o zwrócenie uwagi na uwagę uczestników - oni patrzą nie tylko na slajdy, a Wojtek-prelegent niestety wciąż za rzadko na słuchaczy. Do poprawki.

Przypominam, że slajdy są nośnikiem najważniejszych treści - skoro mamy slajd z pytaniami, to czy nie byłoby bardziej wartościowe "usadowić" na nich danych o prelegencie, aby późniejszy kontakt był łatwiejszy? Do poprawki.

U Jakuba Kubryńskiego ze Spring Data


Poszedłem na prezentację +Jakub Kubryński o Spring Data. Zagadałem się na korytarzu z osobami przy stoiskach i wszedłem do Kuby już po rozpoczęciu.

Zasiadam w pierwszym rzędzie, a tu na ścianie widzę uruchomioną IDEA (znowu!) z testami, które...nie zadziałały. Wciąż nie wiem, czy to było zamierzone czy nie. Kuba, czytasz może?

In plus, opanowanie w głosie, wyważony ton i "czyste" slajdy - czcionka była cudna. Szkoda, że zabrakło obrazków, bo w pewnym momencie bardziej skupiłem się na czytaniu slajdów niż słuchaniu. Nie taka jest rola slajdów, co?!

A skoro o slajdach, to dlaczego były po angielsku?! Skąd pomysł, aby slajdy były po angielsku, podczas gdy językiem "urzędowym" był polski? Nie należałoby oczekiwać ujednolicenia - po angielsku lub polsku, whatever, ale jednolicie, please.

I to miętolenie butelki. Do wyrzucenia! Obowiązkowo korzystamy z rąk podczas prezentacji, ale ostatnią rzeczą może być wertowanie kartek, zabawa z długopisem czy butelką. Skutecznie przykuwało to moją uwagę i na pewno rozpraszało wielu.

Kolejny już prelegent, któremu bardziej zależy na kontakcie wzrokowym ze slajdami niż publicznością. To obniża u mnie chęć do zadawania pytań, bo trudniej zwrócić na siebie uwagę w takiej sytuacji. Proszę postawić się w mojej, uczestnika, roli - czekać na pauzę i wejść z pytaniem z impetem czy liczyć na uwagę prelegenta, który niestety nie wykazuje zainteresowania, i czekać na wywołanie? Zdecydowanie coś nad czym Kuba musi popracować.

Kiedy jednak pojawiła się uwaga Kuby na uczestnikach, to niestety, ale kończyła się na pierwszym rzędzie. Sala była długa i ciemna, więc mimo wczesnej pory, wielu mogło poczuć się w potrzebie zdrzemnięcia. Ja przez moment o tym pomyślałem, bo skoro brakuje mi uwagi Kuby, to wielokrotnie z zamkniętymi oczyma mogę wyłączyć niepotrzebne bodźce. To mógłby być dobry test przed wystąpieniem, aby sprawdzić, ile wnosi prelegent ponad lekturą slajdów - wystarczy nagrać siebie i odsłuchać później. Nigdy jednak tego nie próbowałem, więc trudno mi powiedzieć, jak bardzo jest to wartościowe.

Początkowo byłem zachwycony prowadzeniem prezentacji przez Kubę - było dynamicznie, treściwie i z pewnością w głosie - ale nie trwało długo (20 minut), kiedy zacząłem czuć zmęczenie. Dużo materiału do przeczytania na slajdach i to po angielsku, brak kontaktu wzrokowego, mało angażowania publiczności do dyskusji - nuda.

In plus, podparcie się gitem do zmiany kodu. Git na linii poleceń i przejście do IDEA, to coś, co lubię. Imponuje mi takie podejście do sprawy, które nazwałbym profesjonalnym. Ale hola, hola, skąd pomysł, aby uruchamiać gita z linii poleceń?! Czyżby IDEA nie była git?

Epilog


Niestety, prezentacja Kuby była ostatnią ze względu na "nieoczekiwaną zmianę miejsc" w moim terminarzu, więc jeszcze tylko słowo z organizatorem - Sławkiem Jabsem - i w drogę.

Gdybym był zapytany o wartość konferencji, napisałbym, że nie było nic, co uzasadniałoby jej cenę. Zabrakło mi tematów funkcyjnych (ogólnie i z językami typu Scala, Clojure i F#), współbieżności z java.util.concurrent, przetwarzania asynchronicznego w Java z java.util.concurrent.Future, nowości Java EE 7 z Web Socket w roli głównej. Zabrakło mi również dłuższej agendy na kilka dni z możliwością zamienienia słowa między kolejnymi dniami. Tutaj (kolejność przypadkowa) GeeCON i 33rd Degree wygrywa (przy założeniu, że trwają kilka dni). Dostrzegam wartość z możliwości rozmowy za kulisami z prelegentami, którzy mogą pokazać swój warsztat - sposób podejścia do problemu, skróty klawiszowe i ogólnie bieżące zainteresowania.

Zdecydowanie potrzeba mi konferencji, która byłaby na neutralnym gruncie - poza miastami typu Warszawa, Kraków, Poznań, Wrocław, Szczecin, Gdańsk. Taka teraz ładna pogoda - może Mazury? Na pewno część północno-wschodnia Polski wymaga uwagi. Anyone?