Konferencja 4Developers 2010

W moim mniemaniu Konferencja 4Developers 2010 była dobrze zorganizowana. Mając w pamięci stronę internetową przygotowaną na potrzeby wyżej wspomnianego wydarzenia spodziewałem się raczej przeciętnego poziomu. Tym milej mnie zaskoczył profesjonalizm organizatorów.

Tematy były zróżnicowane. Niektóre ciekawsze inne mniej, ale w większości prelegenci świetnie wywiązali się ze swojego zadania. Oczywiście ja oceniam jedynie wykłady, w których brałem osobisty udział. Z uwagi na moje zainteresowania poszedłem ścieżką PHP i nie licząc jednej prezentacji z zakresu zarządzania projektami IT zaliczyłem pełen repertuar proponowany developerom PHP.

W tym miejscu nie byłbym sobą gdybym nie wspomniał o tym, że czuję się troszkę zawiedziony tym, że z uwagi na równocześnie odbywające się wykłady z różnych dziedzin ominęło mnie kilka fajnych tematów dotyczących zarządzania projektami IT, ale też Silverlighta, czy też wykład pt. „Duży efekt małym kosztem, czyli SQL Server nie tylko jako baza danych”.

Wracając jednak do PHP. Ivo Jansch przedstawił ideę „cloud computing” jako taką, a także w odniesieniu do pracy programisty PHP. Zaprezentował specyfikę pracy z chmurą, a także przedstawił zarówno zalety jak i problemy wiążące się w przypadku połączenia PHP z technologią cloud computing. Osobiście chętnie zapoznałbym się bliżej z tematem, ale z uwagi na koszty jakie się wiążą z dostępem do infrastruktury chmury zapowiada się raczej, że długo nie będę miał okazji.

Kolejny wykład dotyczący jakości „produkowanego” kodu prowadzony przez Sebastiana Bergmanna rozpoczął się serią ogólników ilustrowanych przyjemnymi obrazkami. Już zacząłem się martwić, że tak będzie do samego końca, ale na szczęście Pan Sebastian – bądź co bądź twórca PHPUnit – przeszedł do konkretów. Oprócz wyżej wspomnianego frameworka do przeprowadzania testów jednostkowych, zaprezentował też takie narzędzia ja PHP_CodeSniffer – jeden z nielicznych pakietów PEAR, który po wypróbowaniu przypadł mi do gustu – PHP_Depend czy phpUnderControl. Po raz kolejny przekonałem się, że na testowanie zawsze powinien znaleźć się czas i pieniądze.

W tym miejscu pozwolę sobie troszkę odejść od harmonogramu i przeskoczyć na osi czasu do prelekcji na temat „Debugowania PHP przy użyciu Xdebug”. Derick Rethans współtwórca Xdebuga (jak również np. eZComponents) zaprezentował możliwości tegoż narzędzia. Używam Xdebuga na co dzień nie mniej dowiedziałem się o kilku jego możliwościach, których nie miałem dotąd okazji wypróbować. Wykład ogólnie oceniam jako przydatny choć chwilami zagubienie prelegenta w swoim własnym komputerze było zabawne. Pan Derick jest prawdziwym hardkorem i na desktopie ma zainstalowanego Debiana przez co uruchomienie NetBeans wymagało u niego otwarcia konsoli kilkukrotnego użycia komendy „ls” i uruchomienie edytora z linii komend ;)

Polscy prelegenci też trzymali poziom. Za najbardziej wartościowy z mojego punktu widzenia wykład uznałbym „High Performance PHP” prowadzony przez Mariusza Gila (taka mała dygresja – jak to się stało, że tytuły wykładów obcokrajowców przetłumaczono na język polski a tego nie można było?). Pan Mariusz – co nie wynika z jego strony w serwisie Golden Line – pracuje obecnie w nk (chyba nie muszę rozwijać tego skrótu) ma doświadczenie z dużymi i często odwiedzanymi serwisami. Dlatego jego praktyczne rady dotyczące optymalizacji i strojenia aplikacji tak aby była ona w stanie pracować przy naprawdę dużym obciążeniu są warte uwagi. Wysoka wartość merytoryczna i dobrze przygotowana prezentacja sprawiły, że po zakończeniu wykładu czułem niedosyt i chętnie zrezygnowałbym z przerwy, aby posłuchać dalej.

