Warsjawa – konferencja „warsztatowa” dla programistów Java i okolic

Właśnie skończyła się tegoroczna Warsjawa – cykl „warsztatów” dla programistów Java (i okolic). Pierwszy raz brałem udział w imprezie o charakterze wyłącznie warsztatowym, więc jako „newbie” dzielę się wrażeniami.

Wyśmienita kawa od jednego ze sponsorów

Wyśmienita kawa od jednego ze sponsorów

Rejestracja

Pierwsza uwaga, to że proces rejestracji był bardzo nieintuicyjny, na co skarżyło się wiele osób z którymi rozmawiałem. Zapisanie się na dany wykład polegało na kliknięciu w wiersz z jego nazwą, a potwierdzenie polegało na zmianie koloru wiersza i, dla spostrzegawczych, na zmianie wartości licznika po prawej, co oznaczało ilość zapisanych.

Formularz rejestracji na Warsjawa

Formularz rejestracji na Warsjawa

Żeby jeszcze utrudnić, to żeby obejrzeć opis wykładu i prelegenta, należało kliknąć w małe literki „fl” po prawej stronie od opisu. Więc klikając w poszukiwaniu opisu, łatwo można się było omyłkowo zarejestrować. Żartowaliśmy że trudny mechanizm rejestracji miał odsiać mniej doświadczonych kandydatów do warsztatów.

Warsztaty

Techniki skutecznej komunikacji – z klientem i w zespole

Paweł Wrzeszcz - Techniki skutecznej komunikacji - z klientem i w zespole

Paweł Wrzeszcz – Techniki skutecznej komunikacji – z klientem i w zespole

Pierwszy warsztat, poprowadzony przez Pawła Wrzeszcza, okazał się dla mnie niezbyt wartościowy. Mimo ciekawych ćwiczeń w komunikacji i części teoretycznej, nie nauczył mnie nic nowego, jedynie trochę uporządkował wiedzę na temat komunikacji.

Rozmawialiśmy o sposobie prowadzenia rozmowy w ukierunkowaniem na siebie i na rozmówcę, o kwestii i roli pytań: zamkniętych, otwartych i sugerujących i o roli ciszy w dyskusji. Warte wspomnienia, że warsztaty Pawła powstały w oparciu o kurs Human-Computer Interaction oraz książkę Co-Active Coaching.

Wartościowe było to, że wszyscy uczestnicy warsztatu przedstawiali swoje opinie i doświadczenia. Jednak po wykładzie spodziewałem się trochę więcej wniosków praktycznych, gotowych rad czy może nawet narzędzi. A skończyło się wyłącznie na wiedzy teoretycznej.

Pełne zanurzenie w Scruma dla developerów

Wòjcech Makùrôt - Pełne zanurzenie w Scruma dla developerów

Wòjcech Makùrôt – Pełne zanurzenie w Scruma dla developerów

Warsztat ze Scruma poprowadzony przez Wòjcecha Makùrôta to była z kolei esencja praktyki. Począwszy od stworzenia Product Backlogu warsztatu, zaplanowanie 3 jednogodzinnych sprintów, potem przez ich realizacje i introspekcje. I to wszystko w narzędziu Jira Agile, z której niedawno zacząłem korzystać. Do tego praktyczne ćwiczenia naocznie pokazujące przewagę samoorganizujących się zespołów oraz rolę samodoskonalenia.

Ciekawy był też wątek o zwinnym ofertowaniu, czyli czymś z czym zawsze jest największy problem – prowadzący sugerował rozwiązanie polegające na pozostawieniu klientowi możliwości rezygnacji w dowolnym momencie z kontynuacji projektu pod warunkiem zapłacenia kwoty 20% za niewykorzystane sprinty. Po zastanowieniu się doszedłem do wniosku, że to bardzo „sprytne” i fair rozwiązanie dla obu stron.

