Przez długi czas stałym punktem w moim kalendarzu była konferencja MTS, ale w pewnym momencie zaczęła mnie nóżyć. Zrobiłem sobie przerwę i rok temu spróbowałem jeszcze raz, ale podobało mi się jeszcze mniej niż wcześniej. Wtedy usłyszałem o organizowanej w Krakowie konferencji DevDay. W sieci zebrała ona doskonałe opinie, więc w tym roku postanowiłem ją odwiedzić i o tym będzie ten post.
Kilka słów wstępu
DevDay organizowane są przez firmę ABB, ale poza logiem na identyfikatorach oraz niewielkich plakatów rozstawionych tu i tam firma w ogóle nie narzuca się uczestnikom. Generalnie charakter konferencji jest mało komercyjny i to wielki plus. Mnie co prawda odrobinę drażniło, że co chwilę ktoś robił zdjęcia np.: podczas rozmowy z prelegentami ale coś za coś, ABB też coś chciało mieć za wyłożenie pieniędzy :)
Organizacyjnie nie mam żadnych zarzutów, poza kolejką do obiadu, ale to drobnostka. Zresztą nie byłem jeszcze na konferencji, na której udało się to naprawdę dobrze zorganizować. Ekipa organizacyjna spisała się w 100%.
Z organizacyjnych rzeczy bardzo spodobało mi się kontrolowanie czasu, czyli pokazywanie prelegentom kartki z informacją ile jeszcze mogą mówić. Fajny był też system oceny sesji. Przy wychodzeniu z sali do dyspozycji miało się karteczkę czerwoną - nie podobało mi się, żółtą - było średnio i zieloną - podobało mi się. System może mało precyzyjny ale prosty, szybki i nie wymagający wypełniania żadnych ankiet.
Mój przewodnik po sesjach
Sesja początkowo
Pierwsza sesja miała być podobno krótka, ciekawa i motywująca. Prelegent porównał programowanie do biegania. Moim zdaniem wyszło niestety średnio (szczególnie na tle innych prezentacji) było krótko, ale niezbyt ciekawie i niezbyt motywująco.
Ocena: Na pograniczu żółtej i czerwonej karteczki.
"Back to basics: the mess we've made of our fundamental data types"
Jon Skeet
Przed prezentacją nie wiedziałem czego się po niej spodziewać. O prelegencie wiedziałem, że to łebski koleś, legenda StackOverflow, ale nie kojarzyłem go jako prelegenta. Temat też trochę budził moje podejrzenia, bo co można powiedzieć o podstawowych typach danych.
Jak się okazuje można i to jeszcze w jaki sposób. Prezentacja była poprowadzona we wspaniały sposób, z humorem, do tego była ciekawa i można było z niej dużo wynieść. Spróbujcie na przykład odwrócić ciąg znaków zapisany w zmiennej s na poniższym przykładzie:
var s = "Les Misérables".Normalize(NormalizationForm.FormD);
Ocena: Bardzo zielona karteczka.
"Scaling agile"
Dariusz Dziuk
Jedyny Polak w gronie prelegentów. Mówił o organizacji pracy w szwedzkiej firmie Spofity, która udostępnia utwory muzyczne prawie za darmo. W tej chwili zatrudnia kilkuset pracowników technicznych. Podzieleni są na kilkuosobowe zespoły, które są trochę takimi małymi firma tj.: same wybierają sobie narzędzia, sposób pracy, są wielo-platformowe, czyli jeśli pracują nad jakąś nową funkcjonalnością to mają ją dostarczyć na wszystkie platformy np.: Android'a i iOS. A drugim nadrzędnym celem Spotify oprócz zarabiania pieniędzy jest uszczęśliwiania pracowników :)
Prezentacja została poprowadzona bardzo sprawnie, ale bez porywów, momentami mi się dłużyła. Nietypowe (dla mnie na plus) było wprowadzenie podczas, którego Dariusz opowiedział kilka słów o historii Jazz'u.
Ocena: Żółta karteczka.
"SPA Made Breezy"
Tiberiu Covaci
Najbardziej techniczna sesja na jakiej byłem dotyczą tworzenia aplikacja SPA (ang. Single Page Application) przy pomocy Breeze.js oraz MVC. Trochę nie wyszedł pokaz możliwości biblioteki na żywo, co jednak nie zraziło prelegenta (tutaj widać obycie i doświadczenie).
Mi sesja nie przypadła do gustu, może dlatego, że na co dzień nie programuję aplikacji WWW, a może dlatego, że ostatnimi czasy prezentację, w których przewija się dużo kodu pisanego na żywo do mnie nie trafiają.
Ocena: Na pograniczu żółtej i czerwonej karteczki.
"Building Startups and Minimum Viable Products"
Ben Hall
Lekka, bardzo fajnie poprowadzona sesja dotycząca startup'ów, a prelegent wiedział o czym mówił, bo ma dwa na swoim koncie, a teraz pracuje dla firmy, która wyszykuje obiecujące firmy i w nie inwestuje. Ben zwrócił uwagę, że startując ze swoim pomysłem przede wszystkim trzeba mieć pasję, a najlepiej bardzo dużo pasji. Jego zdaniem na początek należy unikać pisania kodu, jak najwięcej wykorzystywać istniejące rozwiązania, skupić się na dostarczeniu wartości, a nie na jakości kodu czy pisaniu testów jednostkowych. Dobry wynik dla firmy inwestującej w startup'y to podobno 30%, czyli jeśli 3 inwestycje na 10 zaczną na siebie zarabiać to jest dobrze.
Ocena: Zielona karteczka.
"Full-text search with Lucene and neat things you can do with it"
Itamar Syn-Hershko
Prezentacja była nie tyle o Lucene, co o rozproszonym serwerze przeszukiwania pełnotekstowego opartym o Lucene. Lekka techniczna sesja, z wprowadzeniem dla początkujących. Słyszałem głosy, że temat prezentacji sugerował co innego i było za dużo o rzeczach podstawowych, ale mi sesja się podobała, bo odświeżyłem sobie wiedzę.
Ocena: Zielona karteczka.
"The Architecture of StackOverflow"
Marco Cecconi
Portalu StackOverflow chyba nikomu nie należy przedstawiać. Na tym samym silniku stoi ponad 100 innych serwisów typu Q&A, a sam portal StackOverflow jest w czołówce najczęściej odwiedzanych stron na świecie. Wbrew pozorom do obsługi tego wszystkiego wystarczy 11 serwerów WWW, 4 serwery bazodanowe i dwa serwery cache'ujące używające technologii Redist. Każdy serwer bazodanowy ma ponad 300GB pamięci, tak aby pomieściła się cała baza danych.
Kod aplikacji podzielony jest raptem na kilka projektów (całość to ok. 100 tyś linii kodu). Testów jednostkowych jest bardzo mało, bo użytkowników jest tak dużo, że wszelkie błędy wykrywane są bardzo szybko. Ewentualne poprawki można dostarczyć w kilka minut. Co z tym związane, w wielu miejscach użyto klas statycznych, bo i tak nie będą mock'owane, a przede wszystkim ma być prosto. Zespół StackOverflow nie zastanawia się też na przejściem do chmury, czy użyciem bazy NoSQL, ponieważ wszystko działa dobrze tak jak jest. Lubię takie zdrowie podejście do tematu.
Prezenter skończył mówić z 15-20 minut przed czasem, ale pozostałą część sesji zajęły pytania z publiczności.
Ocena: Na pograniczu żółtej i zielonej karteczki ale bliżej zielonej.
"The software journeyman's guide to being homeless and jobless."
Rob Ashton
Kolejna genialna sesja. Rob pokazał niesamowity warsztat, a mówił o tym jak rok temu zrezygnował z pracy w korporacji bo miał dosyć, a pieniędzy i tak nie miał na co wydawać. Od tego czasu podróżuje po świecie z jedną walizką i pracuje tam gdzie dostanie lokum oraz bilet lotniczy. Teraz jest w Belgii i, jak sam mówi, to strasznie nudne miejsce, w Izraelu pracował nad RavenDB, w międzyczasie zaliczył wypadek samochodowy, kodował w Closure w czasie koncertu Eurowizji itd. A tak w ogóle trochę mu się śpieszyło bo chciał napić się piwa :)
Mi bardzo spodobało się też podsumowanie, w którym Rob powiedział coś w stylu (bardzo luźną parafraza) "No tak, ale ja nie mam żony, dzieci czy innych zobowiązań, a więc mi jest łatwiej. Wy też jednak możecie coś zrobić, zmienić pracę na ciekawszą, blogować, występować na konferencjach, uczyć się nowych rzeczy, dzielić się wiedzą..."
Ocena: Bardzo zielona karteczka.
Sesja końcowa
Sesja końcowa to dużo powiedziane, bo trwała małe kilkanaście minut. Nie zabrakło zasłużonych podziękowań dla prelegentów oraz dla ekipy obsługującej konferencję. Była też fala, poważnie, taka jaką widuje się na meczach piłkarskich oraz pamiątkowe zdjęcie :)
Ocena: Bardzo zielona karteczka
Podsumowanie
W dwóch słowach Było super! i już szykuję się na przyszły rok. Przyznam, że od strony technicznej dużo się nie nauczyłem, ale zdobyłem dużo miękkiej wiedzy i zastrzyk pozytywnej energii.