piątek, 29 kwietnia 2011

Oracle Certified Business Component Developer?

Tak, od dziś :) Dałem radę z całkiem niezłym wynikiem (jak na załączonym obrazku)

Okazuje sie że wiekszość pytań testowych, jesli nie wszystkie, pokrywa się z tymi, które można znaleść w sieci.
Jak przygotowywałem się do testu?
Zacząłem od przeczytania ksiażki "Pro EJB 3 Java Persistence API" wydawnictwa Apress. Od deski do deski ze zrozumieniem bez głębszego wnikania w detale, np. składnię JPQL, czy tematy zaawansowane (rozdział 'Advanced Topics'). Niektóre rozdziały przeczytałem kilka razy, za każdym razem więcej rozumiejąc.
Następnie testy.. duuużo testów.. więcej testów.
Testy można znaleść w sieci. Rozwiązywałem je i starałem się zrozumieć poprawne odpowiedzi, zaglądając w specyfikację SUN-a "JSR 220: Enterprise JavaBeansTM,Version 3.0, EJB Core Contracts and Requirements" dostepną tutaj

Specyfikacja była moją podstawową lekturą.

Co do testów, które mi pomogły, oto one:
http://www.hp0-s12-korean.com/?tag=310-091
http://www.scribd.com/doc/26987797/310-091-Practice-Questions
http://www.exammagic.com/310-091.html

Najczęsciej chyba siegałem po test od Exam Magic, który można za darmo sciagnąc pod ostatnim linkiem (powyzej).

Certyfikat certyfikatem a praktyka to zupelnie inna sprawa :)

niedziela, 10 kwietnia 2011

33rd Degree Kraków 2011

English version
Konferencja zakończyła się nie tak dawno bo w piątek. Zdecydowanie czuję się po niej nakręcony i pełen nowych pomysłów.
Konferencja trwała 3 dni (6-8 Kwietnia) i musze przyznać, że była to jedna z najlepszych na jakich dotychczas byłem.
Mogę z czystym sumieniem powiedzieć, że była porównywalna z ubiegłorocznym Google Developer Day w Pradze zarówno pod kątem merytorycznym jak i organizacyjnym. Co prawda GDD trwała 1 dzień i była doarmowa ale dojazd do Pragi też cos kosztował.
Wielkie podziękowania należą się organizatorom, zwłaszcza głównemu - Grześkowi Dudzie.
Miejsce konferencji - Best Western Hotel - to świetne miejsce na tego typu wydarzenia, dobrze wyposażone we wszystko co potrzeba, moze jedynie brakowało toalet pod którymi nieustannie stały kolejki.
Podczas konferencji mieliśmy wolny dostęp do przegryzakow różnego rodzaju i napojów - super sprawa i nie tak jak na niektórych innych konferencjach, gdzie zwylke po krótkim czasie nic już nie było na stole.
Poza tym organizatorzy postarali sie o inne bonusy jak 40% zniżkę na książki O'Reilly, 4-miesięczną licencję na JRebel, rezerwację lunchu i co ważniejsze wspaniałych prelegentów, przynajmniej jeśli chodzi o tych, w których prezentacjach uczestniczyłem.
Oto i oni..

Linda Rising - 'Deception and Estimation'

Linda Rising prowadzi rubrykę Insights and Experience Reports w wydawnictwie IEEE Software magazine. Na jej pierwszym wystąpieniu opowiadała o tym czym jest zwodniczość, czyli innymi słowy kłamstwo. Ludzie nie tylko oszukują innych ale i samych siebie. Już jako dzieci jesteśmy z tym oswajani, gdy słyszymy od najbliższych: "O.. powiedz jak bardzo kochasz ciocie Elen", albo jako dorośli ludzie w związkach, kiedy np. żona mówi do męża: "Kochanie, czy wyglądam grubo w tej sukience?". Zwykle kłamiemy w takich sytuacjach, ale wtedy nie jest to nic złego, a wręcz przeciwnie, to o wiele zdrowiej niż powiedzenie szczerej prawdy - "Tak Kochanie, jesteś gruba!" ;)

Jednak, gdy przychodzi do szacowania, oszustwo nie jest wskazane.

Po pierwsze, czy jesteśmy w ogóle w stanie dobrze oszacować? Jesteśmy z natury optymistami, odrzucamy myślenie o procesach i informacjach, które się nam nie podobają, przeinaczamy to co widzimy nawet jeśli jest to potwierdzone naukowymi dowodami. Im jestesmy inteligentniejsi tym bardziej zwodniczy. Max Planck powiedział:
'Prawda nigdy nie triumfuje – wymierają tylko jej przeciwnicy'

Zwykliśmy myśleć o sobie jak o wybitniejszych od pozostałych, mądrzejszych, zawsze mających rację. Często używamy do szacowania śmiesznych rzeczy, np. często uważa się, że dodając wiecej osób do określonego zadania uzyskamy szybsze jego zakończenie, tymczasem prawo Brooksa dowodzi przeciwnie - wydłużymy w ten sporób zadanie. Brooks dał prosty przykład, że 9 kobiet nie urodzi dziecka w jeden miesiąc(http://en.wikipedia.org/wiki/Brooks's_law).

Zwinne metodyki projektowe mówią, że powinniśmy dzielić projekt na bardzo małe części - im mniejsze tym lepszą uzyskamy estymacje.

Wreszcie, jeśli nadal nie jesteśmy w stanie odpowiedzieć na pytania jakie pojawiają się podczas szacowania jakiegos zadania możemy wykorzystać specjalnie stworzona do tego celu strone ;)http://estimategoat.com

Matt Raible - 'Comparing JVM Web Frameworks'

Matt Raible jest architektem interfejsu użytkownika specjalizującym się w szkieletach Open Source. Matt porównał kilka szkieletów: GWT, Spring MVC, Vaadin, Ruby on Rails, JSF, Wicket, Tapestry, Play.

Kiedy przychodzi nam wybrać właściwy szkielet dla naszej aplikacji należy dojść do właściwego rozwiązania drogą eliminacji. Eliminujemy te, w których nie uda się zrealizować wymagań projektowych a zostawiamy te, które pasują do tego najlepiej. Często jest tak, że podczas gdy jeden szkielet jest znakomity do realizacji oreślonej funkcjonalności, kompletnienie nadaje się dla pozostałych.

Przy wyborze szkieletu dobrze jest spojrzeć na ruch na liście mailingowej na stronie szkieletu - to świetny znacznik mówiący, czy szkielet jest używany przez innych, czy żyje. Wybór wymarłego szkieletu oznacza, że w przypadku problemów w nim znalezionych będziemy musieli naprawić je sami. Nie o to przecież nam chodzi. Raport popularności szkieletów na rok 2011 znajduje się na http://www.zeroturnaround.com/java-ee-productivity-report-2011/

Nathaniel Schutta - 'Hacking Your Brain for Fun and Profit'

Znakomita prezentacja pełna pomysłów jak zwiększyć własną produktywność. Spośród wielu, zanotowałem kilka..

Obraz mózgu słuchacza odzwierciedla obraz przemawiającego do momentu, gdy słuchacz przestaje nadążać, wtedy obraz ten rozdziela się(http://www.zeroturnaround.com/java-ee-productivity-report-2011/)

Nasz mózg jest aktywny 24/7. Nawet gdy śpimy nasz mózg nieustannie coś trawi, np. znany jest niewiarygodny przypadek Chorwackiej dziewczyny, która po przebudzeniu ze śpiączki potrafiła mówić po Niemiecku podczas, gdy nigdy wcześniej nie znała tego języka (http://bit.ly/9t7JW9).

Naukowcy mają zadziwiające osiągnięcia w dziedzinie analizy mózgu, np. powstają aktualnie pierwsze skanery, które potrafią powiedzieć o czym osoba myślała podczas snu(http://www.newscientist.com/article/mg20427323.500-brain-scanners-can-tell-what-youre-thinking-about.html)

Dowiedziono, że krótka drzemka potrafi zwiększyć produktywność. Thomas Edison spał ok. 4-5 godzin dziennie, ale zwykł robić drzemki w ciągu dnia. Trzymał wtedy w rękach ciężkie piłki gdy zasypiał, żeby nie wprawić się w stan głębokiego snu. Kiedy stan ten przychodził jego ręce rozluźniały się a piłki upadały z hukiem na podłoge budząc go(http://www.wilywalnut.com/Thomas-Edison-Power-Napping.html, http://dilbert.com/fast/2009-05-26)

Znane sa w historii przypadki ludzi, którzy byli w stanie powstrzymać sie od snu kilka dni (http://www.youtube.com/watch?v=nSNRdvusmQs). Jednak sen jest niezbędny do prawidłowego funkcjonowania organizmu. Brak snu powoduje drastyczny spadek wydajności a nawet choroby. Dowiedziono również, że geny mają wpływ na to ile potrzebujemy snu. U niektórych osób wykryto gen bezsenności, pozwalający im funkcjonować bez snu przez długi czas.

Cała prezentacja z odnośnikami do innych źródeł jest na stronie Nathaniela: http://ntschutta.com/slides/Hacking_Your_Brain.pdf

Nathaniel Schutta - 'Going mobile with jQuery'

Kolejny raz Nathaniel udowodnił, że na swoich prezentacjach jest prawdzimym showman'em. Przedstawił inspirujące przykłady implementacji interfejsu aplikacji mobilnych w jQuery Mobile (http://jquerymobile.com/). Na pewno sam tego spróbuję.

Tworzenie interfejsów mobilnych w HTML5 ma taką główna zaletę, że dostarczamy jeden kod na wiele systemów operacyjnych i wiele rodzajów urządzeń. Czasami różnica w wyglądzie między aplikacjami natywnymi a napisanymi w HTML5 jest niezauważalna. Godna uwagi jest biblioteka Pretty Mobile (http://wdtoolbox.com/prettymobile-iphoneitouch-website-development-toolkit/) wspomniana przez jednego z uczestników prezentacji, która pomaga tworzyć interfejsy wyglądające niemal identycznie jak natywne.

Linda Rising - 'The Power of Retrospection'

Po raz kolejny Linda udowodniła swoje niezwykłe zdolności prezentacyjne, tym razem podczas warsztatu.

Mówiła o retrospekcji. W projektach Agile to termin oznaczający spotkania, na których zespół podsumowuje projekt (lub jego fazę). Co ważne, w spotkaniach tych nie uczestniczą managerowie. Moga oni dopiero zobaczyć anonimowe wyniki po spotkaniu.

Główne regóły retrospekcji to:

- nie wytykamy błędów, nie zwracamy sie do konkretnych osób

- nie przyznajemy się do własnych błędów

Mówimy o problemach a nie konkretnych osobach z nimi związanych. Nie winimy nikogo za nic.

4 pytania które należy zadać sobie na retrospekcji:

1) Co działało i o czym nie chccemy zapomnieć?

2) Co powinniśmy zrobić inaczej?

3) Czego nauczyliśmy się?

4) Co jest nadal zagadką?

Kiedy mówimy co powinniśmy zrobić inaczej, powinniśmy znaleść maksymalnie 3 małe i proste do zmiany rzeczy, nawet jeśli w danej chwili nie wydaje się żeby przyniosły konkretny efekt. Często rozwiązanie przychodzi samo, gdy wcielimy te zmiany w życie.

Na spotkaniach retrospekcji miło też, gdy każdy z uczestników doceni wkład pozostałych w projekt. Wszyscy zbierają się i każda osoba mówi co podobało jej sie w pozostałych osobach, np. "Doceniam, że kiedy dostarczaliśmy projekt zostałeś w weekend w pracy nawet kiedy Twój syn miał wtedy urodziny. Bez Ciebie nie udałoby sie nam dojść do tego momentu." Prawda że budujące? ;)

Technika, która pomaga wychwycić rzeczy dobre i złe podczas trwania projektu to tzw. 'linia czasu'. O co w tym chodzi? Obojętne którego dnia podczas trwania projektu każdy jego członek może wybrać któryś spośród czterech kolorów kartek i napisać na niej jak sie czuje, opisać swój problem. Kolory to: czerwony dla złości, zielony dla wyzwania, niebieski dla szczęścia, żółty dla zaskoczenia. Kartki są potem wieszane na ścianie lub kładzione na podłodze anonimowo. Na koniec projektu albo jego fazy gdy dochodzi do retrospekcji na podstawie kartek tych można łatwo zaobserwować jak przebiegał projekt, kiedy miał najwięcej problemow (czerwone kartki) a kiedy niejasności (żółte kartki).

Jakub Nabrdalik - 'Hack your company'

Jakub zaprezentował zbiór przykładów z życia jak poprawic wydajność i motywacje pracowników w firmie. Kilka wskazówek:

- tygodniowe/miesięczne warsztaty (jak code retreat) trwające ok. 1 godz.

- tygodniowe/miesięczne prezentacje, na których osoba przedstawia wybraną przez siebie technologie, trwające ok. 1 godz.

Jak przekonać szefa do takich przedsięwzięć? Jednym ze sposobów może być zaproponowanie czasu, gdy i tak produktywność nie jest zbyt wielka, czy wręcz bliska zeru, czyli ok godz. 15.00 - 16.00 w piątki. Osobiście do mnie to nie przemawia. Wolałbym żeby moi słuchacze nie byli rozpraszani przez myśli typu 'Czy to już weekend?' :) Innym uzasadnieniem może być to, że mniej doświadczeni deweloperzy uczą się przez warsztaty, poprawiając jakość dostarczanego kodu, poznając nowe technologie.

Pierwszy dzien zakończył się imprezą przy piwie :)

Drugiego dnia rozpocząłem od prezentacji Jevgeni Kabanov - 'Do you really get Memory?'

Dotyczyła wydajnośći JVM, zasady działania garbage collector, ich różnych implementacji, modelu pamięci JVM (przestrzenie young, ternured, perm), co oznacza słowo 'volatile'.

Fragmenty prezentacji, niestety w niezbyt dobrej jakości można obejrzeć tutaj:

http://www.youtube.com/watch?v=-KlYKIXBdHw

http://www.youtube.com/watch?v=lE5djOLKTjg

http://www.youtube.com/watch?v=it9I5bIzktE

Hamlet D'Arcy - 'Java Boilerplate Busters'

Przegląd takich bibliotek Open Source jak:

Google Guava

Apache Commons

Pomagają one pisać czysty i zrozumiały kod, który jest zarazem wydajny, zamiast odkrywac na nowo cos po swojemu, co zabiera sporo czasu a niekoniecznie działa bezbłędnie i wydajnie.

Dan Allen - 'Arquillian: Real Java enterprise testing'

Prezentacje rozpoczął drobnymi problemami z komputerem ale mimo ok. 15 min. opóźnienia poprowadził interesujący wykład o testowaniu aplikacji enterprise w ich docelowym środowisku zamiast odizolowanym(np. zagnieżdzonego kontenera).

Narzędzie wykorzystywane w tym celu to Aquillian wraz z Shrinkwrap od JBoss.

Patrycja Węgrzynowicz - 'Patterns and Anti-Patterns in Hibernate'

Spodziewałem sie troche innej prezentacji, tymczasem to o czym była mowa znałem już wcześniej więc osobisty zysk był niewielki, ale dla kogoś kto się wcześniej nie spotkał z problemami z izolacją transakcji i wydajnością zapytań w Hibernate wykład był z pewnością interesujący.

Jarosław Pałka - 'Architecture and programming model for NOSQL web'

Po raz pierwszy spotkałem się tutaj z przykładem użycia NOSQL w realnym projekcie. Ciekawy wykład. Źródła przykłądów z prezentacji można znaleść tutaj https://bitbucket.org/kcrimson Nie mogę się doczekać kiedy znajdę trochę czasu żeby z tym poeksperymentować. Innym cennym źródłem informacji o NOSQL jest http://nosql.mypopescu.com

Jarosław pokazał jak połączyć bazę NOSQL typu klucz-wartość z tradycyjną bazą relacyjną. Ponadto ciekawa była dyskusja na temat komercyjnego użycia bazy Neo4j. Utwierdza mnie to w przekonaniu, że trend NOSQL będzie się w przyszłości cieszył coraz większym zainteresowaniem i nie jest to tylko tymczasowa moda.

Interesuję sie tym tematem od dośc niedawna i cieszę się, że w dalszej części konferencji mogłem znaleść jeszcze więcej na temat skalowalności aplikacji i NOSQL.

Matthew McCullough - 'Monitoring 10 Critical Code Quality Metrics with Sonar'

Matthew zaprezentował ciekawe narzędzie - Sonar - aplikacja enterprise do analizy kodu z webowym interfejsem użytkownika. Narzędzie jest w 90% Open Source. Pozostała część ma licencje komercyjną. Umożliwia rozszerzanie przez pluginy, rozpoznaje wiele języków programowania (nawet COBOL co było zaskoczeniem) i przedstawia się ciekawie jako narzędzie do okresowych przeglądów kodu. Użytkownik może nawigować od wyników analizy do linii kodu.

Co więcej, aplikacja posiada plugin Eclipse, dzięki któremu można synchronizować wyniki analizy z Eclipsem, łatwo nawigować do problematycznego kodu, poprawić go i komitować zmianę.

Serwer aplikacji umożliwia integrację z SVN, Git, Hudson, Apache Ant i Mavenem.

Google Chart użyto do prezentacji najczęstrzych grzechów programistów z następujących dziedzin:

  • rozmiar/skomplikowanie kodu

  • testy jednostkowe

  • duplikacje

  • standardy kodowania

  • potencjalne błędy

  • architektura

  • komentarze



Nathaniel Shutta - 'Agile UI'

Jeszcze raz świetne przemówienie. Tym razem na temat użyteczności projektów. Zaprezentował kilka przykładów złych a zarazem śmiesznych projektów z codziennego otoczenia. Główna zasadą przy projektowaniu interfejsu użytkownika jest wcielenie się w osobę, która będzie rzeczywiście tego używała. Gdzie ona pracuje? Czy jest tam głośno? Czy jest jasno?

Software powinien być intuicyjny, ponieważ nigdy nie wystarczy czasu na dodatkowe szkolenia. Co jeśli znaki są niezauważalne lub źle interpretowane?(http://www.slate.com/id/2245644)

Slajdy z dodatkowymi odnośnikami sa tutaj: http://ntschutta.com/slides/Agile_UI.pdf

Drugi dzień zakończył Hackergarten. Jest to spotkanie, na którym developerzy pracują nad różnymi projektami Open Source. Celem jest skończenie spotkania z działającym kodem, dokumentacją, prezentacją lub czymkolwiek innym co jest pożyteczne dla projektu.

Nigdy wcześniej nie brałem udziału w czymś takim. Idea jest ciekawa, gdyż można poznać nowych ludzi, zobaczyć nad czym pracują, w jaki sposób, jakich używaja narzędzi. Bardzo pouczające. Mnie udało się np. spotkać pierwszy raz z liquibase

Fajnie też, że pojawiło się darmowe piwko i przekąski ;)

Ostatni, trzeci dzień, rozpocząłem od Karl Rehmer - 'How Debuggers Work'

Niestety mój poziom wiedzy na temat debuggerów, ich działania i projektowania nie pozwolił mi wynieść zbyt wiele z tej prezentacji. Co utkwiło mi w pamięci to, że debuggery Java znacznie sie różnią od tych dla języków natywnych, które to korzystają z DWARF).

Debuggery Java tymczasem nie używają adresów ani kodu maszynowego a korzystają z JDWP (Java Debug Wire Protocol) lub JDI (Java Debug Interface) do komunikacji z JVM. Może być to użyteczne nie tylko do pisania debuggerów ale także do analizy działających programów, np. informacji o przestrzeni stałych, przechwytywania wykonywanych metod.

Costin Leau - 'Using Spring with non relational databases'

Costina można znaleść na http://twitter.com/costinl

Kolejna dawka wiedzy o NOSQL. Tym razem dowiadujemy się o wsparciu Springa w tej dziedzinie http://www.springsource.org/spring-data

Spring Data dostarcza rozszerzeń dla baz klucz-wartość(Redis, Riak), dokumentowych(MondoDB, CouchDB), grafowych(Neo4j) z użyciem AspectJ do przezroczystego zapisywania POJO. Przykład użycia Neo4j ze Springiem to Restaurant Social

Spring ma tez wsparcie dla Apache Hadoop - szkieletu do intensywnego przetwarzania danych, o którym w dalszej częsci relacji.

Matthew McCullough - 'Hadoop: Divide and Conquer Gigantic Datasets'

Był to wstęp do Apache Hadoop. Matthew pokazał obraz VMware, króry można za darmo ściągnąć z http://www.cloudera.com/downloads/ i zobaczyć czym to się je.

Hadoop jest idealnym rozwiązaniem dla systemów operujących na dużych plikach o rozmiarze rzędu 1TB. Im większe pliki tym wydajniejszy jest Hadoop.

Dane są rozproszone na kilku serwerach, ale jest to przezroczyste dla końcowego użytkownika, który może wykonywać polecenia z linii komend tak, jak gdyby dane były lokalnie na dysku. Użytkownik może też pisac własne metody map-reduce w Javie, które następnie są użyte do przetwarzania rozproszonych danych.

Hadoop zainspirowany został przez MapReduce i Google File System. Dokument opisujący GFS dostępny jest na http://labs.google.com/papers/gfs.html

Mam zamiar przyjrzeć się WMware od Cloudera bliżej:)

Neal Ford - 'Abstraction Distractions'

Prezentacja dostępna na http://www.jfokus.se/jfokus11/preso/jf11_AbstractionDistractions.pdf

Neal podkreślił wagę szerszego spojrzenia na przedmiot, ktorego model tworzymy. Abstrakcja nigdy nie dorówna oryginałowi. Abstrakcja która jest dobra w danej chwili, może się okazać kompletnie niedorzeczna w przyszłości, np. w przeszłości wierzono, że Ziemia jest w centrum Wszechświata i jakakolwiek inna idea była tępiona siłą. Inny przykład - jak zapisać ważne informacje, żeby przetrwały dekady? Np. pierwsze programy komputerowe były zapisywane na taśmach perforowanych. Jeden z programów, z tamtych czasów który nadal cieszy się pularnością to edytor Emacs. Jego oryginalny kod źródłowy jest zapisany na taśmach, które są przechowywane do dziś, ale żeby go odtworzyć należałoby zbudować maszynę, która potrafi te taśmy odczytać.

Ludzie zaczynają przedsięwzięcia w celu stworzenia rozwiązań, które mają przetrwać wieki. Jednym z takich jest projekt Long Now - próba stworzenia gigantycznego zegara http://longnow.org

Innym przykładem abstrakcji (spośród wielu wymienionych przez Neala) może być klient poczty e-mail. Przez lata wiadomości składowano w strukturach folderów, aż do czasu, gdy powstał GMail i idea przypisywania etykiet do wiadomości. Pojedyncza wiadomość może mieć wiele etykiet, co jest o wiele berdziej naturalne i użyteczne niż konieczność wrzucenia jej w jeden tylko folder (naturalnie moglibysmy skopiować wiadomość do wielu folderów, ale czy nie jest to niepotrzebna komplikacja w porównaniu do abstrakcji stworzonej przez GMail?)

Rekomendowane ksiązki to Paul Graham: 'Hackers and Painters' i Gef Roskin: 'The Human Interface' .

Neal wspomniał też o paradoksie Blub, który można wyjaśnić jako ignorancje dla nowych rzeczy, np. ignorowanie nieznanego języka programowania przez programistę, który jest przywiązany do języka znanego przez siebie i używanego codziennie.

Michael Nygiard - 'Architect for Scale'

Michael opowiedział o systemach dużej skali, partycjonowaniu i skalowalności, W tym kontekscie ponownie pojawia się NOSQL i teoria CAP wg. ktorej system może spełniać tylko maksymalnie 2 cechy jednocześnie spośród Consistency (C), Availability (A) and Partition-tolerance (P). W partycjonowaniu chodzi też o najmniejsza możliwą liczbę węzłów w klastrze i większą liczbe klastrów.

System może byc partycjonowany np. geograficznie, funkcjonalnie.

Reguła Amdahl'a została zestawiona z uniwersalnym prawem skalowalności.

To była już ostatnia prezentacja, na której byłem, bo musiałem spieszyć się na powrotny pociąg do Łodzi. Szkoda bo doszły mnie słuchy że kolejne prezentacje były niemniej ciekawe.

Strona domowa konferencji

piątek, 1 kwietnia 2011

środa, 2 marca 2011

Darmowy kurs UML...

.. rozpocząłem dziś. Kurs Grześka Kukawskiego składa się z 9 lekcji i ćwiczeń przysyłanych co 3 dni na maila.
Pozwolę sobie przytoczyć notkę samego autora:
"Z pewnością nie bez powodu zainteresował Cię mój Darmowy Kurs UML.
Chcesz wiedzieć więcej na temat modelowania za pomocą UML i z pewnością interesuje Cię wiedza praktyczna z tego zakresu. Na pewno marzysz również o zwiększeniu Twojej pozycji na rynku pracy. To bardzo dobrze, pomogę Ci w tym.

Jest jednak jedno ale. Widza na temat notacji to jedno, a umiejętność modelowania systemów informatycznych to drugie. Można by to porównać do języka obcego. To, że nauczysz się np. angielskiego nie znaczy jeszcze, że umiesz w rozmowie wzbudzać sympatię anglików. Do tego potrzebujesz poznać ich kulturę, przyzwyczajenia i mentalność. Język angielski jest Ci do tego niezbędny, ale aby go wykorzystać w określonym celu, potrzeba ćwiczyć.

Wiem o tym doskonale i dlatego wierzę, że to czym się zajmuję ma sens. Zawsze staram się uczyć wiedzy praktycznej.

W tym darmowym kursie zobaczysz wiele przykładów użycia języka UML. Będziesz miał zadaną również, po każdej lekcji, pracę domową. Przygotuj się więc i zarezerwuj trochę czasu. Planuję również rozwijać swoją działalność, aby dostarczać jak najwięcej wiedzy praktycznej. Jednak na razie skupmy się nad nauką języka ang.. (przepraszam) UML.

Jeszcze kilka spraw organizacyjnych. Dzisiaj dostaniesz jeszcze wolne. Ale co trzy dni, będziesz dostawał kolejną lekcję, którą będziesz musiał zrozumieć i zrobić do niej ćwiczenia. Przygotuj się na to. Jeśli miałbyś jakieś wątpliwości możesz zajrzeć na forum (forum.scire.pl), gdzie ćwiczenia są dyskutowane przez Twoich współkursantów (o ile już na nim nie jesteś).

Wszystkich lekcji (nie licząc dzisiejszego wstępu) jest dziewięć i będę wysyłał je do Ciebie co trzy dni."


Kurs dostepny pod adresem: http://darmowy-kurs-uml.scire.pl/

poniedziałek, 24 stycznia 2011

Nepal – Manaslu trecking 2011 cd.

Kontunuując przygotowania do wyprawy...
Mam juz rezerwacje biletów. Troche niestety sie wykosztowalem. Przelot w obie strony w ramach jednej z najtanszych opcji wyniósł 3.696,17 PLN. Mam nadzieje ze będzie warto :)


Flight details
Outgoing

Departure 11:55 Fri 7-Oct Warsaw - Okecie (WAW) Terminal:A
Arrival 13:40 Fri, 7-Oct London - LHR (Heathrow) Terminal:5 British Airways 847
Class: Economy E-ticket

Departure 21:05 Fri 7-Oct London - Heathrow (LHR) Terminal:4
Arrival 10:50 Sat, 8-Oct Delhi - DEL (Indira Gandhi Intl) Terminal:3 Kingfisher 2
Class: Economy E-ticket

Departure 13:25 Sat 8-Oct Delhi - Indira Gandhi Intl (DEL) Terminal:3
Arrival 15:25 Sat, 8-Oct Kathmandu - KTM (Tribhuvan) Kingfisher 65
Class: Economy E-ticket
Return

Departure 15:40 Tue 1-Nov Kathmandu - Tribhuvan (KTM) Terminal:
Arrival 17:15 Tue, 1-Nov Delhi - DEL (Indira Gandhi Intl) Terminal:3 Jet Airways Ltd 261
Class: Economy E-ticket

Departure 03:05 Wed 2-Nov Delhi - Indira Gandhi Intl (DEL) Terminal:3
Arrival 07:50 Wed, 2-Nov Brussels - BRU (Brussels National) Jet Airways Ltd 230
Class: Economy E-ticket

Departure 09:55 Wed 2-Nov Brussels - Brussels National (BRU) Terminal:
Arrival 11:55 Wed, 2-Nov Warsaw - WAW (Okecie) Terminal:A LOT Polish Airlines 236
Class: Economy E-ticket

sobota, 15 stycznia 2011

Code Retreat Poznań 2011

Dzis odbył się kolejny Code Retreat , tym razem w Poznaniu. Warsztaty na których programiści połaczeni w pary starają sie rozwiązać prosty problem (Grę Życia Conway'a ) a przy tym praktykują metodyki Test Driven Development i Behavior Driven Development. Pary zmieniają się po każdej sesji trwającej ok. 45min. Sesji było 5.
Całość rozpoczęła się o godz. 8.30 uroczystym przywitaniem i wspólnym sniadaniem.
Potem zaczęła się ostra praktyka aż do ok. 12.00, kiedy to poszlismy posilić się na smaczny obiad.
Po obiedzie dalsze sesje, w miedzyczasie 30min. dyskusja na wybrane przez nas samych tematy cieszące się największym zainteresowaniem, czyli: "TDD vs. BDD" albo do wyboru "TDD w praktyce".
Spotkanie zakończyło sie ok. godz. 17.00.

Osobiście mam bardzo miłe wrażenia. Pierwszy raz wziąłem udział w tego typu warsztatach.
Interesujące było na jak wiele sposobów można było podejść do tego samego problemu w różnych parach, zaczynając od testowania warunków życia samej pojedynczej komórki w otoczeniu sąsiadów, albo od testów na wyższym poziomie, czyli testowania całej tablicy zawierającej komórki.
Miłe wrażenie pozostawiło po sobie też biuro firmy Cognifide, w którym odbyło się szkolenie.
Podsumowując, polecam każdemu w przyszłośći podobne warsztaty. Warto było wstać o 5.30 i pojechac do Poznania na cały dzien, żeby wieczorem znow po 2.5 godzinach jazdy autem być w domu.

środa, 5 stycznia 2011

Nepal - Manaslu trecking 2011

Dziś dnia 04.12.2011 podjąłem definitywną decyzje o wyjeździe do nepalu w październiku tego roku.

Pomysł wyjazdu pojawił się już dość dawno, jeszcze w ubiegłym roku. Pomysłodawcami byli moi znajomi z Francji. Wraz z drupą 3 innych Francuzów wybierali się na trecking wokół Manaslu organizowany z frencuskiej agencji turystycznej Base Camp. Znajomi Ci podróżowali już wczesniej kilka razy z tą agencją w różnych odległych rejonach świata i dobrze je wspominali ze strony organizacyjnej.

Trochę czasu biłem sie z myślami czy jechać.

Po pierwsze jest to dość kosztowna 'wycieczka'. Całość z biletem lotniczym wyniesie ok. 8000PLN, do tego jeszcze jakies ubrania, spiwór plecak. Pewnie zamknę sie w 10000.

Po drugie wyprawa trwa 25 dni z czego 17 dni to wędrówka średnio na wysokości 2500 m n.p.m (najwyzszy punkt - 4990 m n.p.m) więc zastanawiałem sie czy w ogóle dam sobie rade.

Po trzecie - wszystko trzeba zorganizować dużo wcześniej, tzn. juz niedługo (w styczniu), zarezerwować loty, zapłacić wpisowe, a jak wiadomo plany mają to do siebie że często lubią nie wypalać.

W końcu znalazłem dla siebie wytłumaczenie - oszczędzając cały rok i nie szalejąc z wyjazdami (po częśći z braku dni urlopowych) powinienem móc sobie pozwolić na taki wydatek, a że lubię sie ruszać myślę, że do wyjazdu powinienem wystarczająco przygotowac się kondycyjnie - będzie to jeden z moich celów na ten Nowy Rok :)

Dziś otrzymałem od agencji plan wyjazdu (w jęz. angielskim) a przedstawia się następująco:

 


 


Nepal 2011

Round Manaslu Trek & Katmandu valley cultural tour

25 days, 17 walking days

Trek & cultural tour

Level: Sustained


 

HIGHLIGHTS

- Whole round Manaslu landscapes.

- A trek out of beaten tracks

- Our great camping trek into wilderness.


ITINERARY

01: Flight to Katmandu. (08/10)



Arrival at airport and transfer to hotel. Free time at leisure.

- Accommodation: Hotel.

02 : Katmandu



Visit Buddhist stupa of Swayambhunath, located on hilltop above Katmandu then walk to Durbar square and back through old newari area.

- Accommodation: Hotel.

03 : Gorkha - Bhogteni (500 m).



Early morning departure to Gorkha by private vehicle (6.30 h).

Stop at Manakamana temple on the way. Start trek to Bhogteni.

- Walking hours : 2

- Accommodation: Camp.

04 : Baluwa (1000 m).



Climb up the valley of Dhorandi Khola till Baluwa (1000 m).

- Altitude : + 500 meters

- Walking hours : 6

- Accommodation: Camp.

05 : Baluwa - Barpak (2000 m).



We continue following same river till Ranglung then steep climb up till Gurung village of Barpak.

- Altitude : + 1000 meters

- Walking hours : 6

- Accommodation: Camp.

06 : Barpak - Laprak (2 200 m).



Steep up till Pushu Danda at 3 000 m, from where we get wonderful view upon Buddha Himal & Ganesh Himal. Down to the big stone housed Gurung village of Laprak.

- Altitude : + 1100 meters – 700 meters

- Walking hours : 5

- Accommodation: Camp.

07 : Laprak - Khorla Bensi (970 m).



Down till river. Slight walk up till Singla then steep down to Khorla Bensi.

- Altitude: + 200 meters – 1400 meters

- Walking hours : 6

- Accommodation: Camp.

08 : Khorla Bensi - Jagat (1370 m).



We reach the first gorges and cross several typicalvillages. Camp in Jagat (1350 m).

- Altitude: + 400 meters

- Walking hours : 6

- Accommodation: Camp.

09 : Jagat - Pewa (1750 m).



This area isinhabited by Gurung and Tibetans. Climb to Pewa.

- Altitude: + 560 meters

- Walking hours : 6

- Accommodation: Camp.

10 : Pewa - Ghap (2380 m).



Walkthrough gorges till Ghap.

- Altitude: + 690 meters – 60 meters

- Walking hours : 6:30

- Accommodation: Camp.

11 : Ghap - Lhö Gaon (3020 m).



We cross pine forest till Namrung then through meadows.

We finish our day spoting the great glacier coming from Manaslu & Naike Himal.

- Altitude: + 1100 meters – 100 meters

- Walking hours : 6:30

- Accommodation: Camp.

12 : Lhö Gaon - Sama Gaon (3390 m).



Track till Sama monastery

- Altitude: + 535 meters – 175 meters

- Walking hours : 5

- Accommodation: Camp.

13 : Sama Gaon - Samdo (3690 m).



Slight way up to Samdo village

- Altitude: + 365 meters

- Walking hours : 3

- Accommodation: Camp.

14 : Samdo - High Camp (4335 m).



Walk next to Tibetan border. Climb up in glacier valley till Larkya glacier.

- Altitude: + 550 meters

- Walking hours : 4

- Accommodation: Camp.

15 : Larkya Pass (4990 m) - Bhimthang (3 600 m).



Climb up to Larkya Pass (4990 m). Breathtaking view.

It isa long steep way down to shelter of Bhimthang.

- Altitude: + 650 meters – 1350 meters

- Walking hours : 7-8

- Accommodation: Camp.

16 : Bhimthang - Tileche (2300 m).



Way down through forest till river to reach Tileche village inhabited by Manangi.

- Altitude: – 1300 meters

- Walking hours : 7

- Accommodation: Camp.

17 : Tileche - Chamje (1430 m).



Following Marsyandi river, we down in Manangi country till Tal, village surrounded by cliffs.

- Altitude: – 900 meters

- Walking hours: 6

- Accommodation: Camp.

18 : Chamje - Ngadi (Naya Gaon) 920 m.



We follow down river. Valley widens & rice paddies appear.

- Altitude: – 700 meters

- Walking hours: 6

- Accommodation: Camp.

19 : Nagdi - Bensishar - Katmandu.



Up to ridge of Bahundanda then cross fields and villages till where the vehicle takes us back to Katmandu.

- Walking hours: 4

- Accommodation: Hotel.

20 : Patan - Khokhana - Katmandu.



Visit Patan & its museum beforelunch then drive to traditional handcraft villages of Bungamati & Khokana.

Hotel in Patan

- Walking hours: 1

- Accommodation: Newa Chen.

21 : Pashupatinath - Bhaktapur.



Vist Pashupatinath sanctuary dedicated to Shiva and drive to the medieval city of Bhaktapur where we’ll stay once most tourists are gone.

- Accommodation: Shiva Guest House.

22 : Changunarayan – Telkot - Nagarkhot



Enjoy early morning in Bhaktapur then drive to Changunarayan temple dedicatedto Vishnu and located on a ridge. Hikke following ridge till Telkot then drive to Nagarkot (2000 m)

- Walking hours: 2

- Accommodation: Farm House.

23 : Sankhu - Bodhnath.



Enjoy rising sun upon Himalayan range then walk through country side Sankhu. Possible to climb up 45 min to Vajrayogini sanctuary before transfer to big stupa of Bodhnath. Back to Katmandu

- Walking hours:

- Accommodation: Hotel

24: Katmandu



Free time

- Accommodation: Hotel

25: Free time then transfer airport to fly back (01/11).






W najbliższym czasie zebieram się za organizowanie biletow lotniczych i wizy.
Niestety w Polsce nie ma konsulatu nepalskiego. Najbliższy jest w Berlinie, toteż napisałem tam z zapytaniem czy formalności można załatwić droga pocztową.
Jeśli nie to albo przy okazji wizyty w Berlinie uda mi się to załatwić albo można też wykupić wize na miejscu w Katmandu (stolicy Nepalu).