Przez chwilę zastanawiałem się czy pójść na wykład Jarosława Pałki pt. JavaScript po stronie przeglądarki. Kiedyś czytałem jakiś artykuł na ten temat i traktowałem to w kategoriach ciekawostki żeby nie rzec ekscentrycznego programistycznego doświadczenia. Ciekawość zwyciężyła i się zdecydowałem. Jak się okazało pomimo tego, że JavaScript ma już ponad 15 lat to jednak zastosowanie go po stronie serwera jest rozwiązaniem będącym jeszcze w powijakach. No może trochę przesadziłem. Ponoć są już duże serwisy korzystające z takiego zastosowania JS. Nie żałuję uczestnictwa w tej prelekcji jako, że była ona prowadzona z wielką swadą. Nie podzielam jednak entuzjazmu prelegenta w zakresie możliwości jakie ma jakoby oferować CommonJS w odróżnieniu do innych języków skryptowych. Wiele z przedstawianych zalet rozpoznałem jako dostępne choćby w Pythonie. Poza tym nie jestem pewien czy to by było takie fajne gdyby JS z przeglądarki gadał z JS z serwera. Ja bym tam niekiedy wolał na odwrót i z ciekawością spoglądam na inicjatywy typ php.js. Atrapa wiadomo ale nice ;)

Napisałem wcześniej, że Polacy też dali radę – hmm – nie wszyscy. Wykład „Aplikacje internetowe wydajne od początku” prowadziło dwóch całkiem sympatycznych „chłopaków”. Celowo nie przedstawiam ich nazwisk, ani pracodawcy bo zaliczyli mega wpadkę. Nie dość, że cały czas zmagali się z problemami technicznymi to jeszcze przedstawiony przez nich temat był jednym, wielkim i do tego nie udanym przeglądem technologii mających poprawić wydajność aplikacji internetowych. Podstawowym moim zarzutem jest brak spójności. Prelegenci skakali po wątkach jak po kamieniach nie budując z nich mostu, który przeprowadziłby gładko słuchaczy przez temat. Właściwie beż żadnego wprowadzenia przechodzili od Sphinxa, poprzez Memcached, aż do HAProxy. Po drugie niepotrzebnie zagłębiali się w szczegóły. Zamiast wspomnieć o tym, że buforowanie szablonów jest jedną z metod poprawiających wydajność aplikacji, wylistowali metody i ustawienia systemu szablonów Smarty odpowiedzialnych za cache-owanie. Z kolei NoSQL został potraktowany po macoszemu. Chłopaki wymienili dostępne implementacje nie wyjaśniając, że chodzi o rozproszone bazy danych. Gdybym nie czytał kiedyś na ten temat nie wiedziałby o czym właściwie mowa. Wspominając o PDO zagalopowali się gdyż warstwa abstrakcji do baz danych – nawet napisana w C++ jest bądź co bądź dodatkowym narzutem. Uratowali się wyjaśniając, że z uwagi na wygodę i bezpieczeństwo warto niekiedy ponieść dodatkowe koszty. Każda moneta ma dwie strony tak samo kompresja z jednej strony oszczędza łącze, a z drugiej strony „zatrudnia” zasoby komputera potrzebne do pakowania i rozpakowywania danych. To mogłaby być fajna prezentacja gdyby zbudować spójną i składną opowieść, zapobiec problemom technicznym i wyeliminować pochrząkiwania prelegentów. Zwykle nie przejmuję się wyglądem jednak kiedy coś w prezentacji nie gra także kilkudniowy zarost zaczyna przemawiać na niekorzyść prezentera. Najbardziej jednak przeszkadzało mi ograniczenie się jednego z prelegentów do po prostu odczytania slajdów.

Jedyny wykład w jakim miałem okazję uczestniczyć, a nie dotyczący stricte programowania to prezentacja przygotowana przez Piotra Borka pt. „Łączenie ognia i wody – proces projektowy w Gratka Technologie”. Kiedy skończył pozazdrościłem mu. Proces realizacji projektów w Gratce nie jest może idealny, ale o wiele bliższy doskonałości w porównaniu z tym z czym ja się spotykam na co dzień. Wiadomo, że wiele zależy od specyfiki projektów, które się bierze na warsztat, kiedy jednak usłyszałem, że przy projekcie trwającym mniej więcej 2 tygodnie czas na oszacowanie czasochłonności implementacji tegoż projektu wynosi kilka, kilkanaście godzin to (…). Śmiać mi się zachciało gdy jeden z pracowników Allegro – o czym nie zapomniał wspomnieć – stwierdził, że on potrafi oszacować czasochłonność od ręki i nie potrzebuje do tego analizy dotychczas powstałego kodu bo zna go na wylot. Pan Piotr pogratulował – wypowiadającemu się w ten sposób – zdolności, czego i ja mu gratuluję.

Uczestnictwo w konferencji 4Developers było czystą przyjemnością. Super prelegenci, ciekawe tematy, fajne dziewczyny, do tego nieograniczona ilość napojów i przekąsek – rewelacja. Szczególne podziękowania dla sponsora, który nie tylko zafundował nam bilety na konferencję, ale też zadbał o to abyśmy nie chodzili głodni i wykupił obiad – też był bardzo dobry :D .

Dodano piątek, Marzec 26th, 2010 w kategoriach Ogólne.

Napisz komentarz