4Developers - byliśmy tam!
Kolejny rok i kolejna konferencja 4Developers już za nami. Dla niewtajemniczonych 4Developers to jedna z największych polskich konferencji poświęconych programowaniu, która odbywa się w Warszawie w okresie wiosennym, a której charakterystyczną cechą jest szeroka, bardzo przekrojowa tematyka obejmująca wiele języków programowania i technologii.
Jak co roku oczywiście nie mogło nas tam zabraknąć i dlatego już jakiś czas temu kupiliśmy bilety (choć niektórzy przekornie czekali do ostatniego dnia, kiedy były najdroższe) i ustaliliśmy szczegóły podróży. W dniu wyjazdu wynikło niewielkie zamieszanie, w konsekwencji którego dotarliśmy do Warszawy w pomniejszonym składzie (ale bez obaw, nikomu nic się nie stało).
Sama impreza zwyczajowo odbywa się w hotelu Sangate, który mieści się trochę na uboczu (z dala od centrum Warszawy), co jednak – z uwagi na wyjątkowo dobrą komunikację miejską – nie stanowi dużego problemu. Trzeba przyznać, że jak na hotel, którego według recenzji rzekomo jedyną zaletą jest bliskość lotniska, posiada on wyjątkowo przestronną przestrzeń konferencyjną. Składają się na nią trzy piętra, a na każdym z nich znajduje się kilka sal połączonych w miarę przestronnym korytarzem. Jednak z uwagi na sporą liczbę uczestników (wstępne szacunki mówią o 2500) zaczęło się robić ciasno zwłaszcza na klatkach schodowych, po których między prelekcjami przemieszczały się tłumy.
Może kilka słów o samych prelekcjach. Są one zwyczajowo krótkie (do 45 minut) i podzielone na $x ścieżek tematycznych (w tym roku $x = 14), pomiędzy którymi można się dowolnie przemieszczać. To pewnie tłumaczy ten ruch na schodach, gdyż konkretne sale były permanentnie przypisane do danej ścieżki. Zakres tematyczny obejmował wszystko. Od .NET, C++, PHP, Python, Java, JavaScript, kilka ścieżek związanych z architekturami i metodykami tworzenia aplikacji, po nieco odstające Soft Skills i Business Relations, dla nielicznych jak mniemam przedstawicieli biznesu odwiedzających tę konferencję.
Sama konferencja jest organizowana przez firmę PROIDEA, dla której należą się ogromne brawa za profesjonalizm. Duże ekrany, solidne rzutniki, porządny sprzęt nagłaśniający, wsparcie techniczne dla prelegentów, wydrukowane i czytelne agendy, doskonałe oznaczenia. Naprawdę nie ma się czego przyczepić. Największym minusem całej imprezy był wliczony w cenę posiłek, podany w postaci lunchboxów, który okazał się być zupełnie zimny i miejscami niedogotowany, ale to już nie do końca wina organizatorów. Za to przekąski i ciasteczka dostępne na korytarzach w trakcie trwania całej imprezy były rewelacyjne.
Jednak nie jechaliśmy na 4developers by zaspokoić tego rodzaju apetyt, byliśmy wszak głodni przede wszystkim wiedzy. Swoją drogą mam wrażenie, że największa zaleta 4developers – ogrom wiedzy i informacji dostępny w ciągu zaledwie jednego dnia jest dla nas, uczestników, przyczyną wielu frustracji i dylematów. Na jaki wykład pójść, a z czego zrezygnować. Osobiście przygotowałem sobie na każdą godzinę pobytu prawie trzy interesujące wykłady i postanowiłem improwizować na miejscu.
Wyszło całkiem nieźle, choć na pierwszy wykład trafiłem przypadkowo, szukając zupełnie innej sali, a że już się rozpoczynało i dostrzegłem ostatnie wolne miejsce, to wiele się nie zastanawiając po prostu usiadłem. Okazało się, że trafiłem na ścieżkę Bottega It Minds i wykład weterana programistycznych eventów – Mariusza Gila i jego świetny wykład o Event Stormingu. Trzeba przyznać, że prawie cała ścieżka sponsorowana przez Bottega stała na wysokim poziomie, zwłaszcza wykłady Jakuba Pilimona poruszające ogólnie tematykę Domain Driven Design. Największe wrażenie chyba zrobił jednak Sławomir Sobótka ze swoim „DDD Q&A – czyli co gryzie programistów”. Na wykładzie prowadzący próbował udzielić odpowiedzi na pytania z którymi styka się, prędzej czy później, każdy zespół stosujący DDD – jak określać granicę agregatów, czym kierować się przy modularyzacji itp. Z pewnością był to jeden z najlepszych wykładów na konferencji.
Nie mam pojęcia, czy był to cel zamierzony, ale właśnie tematyka powiązana z architekturą aplikacji i DDD bardzo mocno przewijała się również na innych wykładach. Powiązane tematycznie wykłady na ścieżce PHP to np. „Architektura Heksagonalna w PHP” , całkiem dobrze przeprowadzony przez Karola Mocniaka, czy rozwijający pewne zagadnienia CQRS Mariusz Gil, który nieco nawiązał do swojego pierwszego wykładu z Bottega It Minds.
Jeśli chodzi o Architektury Aplikacji, to dwie ścieżki nazywały się po prostu tak – Architektury Aplikacji I i II i oczywiście omawiały wszystkie teoretyczne zagadnienia z nimi związane, przewijały się na wykładach tematy DDD, Event Sourcingu, TDD i generalnie panował wyraźnie wyczuwalny trend w odchodzeniu od monolitów i wykorzystywaniu bardziej dynamicznych i elastycznych struktur.
Całkiem sporo pojawiło się także zagadnień związanych z frontem. Dominował oczywiście React. Pewnym zaskoczeniem było to, że ścieżka Allegro w tym roku była praktycznie całkowicie poświęcona frontowi i generalnie nie było tam żadnych rewelacji. Nawet wykład Sergeya Bolshova, na który czekaliśmy, okazał się co najwyżej przeciętny. Bardzo interesujące były osobne ścieżki poświęcone JavaScript, które poruszały najróżniejsze tematy – od tworzenia własnej kryptowaluty w JS, przez prezentacje przydatnych bibliotek, aż po programowanie funkcyjne. Niestety JS też miał swoje słabsze punkty, jak np. wykład o WebAssembly, który skończył się praktycznie po 15 minutach.
Jednym z ostatnich modnych słów, które również przewijało się przez tematy wykładów było „serverless”. Nie było zaskoczeniem, że Bottega It Minds również postanowiła wskoczyć na ten wózek, lecz niestety ich wykład prowadzony przez Szymona Wardę był zupełnie nietrafiony – zabrakło myśli przewodniej, a całość sprawiała wrażenie niepowiązanych ze sobą slajdów, które ktoś wylosował z google images. Cóż, nie może być idealnie. Z „serverless” spróbował się także zmierzyć Michał Kurzeja na ścieżce PHP, który zaprezentował rezultaty swoich eksperymentów z AWS i PHP. Całość była znacznie ciekawsza, zwłaszcza, że pojawił się tutaj, tak rzadki na tegorocznej konferencji kod źródłowy i próby rozwiązania konkretnych problemów (brak natywnego wsparcia dla PHP w chmurze). Jakie były rezultaty jego działań? Okazuje się, że można uzyskać serverless w PHP – udało mu się nawet uruchomić Symfony, ale nie jest to rozwiązanie pozbawione wad.
Reasumując – poziom generalnie był satysfakcjonujący, poza kilkoma słabszymi punktami. Trochę zabrakło tego „develop” i wgryzania się w kod, co w poprzednich latach szczególnie przyciągało wielu uczestników , ale trzeba przyznać, że większość zagadnień teoretycznych trzymała poziom i omawiała bardzo aktualne trendy i zagadnienia. Widać, że 4Developers to wciąż jedna z najlepszych polskich konferencji dla programistów. Warto było na nią pojechać i na pewno w przyszłym roku zawitamy na niej ponownie.