Po takim wykładzie zacząłem się poważnie zastanawiać czy nie chciałbym pracować w takim zespole i czy nie naciskać na większą popularyzacje takiego rozwiązania w firmie…

Selenium, jak odciążyć testerów a w domu znaleźć wymarzone auto na mobile.de

Krzysztof Nielepkowicz - Selenium, jak odciążyć testerów a w domu znaleźć wymarzone auto na mobile.de

Krzysztof Nielepkowicz – Selenium, jak odciążyć testerów a w domu znaleźć wymarzone auto na mobile.de

W sobotę z samego rana Krzysztof Nielepkowicz poprowadził warsztaty z Selenium. Tutaj organizacja trochę zawiodła. Krzysiek słusznie chciał ułatwić nam prace dostarczając obraz VirtualBox z gotowym systemem z odpowiednimi narzędziami. Jednak w praktyce jego kopiowanie i uruchamianie trwało długo, a po uruchomieniu okazało się, że może on pracować z maksymalną rozdzielczością 1024×768. W przypadku uruchomienia go na ekranie laptopa HD, a takimi dysponowała większość uczestników, dawało to maleńkie i niewygodne okno w którym trzeba było uruchomić Eclipse i przeglądarkę. W trakcie warsztatów okazało się, że tak naprawdę potrzebny był tylko Firefox z jednym pluginem, Eclipse i w nim jeden projekt… To można było dużo bardziej przyjaźnie zorganizować wysyłając wcześniej uczestnikom wymagania do instalacji na własnym, macierzystym systemie.

Pomijając kwestie techniczne, to sam warsztat był dosyć ciekawy i fajnie wprowadzał w tematykę Selenium. Ja osobiście jednak nie poczułem pozytywnych efektów tego rozwiązania – za bardzo czułem „ducha” podobnego narzędzia IBM Functional Tester, z którego korzystaliśmy niemal dekadę temu…

The Art of Giving Technical Presentations

Venkat Subramaniam - The Art of Giving Technical Presentations

Venkat Subramaniam – The Art of Giving Technical Presentations

Venkat Subramaniam - The Art of Giving Technical Presentations

Venkat Subramaniam – The Art of Giving Technical Presentations

Pan Venkat Subramaniam to mój guru prowadzenia wykładów, którego już kiedyś widziałem w akcji. Ten wykład dla mnie, jako ciągle początkującego prelegenta, był esencją wskazówek, jak sprawić aby ludzie z uwagą słuchali tego, co chce im się przekazać. Wykład świetnie poprowadzony, podparty minimalistyczną prezentacją, która składała się wyłącznie z białych napisów na czarnym tle, bez żadnej grafiki i zdjęć.

Po samym wykładzie był krótki warsztat polegając na przedstawieniu swojej prezentacji przez ochotnika spośród słuchaczy, a pozostałe osoby przedstawiały swoje krytyczne uwagi.

Z ciekawszych rzeczy które przedstawił Venkat, warte odnotowania są takie, że on robi około 40 prezentacji rocznie (!). Odradza stosowania „live coding”, a także odradza stosowania w prezentacjach list wypunktowanych – czegoś co bardzo lubię… Deprymująca, ale dająca też nadzieję początkującym prelegentom była uwaga, że trzy pierwsze prezentacje i tak się nie mogą udać…

Practical Spring Data

Jarosław Pałka - Practical Spring Data

Jarosław Pałka – Practical Spring Data

Na wykład Jarka Pałki, którego także widziałem wcześniej w akcji, szedłem z nastawieniem że będzie konkretne kodowanie. I tak było, tylko ja okazałem się na nie kompletnie nieprzygotowany – a to za sprawą e-maila, którego Jarek wysłał do prelegentów wczoraj o 19:00, a którego ja odczytałem dopiero przed samym warsztatem. Efekt tego był taki, że kiedy wszyscy już kodowali modyfikując przykłady dostarczone przez Jarka, ja przez pierwszą godzinę starałem się jednocześnie słuchać informacji o Spring Data i panicznie skonfigurować Eclipse, tak żeby przy pomocy plugina do Mavena 3 wycheck’outował repozytorium z Mercurial. Niestety, mimo szczerych chęci nie byłem w ostatecznie w stanie zmusić tych projektów żeby się kompilowały i poddałem się, słuchając wykładu i przyglądając się tylko modyfikowaniu kodu przez prowadzącego.

