Archive for June, 2009

GIT pojawił się na moim ulubionym hostingu

Jak już wcześniej pisałem tutaj i tutau hosting vipserv nie przestaje dodawać nowych narzędzi, które sprawiają, że wyprzedza on inne hostingi o lata świetlne.

Nie znam drugiego hostingu tak wszechstronnie spełniającego wymagania webdeveloperów, dlatego nie przestaję go polecać.

Najfajniejszą ciekawostką jest to, że dorzucili do zestawu narzędzi GIT:

Git

Git

oraz wyraźna poprawa stabilności działania serwerów. Wydaje mi się, że powinni monitorować uptime tychże, aby móc potwierdzić moje (wasze też?) odczucia.

2 Comments

Nie krytykuj, jeśli nie rozumiesz…

Teraz coś co tylko lekko związane jest z programowaniem. Serwis webinside żali się, że Google podaje złą datę śmierci Michaela Jacksona (http://www.webinside.pl/news/6076 nie podaję jako aktywny link, bo nie chcę podnosić rankingu takich bzdurnych serwisów).

Ci geniusze wpisali frazę “Michael Jackson died” i wielce są oburzeni iż podaje złą datę śmierci gwiazdy. Jednak dopiero w artykule okazuje się, że podaje dobrą datę, ale Michaela Jacksona – pisarza, starszego od króla popu o 15 lat.

Pozostaje pytanie dlaczego artykuł o takim tytule w ogóle się pojawił:
1. albo autorzy są totalnymi ignorantami i nie wiedzą, że wyszukiwarka google służy do wyszukiwania stron najlepiej pasujących do podanej frazy uwzględniając ilość linków prowadzących do tych informacji. Dlatego kilka dni po śmierci króla popu, strony z tą informacją ciągle są nisko w rankingach. Jeśli nie potrafią używać mózgu, to może powinni przestawić się na wyszukiwarki służące do zwracania przeanalizowanych informacji takich jak WolframAlpha (http://www31.wolframalpha.com/input/?i=Michael+Jackson).

2. wiedzą, że piszą bzdury, ale wrzucają krzykliwy tytuł, żeby jak każdy śmieciowy serwis ze śmieciowymi informacjami po to, aby napędzić sobie czytelników tanią sensacją.

To już któryś raz, kiedy webinside umieszcza artykuły tego typu, dlatego postanowiłem wyżalić się na swoim blogu (tym bardziej, że komentarze tam można umieszczać tylko będąc zarejestrowanym – może bronią się przed ujawnieniem swojego prawdiwego oblicza?)

Tylko czekać, aż zauważą, że trzecim miejscu jest to:

Michael Jackson died 12-20 years ago

Michael Jackson died 12-20 years ago


I taktycznie pominą fakt, że wynik dotyczy portalu theonion (w którym notabene jest artykuł, jakoby Jackson zmarł w wieku 12 lat) i, że zaopatrzone jest nagłówkiem “Entertainment”.

2 Comments

Pakowanie biurek…

W ten weekend po przeprowadzce do nowego mieszkania miałem za zadanie spakować trzy zastane tam, niepotrzebne biurka, które miały być wyniesione do piwnicy.

Sam proces pakowania nie był wyjątkowo interesujący, ale fakt, że biurek było trzy sprawił, że wyglądało to nieco jak iteracje w zwinnym podejściu wytwarzania oprogramowania ;)

Otóż przed pierwszym biurkiem wiedziałem, że przede wszystkim pakowanie ma zabezpieczyć biurko przed ewentualną wilgocią w piwnicy, po drugie chodziło o to, aby wygodnie je tam zanieść(1). Miałem jakiś pomysł jak to zrobić(2), więc się za to zabrałem. Postanowiłem włożyć zestaw desek do worka w których przewoziliśmy ubrania podczas przeprowadzki (recycling!). Jednak okazało się, że są nieco za małe(3), więc trzeba było je od góry czymś zamknąć. Użyłem folii w której był zawinięty materac (recycling2!). Po spakowaniu okazało się, że paczka jest niezła, ale odrobinę luźna. Przy przenoszeniu do piwnicy, trzeba będzie trzymać ją zawsze “od spodu”(4).

Druga iteracja była lepsza. Pojawiło się nowe wymaganie(5): jedna paczka powinna dać się znieść jednej osobie. Z uwagi na dość znaczną wagę nie mogła ona absorbować sił znoszącego do tego, aby nie rozpadła się po drodze. Na szczęście pierwsza paczka spełniała i ten wymóg w stopniu minimalny, więc nie musiałem pakować jej ponownie. Zatem w drugiej paczce włożyłem najpierw większe deski, a miedzy nie mniejsze, dzięki czemu po ściśnięciu ich taśma tworzyło zbitą strukturę, sprawiającą wrażenie profesjonalnej paczki (jeśli pominąć czarny worek jak na śmieci, ale większy).

Przy trzecim podejściu zapragnąłem zrobić jeszcze lepszą paczkę :) (6)Postanowiłem włożyć wielką deskę, potem małe, a na końcu dużą. Zakładałem, że nie będę musiał “wciskać” desek mniejszych między dwie większe tak jak to miało miejsce w iteracji drugiej. Myślałem, że to i tak będzie taki sam układ desek, więc w efekcie będzie tak samo stabilna paczka, przy wygodniejszym procesie pakowania. Niestety przeliczyłem się, bo paczka numer 3 jakością plasowała się wyżej niż 1, ale jednak niżej niż 2.

Po co w ogóle zawracam Ci głowę tymi bzdurami? Chodzi o to, że przy wytwarzaniu oprogramowania zachodzą dość podobne zjawiska.

  1. Możesz mieć wyobrażenie o efekcie, jaki potrzebujesz (1)
  2. Możesz mieć wstępny pomysł jak to zrobić (2)
  3. Po drodze pojawiają się pewne problemy (3), oraz dodatkowe okoliczności o których należy pamiętać w dalszej części projektu (4)
  4. W trakcie pojawiają się nowe wymagania (5)

To pojawia się w każdym projekcie. Element (6) pojawia się tylko, jeśli wykonawca jest nastawiony na uzyskiwanie coraz wyższego poziomu jakości (ja nie miałem z tym problemu – w końcu to ja miałem te ciężary zanosić do piwnicy).

Wyobraź sobie teraz, że wszystkie trzy biurka pakuję jednocześnie. To znaczy: pakuję do pierwszego worka pierwszą deskę z pierwszego biurka, do drugiego drugą itd. W efekcie stosuję metodę, którą wymyśliłem na samym początku do wszystkich trzech biurek i w efekcie mam trzy paczki o niskiej jakości (dla przypomnienia jakość paczek była w kolejności od najmniejszej taka: 1, 3, 2). No i musisz sobie jakoś radzić.

Gdy jednak zaczniesz używać iteracji, możesz zacząć uczyć się na swoich błędach. W moim wypadku mogło to wyglądać mniej więcej tak:

Zielona linia to ideał, odległość od niej oznacza jak daleko jesteś od ideału. Im dalej - tym gorsza jakość

Zielona linia to ideał, odległość od niej oznacza jak daleko jesteś od ideału. Im dalej - tym gorsza jakość

Chodzi o to, żeby próbować znaleźć się jak najbliżej ideału tak długo jak długo się to opłaca. Gdybym miał czwarte biurko, prawdopodobnie wróciłbym do sposobu numer 2, dodając jakieś minimalne usprawnienia po drodze:

Czwarta itearacja zbliża mnie do ideału.

Czwarta itearacja zbliża mnie do ideału.

Gdybym pakowaniem biurek miał zajmować się zawodowo pewnie kupiłbym lepsze opakowania (na przykład takie z rączką jak w kartonach na monitory lcd – byłbym blisko ideału), jednak przy pierwszym biurku uczyłbym się jak z nich korzystać. Po kilku powtórzeniach osiągnąłbym perfekcję:

Stabilizacja blisko perfekcji

Stabilizacja blisko perfekcji. Kolejne ulepszenie, na przykład dodanie kółek i napędu do opakowań jest zbyt kosztowne w stosunku do przyniesionych korzyści

I tak zbliżałbym się do idealnego świata wspaniale zapakowanych biurek. Oczywiście istnieją takie przypadki, że lepiej coś głęboko przemyśleć, zanim zabierzemy się do realizacji. Dlatego właśnie będę musiał rozkręcić regał, w którym jedną z półek przykręciłem na odwrót… ;)

No Comments