05 kwietnia 2009

Wrażenia z java4people w Szczecinie - wielkie brawa dla organizatorów

Nie mogłem życzyć sobie lepszej atmosfery podczas konferencji java4people 2009 w Szczecinie niż tą, którą zastałem w ostatnią sobotę 04.04.2009. Zacznę od zwrócenia uwagi na datę - 04.04.2009, podczas gdy wcześniejsza konferencja 4Developers odbyła się 03.03.2009 (!) W kolejce stoją jeszcze GeeCON w Krakowie i Javarsovia w Warszawie, ale ich daty nie są już tak fascynujące, tj. odpowiednio 7-8 maja i 4 lipca (wcześniejsza data czerwcowa została z braku sali przesunięta na lipiec, a byłoby chociaż utrzymane "co miesiąc to konferencja w Polsce").

Wracając do java4people, to organizatorom Szczecińskiemu JUGowi w osobie Leszka Gruchały i Pawła Stawickiego, i ich współtowarzyszom należą się najwyższe noty. Kiedy zobaczyłem dwie kamery, za którymi stali operatorzy wiedziałem, że skończyły się czasy konferencji java4people w wersji beta, a zaczęła się era w pełni profesjonalnych edycji. Do tego należy wspomnieć o grupie około 80 uczestników, którzy aktywnie wspierali prelegentów serią pytań, co przyczyniło się do dwustronnej wymiany spostrzeżeń i wiedzy zamiast nadawania jednokierunkowego - od prelegenta do uczestników. Nie brakowało niczego (może przydałaby się klimatyzacja, bo przy słonecznej pogodzie w sali potrafiło być bardzo duszno).

Wspólnie z Waldim dotarliśmy na konferencję około 9:30, kiedy to Paweł Szulc wygłaszał peany na temat testów jednostkowych w EJB3. Dzień zacząłem o 4:45, więc z przyjemnością zasiadłem w sali, aby wysłuchać wykładu...odpoczywając. Z wieloma tezami Pawła nie zgadzałem się i planuję odsłuchać wykładu jeszcze raz, aby upewnić się w moim myśleniu. Przekonałem się, że pokazywanie kodu z poziomu IDE i szybkie przeskakiwanie między edytorami może wprowadzić w lekkie zawirowanie w głowie uczestnika prezentacji (o czym wspominał już Jacek Kunicki w dyskusji Lego Mindstorms - podsumowanie po jego wystąpieniu w ramach Warszawa JUG), a o tyle mnie to zaniepokoiło, że ja zamierzałem zrobić podobnie. Ciekawostką u Pawła było wskazanie na projekt Apache OpenEJB (w którym jestem niezbyt aktywnym programistą) jako tego kontenera EJB 3.x, który pomoże w przypadku testów integracyjnych! Duży plus za tę reklamę!

Przyszła kolej na Waldiego. Chyba zmęczenie podróży się wzmogło i brak świeżego powietrza na sali, bo odniosłem wrażenie, że Waldi smęcił o Cometd (Reverse Ajax) i Bayeux, i innych, zamiast zapodać trochę kodu i przedstawić go w działaniu. A może po prostu byłem zbyt zaangażowany w konfigurację dostępu do sieci Wi-Fi, a później przeglądanie sieci w poszukiwaniu kolejnych ciekawostek o Grails, które mógłbym zaprezentować podczas mojego wystąpienia i dlatego mnie nużył (jak się później okazało, ja go później również, bo nawet pozwolił sobie na krótką drzemkę podczas mojego wystąpienia - niedobry Waldi, niedobry ;-)). Po około kwadransie dałem sobie spokój i jedynie wyrywkowo przechwytywałem sygnały Waldiego. Piszę dosyć krytycznie o jego wystąpieniu, gdyż Waldi to najwyższa liga i nie ma co jemu odpuszczać z wystąpieniami, na których potrafi dołożyć do pieca z ciekawym materiałem. Zdecydowanie oczekuję od Waldiego wzlotu na wyżyny i podczas GeeCONa prezentacji czegoś naprawdę ciekawego. Mówił mi po krótce, co planuje, więc nie mam złudzeń, że mnie nie zawiedzie.

Przyszła pora przerwy obiadowej z pizzą w tle. Wtedy udało mi się porozmawiać z kilkoma osobami, które planowałem już od dawna poznać osobiście. Namierzyłem Piotra Paradzińskiego i w końcu poznałem Pawła Szulca. Oboje to aktywiści i blogerzy z, odpowiednio, Lubelskiego i Wrocławskiego JUGa. Zamieniłem również słowo z Andrzejem Śliwą, na którego prezentację o Git'cie szykowałem się od dawna. Niestety, wtedy właśnie zdecydowałem się przeorganizować moją prezentację o Grails, więc zamiast skorzystać z okazji i poznać Gita dokładniej, zacząłem przygotowywać nowy scenariusz na moją praktyczną prezentację Grailsów - minimalna liczba slajdów i wiele, wiele kodu w akcji (w końcu miała to być slajdowa powtórka z 4Developers i obawiałem się, że może się niespodobać jej uczestnikom, którzy zawitali tym razem na java4people).

Przyszła pora na mnie i Grailsa. Miałem 1h 20 minut na zaprezentowanie 6 stron wydruków z przykładami do zaprezentowania (taka pomoc w razie gdyby coś nie wypaliło, co zauważyłem po raz pierwszy u Wiktora Gworka i wdrożyłem u siebie). Przeszedłem przez pierwszych kilka slajdów, aby po około kwadransie zabrać się za NetBeans IDE 6.7M3 i projekty grailsowe. W zasadzie to zacząłem najpierw od linii poleceń (bez IDE), a dopiero po kilku przykładach przeniosłem się na graficzne wspomaganie NetBeansem (zamiast zamęczać uczestników sztuczkami edycyjnymi w vi i cygwin). Prezentację poprowadziłem w stylu nierównej walki z czasem - z przygotowanych 6-ciu stron udało mi się zaprezentować jedynie 2, ale sądzę, że były to ciekawe 2 strony. Na moje pytanie o znajomość Grails nikt nie podniósł ręki, ale podczas prezentacji odniosłem wrażenie, że niedługo trwało, aby padały poprawne odpowiedzi na moje pytania o możliwe rozwiązania pewnych kwestii programistycznych w Grails - konwencja ponad konfigurację w Grails została przyswojona niezwykle szybko. I tak miało być. Dostałem od organizatorów kilka dodatkowych minut ekstra, więc bodajże po 1,5h skończyłem halsować po bezkresnych wodach Grails. Było wspaniale (pomijając wpadkę na samo zakończenie wystąpienia, kiedy to chciałem zaprezentować możliwość definiowania ziaren springowych w resources.groovy z definicją klasy String, którą właśnie co znalazłem w książce DGG2 - następnym razem się tym zajmę). Mimo wszystko, udało mi się zrealizować od dawna planowany scenariusz moich prezentacji z niewielką dawką slajdów, a wieloma przykładami praktycznymi. Zamierzam kolejne odsłony moich wystąpień poprowadzić właśnie w tym stylu. Slajdy będą, bo bez nich wielu mogłoby nie odnaleźć się w gąszczu surowej porcji nowej wiedzy, ale gro wystąpienia postaram się wypełnić programując.

Po mnie wystąpił Maciej Majewski z tematem Spring Web Flow (SWF). O tyle było to dla mnie ciekawe, że właśnie mam ten temat relacjonować z mojej lektury książki DGG2! Już się umówiłem z nim, że kolejnym razem musimy przestawić ten temat w kolejności - najpierw on ze Spring Web Flow w swojej naturalnej postaci (mnóstwo XMLa), po czym ja zaprezentowałbym Spring Web Flow z perspektywy Grails (z jego SWF DSLem). Gość wymiatał w IDEI i konfiguracji xmlowej, czym niejednego z pewnością wprawił w osłupienie. Jak trafnie zauważył, podczas konferencji pojawiły się wszystkie 3 środowiska IDE - Eclipse IDE (Waldi), NetBeans IDE (ja) i IntelliJ IDEA (Maciej i bodajże Paweł). Ta różnorodność również mogła się podobać publiczności.

Na zakończenie udaliśmy się z Waldim na imprezę integracyjną w restauracji w starym Ratuszu Staromiejskim, aby po około 1h zebrać się na podróż powrotną do Warszawy. Klimat konferencji został dopełniony wyśmienicie dobranym miejscem na integrację w ratuszu. Wielkie brawa dla organizatorów za nietuzinkowe przygotowanie i poprowadzenie konferencji java4people. W następnym roku chciałbym móc wziąć w niej udział ponownie. Innych również zachęcam.

Jako ciekawostkę zacytuję list, który dostałem zaraz po konferencji odnośnie mojego wystąpienia (nadawca zezwolił na publikację, ale prosił o anonimowość). Jest tam nie tylko o moim wystąpieniu, ale również w jaki sposób uczestnicy biorą w niej udział. Zdecydowanie za mało aktywnie i...odpuszczają prelegentom. Nie mam wątpliwości, że społeczność javowa w Polsce rozwija się wspaniale. Pewnie jeszcze wiele ciekawych spotkań i konferencji pojawi się w naszym kalendarzu, a i nowe JUGi z pewnością powstaną w innych miastach - marzy mi się rozruszanie Torunia, Opola i Olsztyna. Z nieukrywaną przyjemnością pomogę. Warto zrewidować swoje podejście do sprawy udzielania się pro publico bono, bo efekty mogą być niezwykle zaskakujące i miłe (jak chociażby zarzucenie ciągłego aktualizowania CV, nie wspominając o wiedzy, która rośnie w tempie wykładniczym - stres "prezentacyjny" robi swoje).

Wróciłem właśnie z konferencji java4people i wciąż jestem pod ogromnym wrażeniem Pana prezentacji. Przynajmniej na tyle, aby napisać email:)

Po pierwsze bardzo mnie cieszy, że się Pan zajmuje frameworkiem Grails. Dzięki Pańskim wpisom na blogu oraz prezentacjom może on stać się popularny w Polsce. Byłoby to bardzo dobre, bo w Grails pisze sie łatwo i przyjemnie. Wiele osób, które może niechętnie uczą się nowinek, gdy zobaczy że Pana Grails tak fascynuje to pomyśli sobie, że w tym naprawdę musi coś być i może warto w to zainwestować czas:).

Również bardzo dobrze się Pana słucha. To że ma Pan bardzo dużą wiedzę o prezentowanym temacie to jedna rzecz. Inna rzecz to naprawde fantastyczne umiejętności prowadzenia prezentacji tj. naturalna wewnętrzna pasja, genialne poczucie humoru! :), taka nieosiągalna dla więkoszości z nas pewność siebie na scenie, elastyczność w prezetacji, luz, spontaniczność, radość.

Zauważyłem w Panu niezwykłą pasję (szczególnie w tej krótkiej wymianie zdań po Pańskiej prezentacji). Tego typu pasja ma bardzo silną moc. Działa niezwykle motywująco. Planuje sobie zapisać Pańskie prezentacje z internetu na dysk, aby w krytycznych chwilach służyły mi za motywatory do działania.

Prawdopodobnie byłem tą jedną (poza Panem) osobą na sali, która juz miała jakieś pojęcie o Grails. Niestety zabrakło mi odwagi, aby zgłosić się, gdy Pan pytał o znajomość Grails, ale to przez to, że była to moja pierwsza (i zdecydowanie nie ostatnia) konferencja tego typu dotycząca Javy w której brałem udział.

Bardzo żałuje, że z powodu czasu odjazdu mojego ostatniego pociągu nie mogłem się spotkać z Panem jak i innymi na imprezie integracyjnej. Z drugiej strony może to i dobrze bo gdybym z Panem zaczął rozmawiać o Grails to pewnie trwało by to do samego rana i nie mogłby Pan wrócić do Warszawy na czas ;)

Mimo, ze praktycznie więkość rzeczy juz znałem wcześniej to i tak słuchanie Pana było wielką przyjemnością. Takie prezentacje mają to do siebie, że trwają duużo za krótko i zawsze chciałoby się wiecej :)

W zasadzie cel tego maila jest taki, że jeśli Pan jeszcze nie wie, jak wielkie wrażenie Pan robi na słuchaczach (przynajmniej na mnie), to ktoś w końcu musi Panu o tym powiedzieć :)