Wykład, oprócz ogólnej wiedzy o używaniu Spring Data z różnymi bazami pod spodem, dał mi do myślenia jak bardzo oddaliłem się od popularnych frameworków, ze Springiem na czele…

Zakończenie

Warsjawa - zakończenie konferencji

Warsjawa – zakończenie konferencji

Na zakończenie organizatorzy spędzili tych wszystkich uczestników, którzy pozostali do końca warsztatów i w ciekawy sposób przedstawili podsumowanie konferencji od strony organizacyjnej.

Podsumowanie

Wybór Wydziału Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego (MIMUW) w Warszawie był dla mnie bardzo wygodny – blisko pracy i domu. Dużo sal wykładowych dało możliwość prowadzenia wielu warsztatów jednocześnie. Niestety, w większości były to zwykłe sale wykładowe nieprzystosowane do jednoczesnej pracy na kilkudziesięciu laptopach, więc organizator starał się dostarczyć niezbędną infrastrukturę, która polegała głównie na plątaninie przedłużaczy z rozgałęziaczami i ruterów z dostępem do sieci internet. Do tego dostępne było WIFI, które działało bardzo przyzwoicie.

Infrastruktura

Infrastruktura

Jak to najczęściej bywa, kolejną bolączką były słabe projektory i sale bez rolet, co w niektórych przypadkach sprawiało że prezentacje były mało czytelne. Jednak dzięki kreatywności prowadzących, zawsze udawało się z warsztaty przeprowadzić.

Bardzo fajnym elementem była wyśmienita i darmowa kawa od jednego ze sponsorów – naprawdę stawiała na na nogi.

Wyśmienita kawa od jednego ze sponsorów

Wyśmienita kawa od jednego ze sponsorów

Ciekawym rozwiązaniem było zapewnienie jedzenia przez bary foodtruckowe – dzięki temu był duży wybór jedzenia, sprawna organizacja i niewielki koszt dla uczestników.

Warjsawa - foodtrucki na dziedzińcu MIMUW

Warjsawa – foodtrucki na dziedzińcu MIMUW

Kolejnym ciekawym elementem było przedszkole dla dzieci uczestników warsztatów – IMO bardzo ciekawa inicjatywa, z którą pierwszy raz się spotkałem.

Przedszkole przy warsztatach

Przedszkole przy warsztatach

Oczywiście sponsorzy zapewnili swoje stanowiska informacyjne – można było zapoznać się z szeroką ofertą firm oferujących pracę, głównie dla programistów Java.

Warjsawa - stoiska sponsorów

Warjsawa – stoiska sponsorów

Reasumując: fajna impreza, ale następnym razem muszę trochę lepiej wybrać wykłady, raczej bardziej technicznie i z większą ilością kodowania, oraz lepiej się na nie przygotować.

O autorze

Marek Berkan Marek Berkan: programista, entuzjasta tworzenia oprogramowania, zarządzania zespołami technicznymi. Prywatnie motocyklista, kolarz MTB, biegacz, żeglarz, rekreacyjny wspinacz, zamiłowany turysta. Witryny: , , .

