Konferencja 4Developers 2016

W ostatni poniedziałek (11.04.2016) odbyła się w Warszawie konferencja 4Developers 2016 – jej cechą szczególną, w odróżnieniu od innych konferencji na które jeżdżę, jest fakt że kierowana jest nie tylko do programistów Java. Ścieżka Java oczywiście jest obecna, jednak można też posłuchać o .NET, PHP, platformach mobilnych (Android i iOS) czy też Front-End Development’cie.

4Developers: stoiska partnerów konferencji

4Developers: stoiska partnerów konferencji

Na konferencji było bardzo dużo ludzi (podobno ponad 1200 osób), co rodziło spore problemy komunikacyjne (jedna wąska klatka schodowa łącząca 3 poziomy) oraz początkowy tłok na obiedzie – na szczęście przyjście 30 minut później dało możliwość konsumpcji w cywilizowanych warunkach ;-).

Stoiska sponsorów były „nieprzeszkadzające” – zebrane w jednej dużej sali. Ciekawostka jest taka że wyjątkowo nie było Allegro ;-), za to było dużo ofert dla programistów nie-Javowych.

Poniżej podsumowanie prezentacji których wysłuchałem.

Maciej Aniserowicz „O mikroserwisach mikro-fakty i mikro-mity”

Maciej Aniserowicz: O mikroserwisach mikro-fakty i mikro-mity

Maciej Aniserowicz: O mikroserwisach mikro-fakty i mikro-mity

Prowadzący z firmy Bottega w przystępny i atrakcyjny sposób przedstawił i ustosunkował się do szeregu mitów jakie można usłyszeć o architekturach opartych i micro-service’y:

  • nie jest to nowość, bo koncepcja była zapoczątkowana wo 2003 roku,
  • dają dobrą zabawę programistom, ponieważ można uruchamiać nowe projekty nawet raz w miesiącu za każdym razem korzystając z innej technologii (tzw. hack-value), łatwo się z nich wycofać, jeżeli decyzja jest chybiona,
  • nie są proste, bo wymagają skomplikowanej infrastruktury,
  • jak bardzo są micro? – trudno określić, jednak dobrą aproksymacją jest taka wielkość aby zespół mógł przepisać cały micro-service w tydzień,
  • powinny być niezależne od siebie, w szczególności powinny mieć własne bazy danych,
  • komunikacja pomiędzy nimi jest trudna, ale dużo wynika z braku doświadczenia,
  • micro-service są trudne w utrzymaniu, bo trzeba utrzymać dokumentacje, monitoringi i uważnie analizować logi,
  • nowy projekt może ale nie musi być micro-service’m, zależy od warunków i doświadczenia (trzeba znać Continous Integration i Continous Delivery), przy jego braku bezpieczniej jest robić monolit.

Mariusz Sieraczkiewicz, Paweł Wrzeszcz: Jak zmienić dobre zespoły w świetne zespoły

Mariusz Sieraczkiewicz, Paweł Wrzeszcz: Jak zmienić dobre zespoły w świetne zespoły

Mariusz Sieraczkiewicz, Paweł Wrzeszcz: Jak zmienić dobre zespoły w świetne zespoły

Drugiego z prezenterów miałem już przyjemność poznać na warsztatach Warsjawa w 2014 roku. Z kolei pierwszy jest autorem książki Technical Leadership. Od eksperta do lidera..

Teza początkowa była taka że w zasadzie nie da się przekształcić dobrego zespołu w doskonały, bo ludzie nie chcą być zmieniani. Jednak prowadzący podali kilka kierunków jak taką prace zacząć od:

  • identyfikacji potrzeb i problemów: przez rozmowy, wyznaczenie różnych typów celów dla biznesu i zespołu, zwracanie uwagi na detale,
  • informowanie o spostrzeżeniach i budowanie świadomości problemów: wizualizacje, próby mierzenia i wyciąganie wniosków,
  • wprowadzania decyzji w życie, także osobiście – obrazowym przykładem było namówienie zespołu do przyjeżdżania do pracy na rowerze przez przyjeżdżanie samemu w ten sposób.

Prezentacja była bardzo interaktywna, prowadzący wciągali słuchaczy w dyskusje i ćwiczenia budząc momentami strach wśród publiki, a późniejsze pytania z sali trochę rozbiły tok prezentacji. Spostrzeżenie uczestników był takie że treść prezentacji odbiegała nieco od przedstawionego abstraktu, a ten był bardzo ambitny. Także ja liczyłem że dostanę gotowe recepty ale takich nie było…

