środa, 21 października 2009

JDD 2009

W ostatni piątek (tj. 16.10.09) miała w Krakowie miejsce czwarta odsłona konferencji Java Developers' Day.

Konferencja zaczęła się od wykładu jednego ze sponsorów czyli Red Hat. Tom Baeyens i Joram Barrez opowiedzieli o jBPM.

Po ich wykładzie przyszła kolej na pierwszy keynote czyli Mark Richards i „sztuka messagingu”. Wykład ciekawy i z humorem ale chyba za dużo nawiązań do wspaniałej jakości polskich trunków ;)



Ostatni wykład w tej części należał do sponsora. Tomasz Skutnik z e-point przekazał trochę doświadczenia ze swojej firmy na temat radzenia sobie z sytuacjami wyjątkowymi w aplikacjach JEE.

Po przerwie obiadowej rozpoczęły się dwie równoległe sesje. Sesję 2. (w której uczestniczyłem) rozpoczął Waldemar Kot z tematem wielowątkowości w Java EE. Następne wykłady były już mniej techniczne. Jacek Kunicki opowiedział i pokazał jak można się bawić klockami Lego wykorzystując Lego Mindstorms i leJOS. Matr Richards przedstawił najpopularniejsze antywzorce programowania - tak naprawę to nie dotyczyły one bezpośrednio Javy. Ostatnim wykładem w drugiej sesji były "psychologiczne" aspekty naszej pracy czyli „o czym wiedzą najlepsi programiści” w wykonaniu Michała Bartyzela i Mariusza Sieraczkiewicza.

Ostatni wykład poprowadził Scott Davis opowiadając o REST i pokazując klika przykładów z wykorzystaniem Groovy i Grails.

Ogólnie konferencję zaliczam do udanych. Pomysł z agendą przy identyfikatorze bardzo dobry gdyż ma się ją cały czas przy sobie (tak było też na GeeCONie). Niestety wg mnie miejsce konferencji było gorsze niż rok temu. Wysiedzieć na plastikowych, rozkładanych siedzeniach (na rozkładanej trybunie) się wręcz nie dało. Projektory na sesji nr 2. były do niczego i ciężko było śledzić kod pisany przez prelegenta. Ilość miejsc parkingowych była zdecydowanie za mała.

niedziela, 5 lipca 2009

Javarsovia 2009 już za nami

W tym roku po raz pierwszy wybrałem się do Warszawy na Javarsovie. Ponieważ jakiś czas temu w mediach ukazała się informacja, że Panowie z wiejskiej zezwolili łaskawie na sprzedawanie alkoholu w pociągach stwierdziłem, że zamiast spędzić kilka godzin za kierownica przyjemniej będzie czas podróży spędzić np w Warsie przy kuflu ;) Tak więc pobudka po 3 rano, samochodem do Bielska Białej i o 4.55 wyruszam IC Pilsko w kierunku Warszawy. W Katowicach dołącza do mnie Marek Goldmann. Niestety okazało się, że w Warsie sprzedają piwo ale tylko bezalkoholowe. Na szczęście relacja Marka z JavaOne2009 zajęła prawie całą podróż do Warszawy.
Około godziny 9 stawiliśmy się po krótkim spacerze z dworca na Miecznikowa 1. Rejestracja, odebranie gadżetów, przywitanie ze znajomymi i konferencję czas zacząć.
Pierwszy wykład, na który się udałem to Adam Warski i Co jeszcze mogą nam dać anotacje - weryfikacja statyczna.
Jako drugi wybrałem wykład Kuby Kubryńskiego na temat Ciągłej Integracja w procesie wytwarzania oprogramowania.
Trzeci wykład to Paweł Szulc i Apache Wicket.
Wszystkie trzy wykłady oceniam bardzo dobrze. Pomimo tego że od 3 rano byłem na nogach na żadnym z nich nie ziewałem tylko słuchałem z zainteresowaniem.
Po przerwie obiadowej przyszła kolej na warsztaty Coding by example pod patronatem Bartosza Bańkowskiego, Igora Czechowskiego i Szczepana Fabera. Ponieważ byłem wcześniej (na JDD oraz GeeCONie) na wykładach Szczepana stwierdziłem, że nie mogę odpuścić warsztatów. Nie wszyscy uczestnicy przyszli z własnymi laptopami więc można było sprawdzić jak się nam podoba idea programowania w parach. Ja zostałem sparowany z Grześkiem co miało ten plus, że był on gorącym zwolennikiem (co najważniejsze doświadczonym) IntelliJ IDEA a ponieważ od dłuższego czasu posiadam licencję, mogłem podejrzeć kilka skrótów oraz zobaczyć to środowisko w rękach doświadczonego programisty. Chyba muszę więcej czasu poświęcić temu IDE.
Warsztaty były naprawdę na wysokim poziomie - i to nie tylko dlatego, że dostaliśmy po kubku jako pierwsi, którzy skończą ćwiczenie.
Właśnie sobie uświadomiłem, że była to moja pierwsza konferencja, w której uczestniczyłem a jako prelegenta nie było Jacka Laskowskiego.
Niestety nie mogłem uczestniczyć w spotkaniu integracyjnym po konferencji gdyż o 19:38 czekał na mnie już pociąg powrotny, a w nim mała niespodzianka. W wagonie, w którym jechałem jechało około 7 osób z Javarsovii, których wcześniej nie znałem.
Niestety PKP dowiozło mnie na miejsce z 30 minutowym opóźnieniem - tak więc dzień konferencji zakończył się dla mnie po 1 w nocy następnego dnia.
Nie mam porównania z poprzednimi edycjami Javarsovii ale tę oceniam wysoko i bardzo dziękuję kapitule konferencji za ich wkład w to, że Javarsovia wypadła tam znakomicie.

piątek, 8 maja 2009

I po GeeCONie

Dzisiaj zakończyła się pierwsza (i mam nadzieję, że nie ostatnia) edycja konferencji GeeCON. Kto nie był niech żałuje bo naprawdę jest czego. Dwa dni (trzy dla tych, którzy brali udział w szkoleniach czyli GeeCON University) wykładów z udziałem "gwiazd" światowego formatu.
Przygotowanie oceniam bardzo wysoko. Mojego zdania nie zmienia nawet kilka "sprzętowych" wpadek.
Pozostaje mi tylko podziękować chłopakom z GeeCON Team za fantastyczną robotę, którą odwalili i życzyć wytrwałości, sponsorów, oraz pomocników, żeby GeeCON zagościł na stałe w kalendarzu imprez javowych.

niedziela, 29 marca 2009

NetBeans 6.7M2 i instalator platformowych aplikacji

Od jakiegoś czasu jest dostępna wersja M2 NetBeans 6.7 - wydanie stabilnej wersji jest planowane na czerwiec. Postanowiłem się bliżej przyjrzeć co nowa wersja będzie oferować.
Pierwsze co zwróciło moją uwagę to plugin instalatora dla aplikacji tworzonych z wykorzystaniem platformy NetBeans.



Po jego zainstalowaniu pojawia się nam nowa opcja dla projektów typu Module Suite czyli Generate Suite Installer.



Wybranie tej opcji uruchamia prostego kreatora.



W pierwszym kroku podajemy kilka informacji charakteryzujących naszą aplikację oraz podstawowe wymagania jakie musi spełniać system, na którym będzie ona instalowana.
Drugi krok to podanie treści (lub pliku) licencji, która musi być zaakceptowana podczas instalacji.



I to tyle. Po chwili instalator jest gotowy.



W katalogu dist naszej aplikacji czeka na nas archiwum zip "*-installer-image.zip". Wystarczy je przesłać do klienta, który sobie je rozpakuje i uruchomi plik installerLuncher (sh lub vbs w zależności od systemu). Instalator przeprowadzi użytkownika ukazując mu kolejne okna.

















Po przejściu tych kilku kroków aplikacja jest zainstalowana.

Wg mnie plugin będzie przydatny ale pod warunkiem, że w wersji finalnej zostanie dopracowany (nie trzeba będzie pisać własnych zadań ant'a tworzących instalatora w oparciu np o IzPack'a). Brakuje mu np wybrania w kreatorze opcji czy porobić skróty np na pulpicie czy w menu Start. No i domyślna grafika z logiem NetBeans'a 6.0 też nie jest na czasie.
Zauważyłem także, że jeśli w kreatorze użyjemy polskich znaków instalator nie uruchomi się wcale i nie informuje nas o żadnych błędach.

sobota, 7 marca 2009

4Developers

No i po 4Developers.
Na pierwszy ogień poszedł wykład EJB 3.1 - Killing The Top Eleven Myths, Tales and Biases, który wygłosił Adam Bien. Adam próbował rozwiać wszelkie mity krążące na temat EJB. Przedstawił także kilka nowości w EJB 3.1, które to niedługo ma ujrzeć światło dzienne.
Drugi wykład prowadził Neal Ford na temat The Productive Programmer: Mechanics. Zwrócił uwagę na podstawowe mechanizmy pracy programisty, na które czasami nie zwracamy uwagi, a które jednak wpływają na naszą szeroko rozumianą produktywność.
Trzeci wykład to Corneliu Vasile Creanga i Flex and Java integration. Było to króciutkie wprowadzenie do Flexa i pokazanie, że można go w prosty sposób integrować z Java - w końcu wystąpienie to było na ścieżce Javowej ;) Niewątpliwie atrakcją tego wykładu był spadający głośnik, który urwał się z sufitu i zatrzymał się tuż koło głowy jednego z uczestników wykładu.
Przed przerwą obiadową Paweł Bachara pokazał nam możliwości Java w urządzeniach embedded na przykładzie SUN SPOT'a.

Za następną cześć należałby się minus organizatorom - mianowicie była godzinna przerwa ale jak ktoś miał ochotę zjeść jakiś obiadek musiał to zrobić na własny rachunek. Na pochwałę zasługuje naprawdę przyzwoity bufet z przekąskami, który był okupowany przez tych, którym nie chciało się wychodzić w taką pogodę w poszukiwaniu jedzenia. Napisałem wcześniej, że "należałby się minus" - ale nie należy się z tego powodu, że wejściówkę miałem za darmo więc nie będę krytykował ;)

Po przerwie Java Underground prowadzona przez Grzegorza Dudę. Pięć pięcio-minutowych wystąpień przebiegło bardzo sprawnie. Adam Bien z EJB, JavaFX (Bartek Kuczyński), Scala (Szymon Jachim), Jazz (Bartek Chrabski), Domain Driven Development (Sławek Sobótka).

Do następnego wykładu podszedłem bardzo nieufnie, gdyż był to wykład sponsorowany (niestety nie dało się akurat wtedy przejść na inną ścieżkę - tzn jedyną na którą się dało była ścieżka .NET). Jednak Tomasz Skutnik z firmy e-point bardzo pozytywnie mnie zaskoczył (i nie tylko mnie z tego co wiem). Wykład na mało ciekawy temat Wielojęzykowość w aplikacjach J2EE okazał się bardzo interesujący i dobrze poprowadzony. Przykłady wzięte z prawdziwych projektów pokazujące problemy, o których istnieniu na co dzień nie zdajemy sobie sprawy, były bardzo interesujące.

Jedynym wykładem, dla którego opuściłem ścieżkę javową był Busy Java Developer’s Guide to Scala: Introduction Ted'a Neward'a na ścieżce języków specjalizowanych.

Wykład Teda troszkę się przeciągnął przez co spóźniłem się na wykład Jacka Laskowskiego pod tytułem Zwinne i lekkie aplikacje webowe w Javie z Groovy, Grails i Project Zero. Jacek pokazał nam w jaki sposób używając Grailsów zbudować szybko i prosto aplikację, która nie działa ;) ale dzięki temu, że nie zobaczyłem działających przykładów chyba bardziej mnie ciągnie, żeby bliżej się przyglądnąć Grooviemu i Grailsom. Więc wykład Jacka jak najbardziej udany - zainteresował mnie tematem. Przy okazji prelekcji dowiedziałem się, że będę na javarsovi w czerwcu ;)

Ogólnie konferencję uważam za bardzo udaną. Nie mam się do czego przyczepić ;)

A już niedługo kolejna konferencja - GeeCON. Ja już się zarejestrowałem.

poniedziałek, 2 marca 2009

NetBeans Platform Certified Training - dzień 2.

Drugi dzień szkolenia przebiegał pod znakiem "wyglądu" aplikacji napisanych na platformie.



Pierwszy wykład należał do Geertjana, który opowiedział nam o systemie okien czyli Windows System API. Drugi wykład to System File System API, o którym opowiadał Karol.



Wykład Karola był przeplatany przykładami prezentowanymi przez Geertjana. W oczekiwaniu na pizzę oraz w ramach relaksu poruszone były tematy nie związane bezpośrednio z platformą czyli Groovy i Wicket.
Jak widać na zdjęciach zrobionych podczas przerwy uczestnicy czuli nie tylko głód wiedzy ;)





Po przerwie przyszedł czas na omówienie jednej z ciekawszych i efektowniejszych bibliotek platformy czyli Visual Library.



Następnie Karol opowiedział nam jak wygląda jego praca w SUNie, czyli głównie poprawianie błędów zgłoszonych przez użytkowników w Issuezilli. Przy okazji dowiedzieliśmy się, że jeśli chcemy aby znaleziony przez nas błąd został przez kogokolwiek dostrzeżony musimy mu nadać priorytet co najmniej P3 ;)
Na koniec kilka pomysłów na moduły lub aplikacje, które pozwolą uczestnikom uzyskać certyfikat NetBeans Certified Engineer.
Drugi dzień szkolenia zakończył się wcześniej niż pierwszy bo ok godziny 16.
Uwagi uczestników szkolenia można przeczytać na grupie Silesia JUG.
Jeśli bylibyście zainteresowania takim szkoleniem na swojej uczelni lub w ramach Waszego JUGu to informacje na ten temat są dostępne na oficjalnej stronie szkolenia.

sobota, 28 lutego 2009

NetBeans Platform Certified Training - dzień 1.

Pierwszy dzień szkolenia z platformy NetBeans właśnie za nami. Plan pierwszego dnia przedstawiał się następująco:



Szkolenie zaczęło się od krótkiego wstępu Geertjana. Następnie miejsce na "mównicy" zajął Karol i opowiedział o korzyściach wynikających z używania platformy. Jego wystąpienie było przerywane przykładami pokazywanymi przez Geertjana. Po tym wszystkim przyszedł czas na pierwsze warsztaty. Uczestnicy prowadzeni przez trenera "przenieśli" zwykła Swingową aplikację (Anagram Game z przykładów dostępnych w NetBeansie) na platformę. Warsztaty zostały brutalnie przerwane przez rozwoziciela pizzy, który przywiózł nam ją o 15 minut za wcześnie. Jednak nikt nie protestował tylko w spokoju zabrał się za jedzenie szukając w głowie pomysłu na aplikację, za napisanie której możnaby dostać papierek certyfikowanego inżyniera NetBeans ;)
Po przerwie Piotr Tabor opowiedział o swoim projekcie edytora.



Jak widać momentami nawet prowadzący byli zaciekawieni ;)



Następnie przyszła kolej na omówienie mechanizmu Lookup a później ćwiczenia, na których można było bliżej się z nim poznać.
Przedostatnim punktem było moje króciutkie i nieoficjalne wystąpienie pokazujące pewne komercyjne zastosowanie platformy.
Na ostatnim wykładzie Geertjan opowiadał jak wygląda w platformie "model danych" czyli Nodes API oraz Explorer & Properties API oraz pokazywał to na praktycznym przykładzie.



Kilka słów na temat pierwszego dnia możecie także przeczytać na blogu Geertjana.

Tematyka poruszana na tym szkoleniu praktycznie nie wymagała żadnej specjalistycznej wiedzy. Podstawowa znajomość Javy była w zupełności wystarczająca oby zrozumieć o czym mowa. Pomocna mogła być również znajomość Swinga na poziomie pozwalającym określić czym różni się JPanel o JLabel ;)

PS. Na SUNowskiej stronie JUGów jest ciekawa ankieta. Pytanie: Przez kogo wg Ciebie powinna być reprezentowana społeczność JUG na JavaOne. Jedna z osób wydaje mi znajoma ;)