Witam,
Wygrałam bilet na londyński DevoXX, więc niniejszym dzielę się
wrażeniami. Trochę to trwało, jak wszyscy wiedzą konferencja była 25 i
26 marca, ale umowa jest umowa.
Na wstępie chciałam zaznaczyć, że tematem, który przewijał się przez
wiele prezentacji było to jacy to jesteśmy wyluzowani i fajni. Szczerze
powiedziawszy ten luz i fajność nie bardzo mnie przekonała. Widać to na
parleys.com, np. w Opening Keynote [1], albo w wywiadzie z Benem Evansem
[2], (porównajcie czapkę na filmie z CV pod filmem). To wszystko są
poważni, kompetentni ludzie zajmujący się na co dzień poważnymi rzeczami
i mający wiele ciekawego do powiedzenia niezależnie od tego co akurat
mają na głowie. Jessica Kerr (znana np. z zeszłorocznego JDD w Krakowie)
pisała na swoim blogu, że programista to zawód, a geek to subkultura
[3]. DevoXX UK, z hasłem „Mind the geek” wpisał się w ten drugi schemat.
Kwestia gustu, do mnie to nie przemówiło.
Po moim zdaniem niezbyt fortunnym Opening Keynote na scenę wszedł Kevlin
Henney – postać zapewne znana bywalcom różnych konferencji. Jego
prezentacja jest też w całości dostępna na parleys [4]. Gorąco polecam.
Mówi o kilku dość istotnych aspektach tworzenia software'u wynikających
z faktu, że programiści są ludźmi. Zaczął od problemu z budowlanymi
metaforami i pojęciem „architektura”. (Swoją drogą przypomniała mi się
wcześniejsza prezentacja z QCon, gdzie temat metafor budowlanych bardzo
fajnie rozwinął Glenn Vanderbrug [5]). Skoro już mówimy o architekturze
systemu, jako o estetycznym poukładaniu kodu w moduły, to czemu nie
mówimy o architekturze systemu jako, o jego zdatności do „zamieszkania”
przez programistów. To programiści muszą w kodzie się czuć dobrze, jak w
domu. Jak się nie czują dobrze, bo jest brzydko, brudno, nie wiadomo
gdzie co jest i kapie na głowę to nic z tego nie będzie. Życie w takim
kodzie, ignorowanie faktu, że wszystko się wali bo trzeba na jutro
„dostarczyć wartość biznesową” to nie jest profesjonalizm (Tu z kolei
przypomina się Wujek Bob i Clean Code).
Rozprawiwszy się z architekturą przeszedł do ładnie udokumentowanego
przypomnienia wszystkim, że nie potrafią odkładać przyjemności na
później, nie umieją robić wielu rzeczy naraz, ich geniusz kwitnący w
samodzielnej pracy nic nie jest wart, a decydować potrafią tylko z rana,
bo im więcej decyzji w ciągu dnia tym bardziej ich jakość spada na
przysłowiowy pysk. Ponadto momenty, w których osiągają flow, pełną
koncentrację, widzą rozwiązanie przed oczami, a kod płynie sam spod
palców bez skreśleń, jak symfonia Mozarta są momentami których trzeba
się wystrzegać jak ognia.
Po Keynote konferencja rozeszła się na ścieżki. Wszystkie prezentacje są
na parleys [6]. Niestety na chwilę obecną tylko trzy są dostępne w
pełnej wersji, tj. film i slajdy. Do pozostałych są tylko slajdy. Nie
chcę streszczać wszystkich. Od konferencji minął ponad miesiąc i
pokazało się już kilka recenzji na blogach, np. [7, 8, 9]. Ze swej
strony mogę tylko powiedzieć, że prezentacje były bardzo różnorodne.
Były prezentacje tak podstawowe, że aż strach (Holly Cummins o OSGI [10]
i Rabea Gransberger o Eclipse [16]). Były też prezentacje tak
szczegółowe, że aż strach, w szczególności te 3 o optymalizacji
performansu (panowie Verburg, Warburton i Thomson [11,12,13]).
Prezentacja Richarda Warburtona (jest też film: [14]) wprawia w
osłupienie. Mogę się tylko cieszyć, że ja nie muszę takich problemów
rozwiązywać.
Istotnym elementem konferencji były prezentacje nt. Javy 8 i
alternatywnych języków na JVM. Byłam tylko na jednej: „Real-world
polyglot programming on the JVM”. Byłaby ciekawa, gdyby nie to, że w 80%
pokrywała się ze wcześniejszą prezentacją z QCona [15]. Nie przekonałam
się też co do tego, żeby pisanie systemu, gdzie sam kod wykonywalny jest
w 5 językach jest dobrym pomysłem. Na pytanie z sali jak zatrudnić
developerów do zespołu, żeby znali 5 języków padła odpowiedź, że w tej
chwili pan prelegent pracuje w zespole jednoosobowym ale to przecież nie
problem bo „każdy kompetentny programista” potrafi pisać w dowolnym
języku i dobiera najlepsze narzędzie do zdania. Pozostaje tylko życzyć
projektowi sukcesu, tak by zespół mógł się powiększyć – a panu
prelegentowi zdrowia i wszelkiej pomyślności.
Było też kilka prezentacji adżajlowych, gdzie ja byłam na dwóch: pana z
Guardiana i pani z Digital Service rządu Jej Królewskiej Mości. Obie
bardzo powiedziałabym rozrywkowe. Bardzo miło się ich słuchało, choć
użytecznej wiedzy wyniosłam niewiele.
Podsumowując. Konferencja była na pewno bardzo dobrym sposobem na
spędzienie 2 dni (niestety nie załapałam się na imprezę w poniedziałek).
Było kilka bardzo ciekawych prezentacji (keynote, performans, adżajl),
było też kilka nietrafionych (podstawy OSGI, programowanie dla
poliglotów, continuous delivery – czyli „my jesteśmy fajni, u nas
wszystko się robi samo, ale nie powiemy jak, bo nasz build + delivery
system nadziergaliśmy sami od zera i nikomu nie damy”). Można też było z
kilku zrezygnować, by więcej czasu poświęcić Javie 8 i alternatywnym
językom na JVM, ale nie można mieć wszystkiego. Atmosfera z pewnością
sprzyjała kontaktom towarzyskim (byli Polacy ze Szwajcarii, Polacy z UK
i chyba tylko jeden Polak z Polski . Wróciłam z workiem książek –
kupionych okazyjnie na stoisku Computer Manuals i przekonaniem, że
Człowiek to brzmi dumnie, i że nawet na JVM nie samą Javą żyje. Kto wie,
może uda się w przyszłym roku pojechać znowu...
[1]
http://parleys.com/play/51708f99e4b0b4a14e5f727e
[2]
http://parleys.com/play/516bfe75e4b07b9cc6de32cc
[3]
http://blog.jessitron.com/2013/01/geeks-freaks-nerds-programmers.html
[4]
http://parleys.com/play/51788f6ee4b0736a5fa669db
[5]
http://www.infoq.com/presentations/Software-Engineering
[6]
http://www.parleys.com/channel/516409c9e4b082c6506c9e3b
[7]
http://www.hftreview.com/pg/blog/trishagee/read/77021/devoxx-uk-2013
[8]
http://spoofzu.blogspot.ch/2013/04/devoxx-uk-2013-trip-report.html
[9]
http://blog.eisele.net/2013/04/trip-report-devoxxuk-2013-mind-geek.html
[10]
http://parleys.com/play/5164587de4b082c6506c9e49
[11]
http://parleys.com/play/51656f33e4b09b60aec89d23
[12]
http://parleys.com/play/5167f901e4b05b6ad71fa703
[13]
http://parleys.com/play/5168124be4b05b6ad71fa70e
[14]
http://parleys.com/play/517fb1c9e4b0c2a859eb9ecb
[15]
http://www.infoq.com/presentations/Adopting-the-JVM
[16]
http://parleys.com/play/51652828e4b082c6506c9e55