Andrzej Wisłowski: Użycie stosu Elastic (elasticsearch, logstash, kibana) do budowania platform analitycznych

Andrzej Wisłowski: Użycie stosu Elastic (elasticsearch, logstash, kibana) do budowania platform analitycznych

Andrzej Wisłowski: Użycie stosu Elastic do budowania platform analitycznych

Prowadzący pokazał fajny przykład zastosowania logstash’a do zbierania danych z Twittera, a następnie analizy, wizualizacji, tworzenia wykresów heatmap, itp.

Bardzo ciekawy i „trendy” temat, jednak prowadzący mimo bogatego doświadczenia zawodowego (wcześniej w merlin.pl, agito.pl, teraz grupa Allegro) nie jest (jeszcze) fachowcem od prezentacji: przez pierwszą część prezentacji mówił mówił głownie do ekranu a nie do słuchaczy. Zamiast przygotować prostą prezentacje ze screenshotami to skupił się na pokazywaniu na żywym systemie, bez dokładnego przygotowania, więc dłuższe momenty zajmowało oczekiwanie kiedy znajdzie coś w kolejnych menu aplikacji…

Jakub Marchwicki: JavaEE – nie musi byc tak smutna jak się Tobie wydaje

Jakub Marchwicki: JavaEE - nie musi byc tak smutna jak się Tobie wydaje

Jakub Marchwicki: JavaEE – nie musi byc tak smutna jak się Tobie wydaje

Jakub Marchwicki w bardzo atrakcyjny sposób przedstawił ideę oderwania się myślami od popularnych frameworków i spojrzenie na to co dostarcza nam sama Java EE i współczesne serwery aplikacyjne, dowodząc że możemy znaleźć nawet lepsze rozwiązania.

W kilku prostych wskazówkach przedstawił alternatywne podejście do wyboru technologii:

  • należy znać własny stos bo Java EE jest coraz lepsza: np. posiada już własne wsparcie dla wątków i eventów,
  • najczęściej nie zmieniamy serwerów aplikacyjnych, więc powinniśmy korzystać z dodatkowych rozwiązań które oferują („nasz JBoss jest naszym Springiem”),
  • mależy unikać „Boilerplate code” korzystając z gotowych rozwiązań jak Apache DeltaSpike, np. Container Control czy Data,
  • należy szukać i wychodzić poza standardy nie ograniczając się tylko do popularnych bibliotek,
  • nie należy się ograniczać tylko do MVC dostarczanego przez framework.

Reasumując: cichy głos w dyskusji że nie tylko Spring’iem świat Javy stoi :-).

Grzegorz Piwowarek: Java Wars VIII: The Function Awakens

Grzegorz Piwowarek: Java Wars VIII: The Function Awakens

Grzegorz Piwowarek: Java Wars VIII: The Function Awakens

Znajomy mi skądinąd Grzegorz z firmy TouK fajnie opowiedział o nowościach dostarczonych w Javie w wersji 8: lambdy, monady i bardziej szczegółowo Optional’e i Stream’y. Elokwentny prowadzący, fajna prezentacja, dobre przykłady kodu, zabawne obrazki z internetu i hardcore’owe tempo :-).

Tomasz Ducin: Backend-less Development revisited

Tomasz Ducin: Backend-less Development revisited

Tomasz Ducin: Backend-less Development revisited

Fajnie poprowadzona prezentacja omawiająca aplikacje typu SPA, problemy organizacyjne przy tworzeniu takich aplikacji oraz ich testowaniu, a także przykłady sposobów mockowania zachowania back-end’u w taki sposób żeby można było tworzyć front-end bez obecności tego pierwszego.

Adam Sznajder: Taking advantage of microservice architecture and DynamoDB for costs optimization

Adam Sznajder: Taking advantage of microservice architecture and DynamoDB for costs optimization

Adam Sznajder: Taking advantage of microservice architecture and DynamoDB for costs optimization

Kolejna fajna prezentacja poprowadzona przez Adama – byłego pracownika e-point S.A. aktualnie pracującego dla firmy Sumo Logic z Doliny Krzemowej specjalizującej się przetwarzaniem logów dostarczanych przez ich klientów.

Adam opisał case-study refaktoringu jednego z micro-service’ów związanego z zastąpieniem Cassandry na DynamoDB z chmury Amazon (AWS) i różnymi, niekiedy zabawnymi, perypetiami związanymi z używaniem tejże chmury.

O autorze

Marek Berkan

Marek Berkan: programista, motocyklista, żeglarz, eks-wspinacz, zamiłowany turysta. Witryny: , , .

Share Button

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *