16 stycznia 2015

Książka OCPJP6 teraz GRATIS

Niniejszym "uwalniam" moją książkę "Przygotowanie do certyfikacji OCPJP6". Od dziś można ją pobierać bez skrępowania i bezpłatnie w formie PDF ze strony OCPJP.net.

Czy pracuję nad nową wersją książki, tzn. OCPJP7? Aktualnie nie, ale w przyszłości (raczej bardziej niż mniej odległej) wszystko może się zdarzyć :)

8 maja 2012

Książka "Przygotowanie do certyfikacji OCPJP 6"

Niebawem ukaże się wznowienie mojej książki, którą opublikowałem w 2009 roku pod tytułem "Przygotowanie do certyfikacji SCJP 6". Tym razem książka będzie nosiła tytuł "Przygotowanie do certyfikacji OCPJP 6". Jest to zasadniczo rzecz biorąc kolejna wersja, nieco rozbudowana względem poprzednika, tej samej książki, zaś zmiana tytułu wynika ze zmiany oficjalnej nazwy certyfikatu. Zapraszam do witryny domowej publikacji, dostępnej pod adresem www.ocpjp.net, za pośrednictwem której książkę tę można będzie nabyć.

26 kwietnia 2012

General Interface już nie od TIBCO

Jakiś czas temu, w artykule "TIBCO General Interface – Warstwa widoku dla SOA", pisałem o znakomitej bibliotece JavaScript - TIBCO General Interface. Dobra wiadomość jest taka, że powstał klon biblioteki, już bez TIBCO w nazwie. Nazywa się to po prostu General Interface i jest projektem typu open-source. Polecam uwadze.

16 kwietnia 2012

Dlaczego tak ważny jest czas trwania projektu

Gdyby tak zapytać przeciętnego członka projektu, co jest zazwyczaj w projektach najbardziej pilnowane, to pewnie większość odpowiedziałaby, że terminy, tzn. czas, zwłaszcza czas do zakończenia całości. Może nawet bardziej niż koszty, a z pewnością bardziej niż jakość. Tego mitycznego czasu zarządzający projektami pilnują tak bardzo, że być może nawet nie zastanawialiśmy się nigdy czemu ten czas jest tak ważny. No bo skoro tak tego pilnują to przecież ważny być musi i już.

Czas trwania projektu jest oczywiście ważny z kilku przyczyn. Po pierwsze, dla kierownika projektu czas ważny jest z pobudek czysto egoistycznych – jest to bodaj najłatwiejszy sposób oceny skuteczności tegoż kierownika. Łatwo jest zadać pytanie czy projekt był oddany na czas, dużo trudniej rozstrzygnąć czy jakość jest zadowalająca. Często też trudny do policzenia jest rzeczywisty koszt. Jeśli kierownicy projektów rozliczani są głównie z tego, czy oddali poszczególne produkty projektu na czas, to nic dziwnego, że czas staje się szybko najważniejszym czynnikiem.

Oczywiście bywa też tak, że czas jest ściśle powiązany z kosztami. Jeśli projekt realizowany jest przez wynajętą firmę, to naturalnie kierownictwo tej firmy będzie dążyło do tego, żeby projekt skończył się jak najszybciej, bowiem wynagradzani są oni za dostarczane produkty, podczas gdy płacą (swoim pracownikom) za czas. Jeśli sami mają płacone za czas swoich pracowników, których tylko wypożyczają, to nadal czas jest dla nich kluczowy, tyle że tym razem zależy im na tym aby ci pracownicy zatrudnieni byli jak najdłużej, a wiadomo, że zatrudnieni będą co najwyżej do momentu zakończenia prac. Grają więc wtedy, o ile tylko mogą, raczej na wydłużenie czasu trwania projektu.

Powyższe czynniki nie są jednak źródłem autentycznego znaczenia czasu. Mówiąc to mam na myśli fakt, że są to znaczenia raczej nadane przez taką a nie inną organizację pracy czy konstrukcję umów. Jednak czas trwania projektu ma także autentyczne, niezależne od niczyich pomysłów czy bezpośrednich działań znaczenie. I to ogromne znaczenie.

Zastanówmy się na początek, z jakich etapów składa się projekt. Słowa projekt używam tu w znaczeniu potocznym i możliwie szerokim, tzn. mam na myśli projekt jako dążenie do uzyskania jakiegoś zamierzonego celu, od samego początku, od powstania idei, aż do samego końca, tzn. aż do końca istnienia skutków realizacji tych dążeń. Zgodnie z tą szeroką definicją możemy projekt podzielić na 4 etapy: etap przed-inwestycyjny, etap realizacji, etap eksploatacji i w końcu etap likwidacji. Samo ujęcie projektu w ten sposób, tak naturalny dla dyrektorów finansowych, może już być dla nas, specjalistów IT, szalenie odświeżające. Oto bowiem uświadamiamy sobie, że to co często nazywamy projektem, to tylko faza realizacji, czyli raptem pewna, często mała część projektu pojmowanego całościowo. Oto uświadamiamy sobie, że oprócz fazy poprzedzającej wykonanie pracy, jest także faza eksploatacji produktów projektu, która często łączy się z kosztami dużo wyższymi niż samo wytworzenie, ale nade wszystko, uświadamiamy sobie, że jest jeszcze coś takiego jak faza likwidacji. Tak, samo wycofanie produktów projektu z użytkowania też trwa i kosztuje, często bardzo dużo. Ale to osobny temat. Powróćmy do dyskusji o znaczeniu czasu.

W zdrowej organizacji projekty prowadzimy nie dla tego, że ktoś ma taką fantazję, tylko dla tego, że ktoś spodziewa się w wyniku realizacji tych projektów uzyskać określone korzyści ekonomiczne. Zanim więc przejdziemy od pomysłu do realizacji, musimy zastanowić się dobrze, jakie korzyści możemy realizując dany projekt uzyskać i z jakimi kosztami będzie się to wiązać. Weźmy dla przykładu ostatni głośny projekt sieci telekomunikacyjnej Play, mianowicie wdrożenie oferty na abonament w stałej cenie, bez limitu rozmów. Ktoś z całą pewnością musiał zastanawiać się nad tym ilu klientów zyska a ilu straci, musiał policzyć koszty wprowadzenia oferty i jej przyszłe skutki finansowe i dopiero na tej podstawie podjął decyzję o wdrożeniu. Zatem decyzja została podjęta jakiś czas temu. Przygotowanie wszystkiego co jest do jej zaoferowania klientowi końcowemu niezbędne, to etap realizacji projektu. Teraz jesteśmy w fazie eksploatacji, liczenia kosztów i zysków. Być może kiedyś Play zdecyduje się z oferty wycofać i wtedy wejdziemy w fazę likwidacji. Wiemy że mniej więcej równocześnie, praktycznie identyczną ofertę udostępniła inna sieć a kolejna zapowiedziała swoją adekwatną reakcję, toteż być może okaże się, że Play nie uzyska tych wszystkich pozytywnych efektów których się spodziewał. Zastanówmy się teraz, co by było, gdyby Play wystartował z taką ofertą rok temu, kiedy to konkurencja być może nie była jeszcze absolutnie gotowa na szybką odpowiedź? Co by było, gdyby odpowiedź konkurencji nadeszła dopiero po roku? Z pewnością Play zyskał by wielu nowych klientów. Nie jest dla nas ważne jak to było w tym konkretnym przypadku, ale załóżmy że Play podjął decyzję o realizacji już dawno temu, zaś samo przygotowanie zaplecza technicznego, tj. realizacja projektu niemiłosiernie wydłużała się w czasie. Oznaczało by to, że ogromna szansa na zostanie liderem rynku została zaprzepaszczona z powodu zbyt powolnej realizacji projektu! I to jest właśnie to autentyczne znaczenie czasu trwania projektu, a ściślej rzecz biorąc jego fazy realizacyjnej. Jeśli realizacja świetnego pomysłu będzie trwała długo, to może okazać się, że z samego tego powodu utracimy gro słusznie oczekiwanych korzyści ekonomicznych. Żyjemy w czasach gospodarki ściśle konkurencyjnej, gdzie szybkie wprowadzanie usprawnień, zmian czy nowych ofert jest często grą o być albo nie być. Znaczenie czasu realizacji projektów jest w tych warunkach szalenie ważne!