4 komentarze do “Warsjawa – konferencja „warsztatowa” dla programistów Java i okolic

  1. Piotrek

    Bardzo dobry i rzetelny skrót z warsztatów. Również i ja chętnie wypowiem się co do moich odczuć (wzbogaconych o wnioski z rozmów z innymi uczestnikami konferencji). Dla wielu prelegentów warto byłoby wziąć sobie do serca wykład Venkata Subramaniama, szczególnie treści dotyczące obrażania i krytykowania innych. Jeżeli chodzi o Scruma to Jira zapewnia bardzo fajne narzędzia, ale jest jeszcze inna bardzo dobra alternatywa dla zespołów którą można używać od firmy JetBrains : http://www.jetbrains.com/youtrack/ . Co więcej Scuma trzeba uszyć pod własną firmę, nie można z góry go narzucać, są ludzie, którzy nie mogą pracować w Scrumie. Ja jestem jego wielkim miłośnikiem i jeżeli warto przeczytać jakąś książkę to gorąco polecam tą : http://mariuszchrapko.com/book/scrum-o-zwinnym-zarzadzaniu-projektami/ (sam mam wydanie w formie e-booka, także chętnie Ci mogę pożyczyć jakby co 🙂 ). Jest tam bardzo praktycznie opisane jak zacząć i jak nie wpaść w pułapki. Prawda taka, że dobry waterfall jest lepszy niż zły scrum. Ja osobiście nie zgadzam się z prowadzącym, że 2 tygodniowe sprinty są najlepsze, one są super, ale jeżeli zespół jest dojrzały i niezmienny i zna już scruma. Na początek lepiej używać 4 tygodniowych i schodzić z czasem do granicy 2 tygodni (jeżeli zespół nie zna Scruma i go nie czuje to narzut wynikający z jego organizacji jest na początku za duży). Co więcej na warsztatach stwierdzono, że Kanban jest do wdrożenia po Scrumie. Nie jest to do końca prawda. Kanban wywodzi się z fabryk produkcyjnych, a więc w naturze nie musi służyć do zwinnych metodyk. Kanbana warto znać i stosować nawet w modelu kaskadowym. Uczy on dobrej organizacji i uwidacznia problemy. Jest prostszy we wdrożeniu niż Scrum. Kanban dużo lepiej sprawdza się jako dodatek do Scruma, a jest wręcz jeszcze lepszy przy projektach utrzymaniowych. Warto zwrócić uwagę na fakt, że warsztaty z refactoringu kodu w Eclipse miały na minutę przed startem 1 uczestnika ! W komentarzach wiele osób uznało, że Eclipse jest lata świetlne do tyłu wobec następnego produktu JetBrains : http://www.jetbrains.com/idea/ . Co ciekawe, w trakcie warsztatów z Javy 8 prowadzący uznał, że szokującym jest jak dobrze pracuje się w nowej wersji NetBeansów (sam uznał, że zapomniał, że to IDE jeszcze jest rozwijane).

    Odpowiedz
    1. Marek Berkan Autor wpisu

      Youtrack wygląda fajnie ale z punktu widzenia naszej organizacji naturalnym rozwiązaniem jest Jira+Agile bo to umożliwia nam płynną migracje, nawet gdyby był to trochę gorszy produkt…

      Odpowiedz
  2. Marcin Wojtczuk

    Skoro warsztaty z Selenium wymagały Eclipse, to znaczy że środowiskiem sterującym Selenium była Java. Wtedy rzeczywiście nie ma wielkiej różnicy w porównaniu do Rational Functional Tester. Polega ona właściwie jedynie na gotowej i opisanej metodyce wpięcia takiego rozwiązania w Jenkins.

    Prawdziwą moc Selenium pokazuje gdy kontrolowane jest środowiskiem i semantyką języka typy python czy Ruby. Wtedy możliwość używania składni jQuery jako selektorów elementów czy typowo funkcjonalne możliwości przekazywania funkcji jako argumentu znacząco uprzyjemniają pracę.

    Samo Selenium zresztą nie jest aż tak ciekawe jak frameworki ogarniające cały proces testów, typu np. py.test. Przy użyciu PyCharm IDE można wtedy bezpośrednio w IDE kontrolować i debugować proces testów automatycznych.

    Zapraszam na demonstrację 🙂

    Odpowiedz

Skomentuj Marek Berkan Anuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *