• Strona główna
  • Makler
  • Nauka
  • O autorze
  • To czytam
  • West Highland Way
Niebieski Pomarańczowy Zielony Różowy Purpurowy

Dziennik pokładowy

2010-08-09, 11:05

Wczoraj rozpoczęliśmy nasz rejs. Dość długo się zbieraliśmy z Wilkas (niedaleko Giżycka) – trzeba było iść do kościoła, na zakupy, a jak na zakupy to i na obiad. Na nasz posiłek w giżyckiej pizzerii czekaliśmy około godziny (!), w międzyczasie przez miasto przeszła wielka ulewa. Gdybyśmy byli na środku jeziora nasza sytuacja byłaby nieciekawa.

Ale wypłynęliśmy. Dla mnie była to pierwsza podróż jachtem. Albo prawie pierwsza – miałem w dzieciństwie jakiś epizod z żaglówką i burzą, ale mechanizm wyparcia skutecznie pozbawił mnie wspomnień z tego wydarzenia.

Płynie się fajnie. Wiatr wieje, łódka się przechyla i zasuwa całkiem szybko – zmierzyliśmy naszą prędkość przy użyciu ogryzka i wyszło nam 4-5 km/h (co potwierdził później GPS). Moją rolą w 6-osobowej załodze jest póki co bycie balastem („na lewo burta!”, „na prawo burta!”), choć przy zwrocie przez sztag luzowałem już i wybierałem szot foka (haha!).

Czytaj więcej Brak komentarzy   |   Napisał Newton
sie 02

Android – wrażenia z pola boju

W życiu każdego mężczyzny przychodzi moment, kiedy chce się porzucić dobrze znane okolice i udać się w dzicz i nieznane. Wakacje są dobrym momentem na takie wyprawy. Wakacyjna, programistyczna wyprawa w moim przypadku doprowadziła mnie do Android SDK – pakietu programistycznego dla telefonów z systemem Google.

Krótko mówiąc, chcąc nauczyć się czegoś nowego, postanowiłem napisać aplikację na swój telefon. Ponieważ ostatnimi czasy próbowałem nieco handlować na giełdzie (jeszcze trochę i może uda mi się w końcu wyjść na zero ;) ), pomyślałem o programie umożliwiającym takowy handel z poziomu telefonu komórkowego. Plan pracy zakładał kilka etapów, pierwszym z nich było utworzenie programu wyświetlającego aktualne notowania – i to się już udało.

Android SDK oparty jest o środowisko Eclipse. Cały pakiet ściąga się w postaci paczki, za darmo, ze strony Android Developers. Instalacja jest bezproblemowa, po ściągnięciu i zainstalowaniu Android SDK należy wybrać które z wersji Androida chcemy emulować, a pakiet dociągnie sobie potrzebne obrazy. Wszystko jest spójne, pod Linuksem działa bardzo fajnie i widać, że jest dopracowane. Eclipsa można lubić lub nie lubić, ja lubię (od kiedy mam 4 GB RAM-u, hehe). Podpowiadanie składni, uruchamianie aplikacji na emulatorze za pomocą jednego guzika, automatyczne kreatory pozwalające wyeksportować gotowy program w formie nadającej się do przesłania do Android Market, podgląd tworzonego aktualnie interfejsu – naprawdę przyjemne i ułatwiające życie rzeczy.

Androidowe aplikacje pisze się w Javie. Java jaka jest każdy widzi – z jednej strony rozwlekła składnia, nie bardzo czytelny kod, brak kilku przydatnych rzeczy takich jak przeciążanie operatorów, czy argumenty domyślne oraz – co najgorsze – ogromne konfiguracyjne XML-e. Z drugiej strony – tak naprawdę nie ma rozsądnej alternatywy. C++ jest jeszcze straszniejsze, a Python czy Ruby (mimo ogromnej sympatii, zwłaszcza dla tego drugiego) ze swoim dynamicznym typowaniem chyba jednak nie nadają się do tego, by być głównym językiem przenośnej platformy. Androidowa Java daje nam do dyspozycji kawałek dobrze znanego pakietu java.* (brakuje tu jednak np. klas obsługujących grafikę) oraz specyficzny pakiet android.*, który pozwala komunikować się z systemem, wyświetlać GUI, itd. Google nie troszczy się zbytnio o zachowanie standardów i nie uświadczymy w Androidzie rzeczy znanych z Javy SE czy ME.

Interfejs aplikacji opisuje się za pomocą XML-i. Występują w nich znaczniki opisujące pewne kontenery (na przykład LinearLayout czy TableLayout) oraz znaczniki oznaczające konkretne elementy (TextViewButton). Ustawiania elementów można nauczyć się dość szybko, pomaga tu bardzo wspomniana już funkcja podglądu. Istnieje nawet możliwość projektowania WYSIWYG, ale pozostawia ona jeszcze sporo do życzenia i lepiej edytować plik samemu. Myślę, że dla każdego kto miał do czynienia z HTML-em, projektowanie interfejsu aplikacji będzie dość intuicyjne.

Sama aplikacja składa się z aktywności, usług, dostawców treści oraz, hm, odbiorców (broadcast receiver). Aktywność jest odpowiednikiem okna. Usługa pozwala wykonać pewne operacje niezależnie od otwartych aktywności. Dostawca treści pozwala wykorzystywać innym aplikacjom wytworzone dane, zaś odbiorca pozwala reagować na różne zdefiniowane lub systemowe zdarzenia (na przykład: „jest już 12:00!”, albo: „Marek dzwoni”). Szczegółowy opis tych elementów znajduje się już na milionie stron, więc nie ma co się rozpisywać. Ważnym elementem każdej aplikacji jest także jakiś magazyn danych. W przypadku Androida każda aplikacja może w prosty sposób utworzyć swoją bazę SQLite. Nie ma co prawda żadnego standardowego ORM-a, ale od pisania surowych SQL-i chroni nas rozbudowana klasa SQLiteQueryBuilder.

Wszyscy wiedzą, że napisać program to jeszcze nic – trzeba go jeszcze zmusić do poprawnego działania. Android SDK daje możliwość debuggowania za pomocą Eclipsa (można ustawiać breakpointy, podglądać zawartość zmiennych itd). Warto też mieć uruchomioną gdzieś w tle aplikację adb logcat. Wyświetla ona logi systemowe oraz (co ważne) treści wyjątków. Można również logować swoje błędy przy użyciu sympatycznej klasy Log i jej statycznych metod (polecam Log.wtf()).

A gdy już utworzymy naszą aplikację której pragną miliony, wystarczy zapłacić $25 Google’owi i już można publikować program w Android Market. Niestety, Polska traktowana jest tu nieco po macoszemu – możemy zamieszczać w sklepie jedynie aplikacje darmowe.

Ogólnie fajna zabawa, można zacząć od razu, nie trzeba mieć nawet telefonu z Androidem (dzięki wbudowanym emulatorom). Udział takich komórek w rynku systematycznie rośnie i myślę, że mimo kilku problemów, warto się tą platformą zainteresować.

Czytaj więcej Brak komentarzy   |   Napisał Newton
lip 17

Gołębie

Gołębie były dwa. Ten jasny i ten ciemny. Upodobały sobie balkon sąsiada, pełen starych doniczek i niepodlewanych kwiatów. Wybrały jedną z donic jako idealne miejsce na gniazdo. Trzeba przyznać, że kierowały się chyba lenistwem – ponieważ donica pełna już była ziemi i starych liści, nie musiały mozolnie znosić gałęzi. Po prostu zamieszkały razem w tej donicy – takiej, jak była.

Z początku siedziały w niej razem, wylatując od czasu do czasu na łowy (zapewne polowały na turystów i ich dzieci, wielkich miłośników toruńskich gołębi). Uprzedzając pytania – nie brudziły i nie hałasowały, była to wprost idealna młoda para sąsiadów.

Pewnego dnia zauważyłem, że rodzina chyba się powiększy. W doniczce leżały dwa jaja. Zmieniły się wtedy tryb gołębiego życia. Związek był 100%-owo partnerski, wysiadywanie odbywało się na zmianę. Za dnia wartę pełnił ten ciemny a w nocy – ten jasny. Warta dzienna była krótsza, ale też bardziej męcząca. Balkony wychodzą na południe, więc praktycznie cały dzień na ciemnego gołębia mocno świeciło słońce. Około 10 i 18 następowała zmiana. Trzepot skrzydeł, potrójne gruchanie, trzepot skrzydeł. Zmieniały się bardzo szybko, nie traciły czasu na opisywanie sobie nawzajem przebiegu dnia lub nocy.

Gdy ciemny lub jasny gołąb przylatywał na swoją zmianę, przysiadał na barierce balkonu. Zachęcony trzepotem zwykle wychodziłem i ja, poobserwować przez chwilę gołębie i ich jajka. Ja na jednym balkonie i gołąb na barierce drugiego. Przeważnie patrzył na mnie z boku, obserwował mnie, tak jak i ja go. Dopóki stałem na balkonie, on stał na barierce, pozwalając, aby jajka były odkryte. Może nie chciał zdradzić lokalizacji gniazda, a może uważał, że jest czymś wstydliwym usadowić się w donicy. Wchodziłem wtedy na chwilę do pokoju – gołąb zlatywał z barierki i powolnym krokiem obejmował donicę na kilka godzin w swoje posiadanie.

Przedwczoraj zobaczyłem, że miejsce jednego z jajek zajęło pisklę. Małe, z wielką głową, której większość zajmowały nieotwarte jeszcze oczy. Próbowało chronić się w cieniu rodzica, gdyż na zewnątrz było 35 stopni Celsjusza. Niestety, słońce okazało się silniejsze. Wczoraj wykluł się drugi pisklak. Miałem nadzieję, że będzie bardziej wytrzymały od brata lub siostry. I rzeczywiście, dziś rano mały gołąb wiercił się jeszcze pod piórami dużego. Po kilkunastu minutach usłyszałem trzepot skrzydeł i gruchanie. Miejsce jasnego gołębie przyleciał zająć ciemny. Nie miał się już jednak czym opiekować. Wydziobał kilka ziaren z doniczki i odleciał.

Po południu pojawił się znowu ten jasny. Widocznie odlatując rano, nie zauważył, że tym razem nie udało się przedłużyć gołębiego gatunku. A może zauważył, ale górę nad pamięcią wziął instynkt, każący codziennie o 18 pojawiać się na balkonie mojego sąsiada? Jasny gołąb przysiadł w doniczce, popatrzył i odleciał. Projekt „gniazdo na Głowackiego” został zakończony. Nie ma tu już nic więcej do roboty.

A może jest? Po godzinie pokazały się oba – ten jasny i ten ciemny. Zostały jednak tylko chwilę i odleciały. Widocznie potrzeba tu było czegoś więcej niż dwa gołębie i stara doniczka na nasłonecznionym balkonie.

Czytaj więcej Brak komentarzy   |   Napisał Newton
lip 06

Tauron, Dom Maklerski PKO BP i Linux

Polska jest wyprzedawana. I bardzo dobrze. Podczas jednej z ostatniej wyprzedaży – chodzi konkretnie o wejście na giełdę spółki PZU – chętni do kupna akcji naszego największego ubezpieczyciela zarobili na nich w pierwszym dniu kilkanaście procent. Słysząc w radiu entuzjastyczne relacje z giełdy pomyślałem, że może warto spróbować szczęścia przy kolejnej prywatyzacji. Okazja pojawiła się niebawem – prywatyzował się Tauron. Nie słyszałem wcześniej o Tauronie, okazało się jednakże, że jest to drugie co do wielkości przedsiębiorstwo energetyczne w Polsce, składające się z prawie setki firm.

Aby wykupić akcje Tauronu musiałem założyć konto inwestycyjne. Ponieważ posiadam rachunek w Inteligo pomyślałem, że warto związać się z Domem Maklerskim PKO BP. Założenie konta inwestycyjnego zajęło około 30 minut, dostałem namiary na stronę, login i hasło. Jednak próba zalogowania się z mojego domowego Linuksa zakończyła się porażką. Okazało się, że aplikacja Epromak (której używa PKO BP) działa jedynie pod Windowsem i przeglądarką Internet Explorer – gdyż używa (dość już przestarzałej) technologii ActiveX, niedostępnej dla innych przeglądarek i systemów.

Oznacza to, że użytkownicy Linuksa a także Maców nie mogą korzystać z oferty DM PKO BP. Oczywiście, zawsze można sobie jakoś poradzić – ja uruchamiam Windowsa XP za pomocą programu VirtualBox. Nie jest to jednak wygodne.

Aby przynajmniej mieć możliwość obserwowania na bieżąco kursu wybranych spółek napisałem sobie aplikację w Rubym, która potrafi ściągać aktualne kursy ze strony Epromaka i wyświetla je w małym okienku. Idąc za ciosem, wykorzystywane tam biblioteki dają również możliwość sprzedaży i kupna akcji – brakuje im jednak interfejsu graficznego. Można jednak pomyśleć o stworzeniu jakiegoś systemu automatycznych inwestycji lub napisaniu aplikacji klienta dla Linuksa/Maca. Może kiedyś.

A Epromaka używają jeszcze następujące domy maklerskie:

  • DM Banku Handlowego SA,
  • Beskidzki Dom Maklerski SA,
  • Dom Inwestycyjny BRE SA,
  • DM Millenium SA.
Czytaj więcej Brak komentarzy   |   Napisał Newton
maj 19

Companion Cube

Korzystając z promocji w Valve (jeszcze 5 dni) ściągnąłem sobie tydzień temu za darmo znaną grę Portal. Gra ciekawa, łamigłówki wciągające, trzeba czasem nieźle wysilić mózgownicę. Równie ciekawą rzeczą jest tu jednak fabuła – na początku wydaje się, że bierzemy po prostu udział w testach nowego urządzenia (umożliwiającego tworzenie przestrzenny portali – patrz filmik) przechodząc przez kolejne komnaty prowadzeni przez komputerowo-kobiecy głos. Czasem w głosie komputera pojawia się jednak jakaś fałszywa nuta – na przykład pojawia się motyw ciastka, którym mamy być jakoby nagrodzeni na końcu, przy czym nie jesteśmy pewni, co tak naprawdę ma zostać upieczone. Jeszcze dziwniejszy klimat budują ukryte pomieszczenia, w których możemy znaleźć wypisane na ścianie (przez naszych poprzedników?) hasła takiej jak „ciastko jest kłamstwem”. Fajny klimat, ale ja nie o tym.

W jednej z plansz otrzymujemy Weighted Companion Cube (Obciążeniowa Kostka Towarzysząca). Jest to po prostu skrzynka, która przydaje się na całym obszarze planszy – tu trzeba ją sobie podstawić aby wyżej podskoczyć, tam trzeba coś nią przycisnąć, w innym miejscu przydaje się jeszcze do innej rzeczy. Takie przedmioty pojawiają się często w różnych grach (czasem nie jest to przedmiot, a żywa osoba, która przez jakiś czas nam towarzyszy). Na to „towarzyszenie” w przypadku Kostki położony jest jednak bardzo duży nacisk. Od początku jesteśmy też uprzedzani, że przy wyjściu z owej planszy będziemy musieli się kostki pozbyć – używane jest tu słowo „eutanazja”. Co gorsza, komputer informuje nas również, że kostka nie potrafi mówić, wbrew temu, czego doświadczyli nasi poprzednicy. Eutanazja, polegająca na wrzuceniu kostki do pieca jest według komputera dosyć bolesna, jednak kostka nie jest zdolna do odczuwania zbyt wielkiego bólu. Gdy ostatecznie dokonamy aktu pozbycia się kostki jesteśmy informowani, że poradziliśmy sobie z tym łatwiej niż inni. Gratulacje.

Nic dziwnego, że kostka w krótkim czasie znalazła w Internecie swoich fanów. Można kupić pluszową wersję kostki, dostępne jest całkiem sporo tapet, ludzie robią sobie nawet tatuaże. Można też kostkę zrobić samemu – z papieru. Poniżej moje dzieło.

Czytaj więcej Brak komentarzy   |   Napisał Newton
kwi 30

Zdjęcia z Rzymu

Wczoraj wróciliśmy z A. z Rzymu. Chciałem napisać o Rzymie starożytnym i barokowym, o rzymianach, o tym, że najlepiej jeść na Zatybrzu. Chciałem też przytoczyć zabawną anegdotkę o tym, jak pierwszej nocy jeździliśmy od hotelu do hotelu. Nie mam jednak weny. Dlatego zapraszam po prostu do obejrzenia zdjęć.

Czytaj więcej Brak komentarzy   |   Napisał Newton
kwi 04

The Wire

Doctor Who, House, Battlestar, Jericho, Deadwood, In Treatment, United States of Tara, Dexter, Mad Men, Big Bang Theory, Firefly, Coupling, Heroes, Twin Peaks – nazbierało się strasznie dużo tych seriali. Na wymienionej liście brakuje serialu stricte kryminalnego – z przestępcami i policjantami próbującymi ich złapać. Lukę tę zapełnia (i to jak!) The Wire.

Akcja rozgrywa się w Baltimore – mieście na wschodnim wybrzeżu USA. Baltimore jest wielkości Wrocławia – ma trochę ponad 600 tysięcy mieszkańców, przy czym 63% populacji stanowią Afroamerykanie. Po jednej stronie serialowej barykady stoi specjalnie uformowany oddział policji, po drugiej stronie – gangi narkotykowe. Myślę, że podstawowym celem twórców serialu było pokazanie obu środowisk jak najdokładniej. Poznajemy więc policjantów – dobrych i złych, pracujących w Wydziale Zabójstw, Narkotyków, ich szefów, szefów ich szefów (burmistrza, członków rady miejskiej), ich rodziny. W większości policjanci są dobrymi fachowcami, choć oczywiście zdarzają się fajtłapy lub ludzie celowo działający na szkodę prowadzonych spraw. Narzędziem wykorzystywanym w każdej serii jest tytułowy podsłuch, który często pozwala być o krok do przodu przed gangsterami. Podsłuch pełni tu chyba rolę symboliczną – czy cały serial nie jest swego rodzaju podsłuchem, dzięki któremu możemy wejść w światy, w które inaczej byśmy nie wkroczyli?

Czytaj więcej 1 komentarz   |   Napisał Newton
lut 03

„Czarne oceany” już są

Chciałem mieć wszczepkę odkąd przeczytałem Czarne Oceany. Taką, jaką zaimplantował sobie Nicholas Hunt jeszcze zanim powiedział, że nazywa się Nicholas Hunt i że teraz będzie kłamał. O taką wszczepkę:

Nicholas Hunt zupgrade’ował sobie mózg.

Zielona Tuluza 10 pokryła mu chaotyczną nanosiecią szarą masę kory. Kiedy spał i kiedy nie spał, w dzień i w nocy, obracały mu się w głowie młynki modlitewne i z nie-świadomych części mózgu płynęły w myślnię obronne mantry, inhibicyjne nieskojarzenia, fala za falą, mozolnie odpychając dookolne struktury psychomemiczne. [...]

Uczył się więc żyć w zortowirtualizowanym świecie. Przestał na przykład nosić telefon – zdjął sygnet, odpiął klips. Już ich nie potrzebował. Rozmowy przyjmowała te raz wszczepka, zamiast sygnału dźwiękowego pojawiało się nazwisko bądź kod dzwoniącego, z góry, po lewej, na czerwono. [...]

Zaniedbał przez to niemal zupełnie zamknięcie konferencji. Obudziwszy się niedzielnym rankiem w inicjacyjnym błękicie OVR, na kolejne siedem godzin stracił zupełnie poczucie czasu (chociaż posiadał w pamięci tuzin różnych wizualizatorów jego pomiaru). Bawił się wszczepką jak dziecko. Testował po kolei programy darmowe i dema płatnych użytków. [...]

Był Klor’s Mood Editor, zdolny wycinać z rzeczywistości całe bloki bodźców, obrazy i dźwięki wszelkiego nieszczęścia (lub szczęścia – jeśli chciałeś się właśnie zdołować), blokować nieprzyjemne zapachy, kasować w czasie rzeczywistym nieuprzejme odzywki, gasić bóle i pragnienia. Ostre Mood Editory znajdowały się na indeksie Departamentu Zdrowia, Departament Sprawiedliwości traktował ich użytkowników jako uzależnionych.

Więc taką wszczepkę chciałem mieć od dawna. Ja wiem – straszna wizja, a co gdy system wszczepki się zawiesi, szare komórki się zresetują, warzywo, a co gdy ktoś się włamie, ale straszna wizja i nienaturalna. Nic nie poradzę – wyobraziwszy sobie ogrom możliwości, chciałem mieć. I mam od soboty.

Czytaj więcej 3 komentarzy   |   Napisał Newton
gru 26

Braid

Kupiłem sobie wczoraj grę za 2 euro (zaleta Steama – można kupować w niedziele i święta bez łamania 3 przykazania). Braid, bo tak nazywa się to cudo, warta jest każdego centa. Ale po kolei.

Fizyka

Braid to przedstawiciel szlachetnego gatunku platformówek, a więc następca tytułów takich jak Mario Bros, Superfrog czy Earthworm Jim. Zwłaszcza z tą pierwszą grą ma sporo wspólnego, ale o tym później. Bohaterem jest niejaki Tim, który skacze po różnych platformach, łazi po drabinkach, zdobywa fragmenty puzzli (główny cel gry), omija wrogów i robi wszystko to, czym zajmują się inni bohaterzy platformówek. Różnica jest jedna, ale zasadnicza. W tej grze nie można przegrać. Gdy Tim zginie, wystarczy nacisnąć Shift aby cofnąć czas do pożądanego momentu (przypomina to przewijanie do tyłu na wideo) i spróbować jeszcze raz. Mało tego – często cofnięcie czasu jest często konieczne dla rozwiązania tej czy innej łamigłówki. Możliwość takiej zabawy czasem (przewijać można też do przodu) daje naprawdę dużo możliwości i zmusza do intensywnego wysilenia szarych komórek (wszak nie w 2, lecz w 3 wymiarach się poruszamy).

Estetyka

Gra jest piękna. Po prostu. Dawno nie widziałem tak ładnej oprawy graficznej. Postaci, tła i wszystkie elementy występujące w grze wyglądają jak malowane (dosłownie), są bardzo kolorowe no i miło się na to patrzy. Czasem pojawiają się elementy przypominające te znane z uniwersum Mario Brosa (rura z żarłocznym kwiatem, zamek z chorągwią), jednak wszystko w takiej właśnie malowanej estetyce.

Muzyka jest doskonała. Ni mniej ni więcej. Wszystkie melodie nieco melancholijne, czasem smutne, czasem poważne. Kojarzą się z muzyką filmową (Źródło? Gladiator? Braveheart?) Gdy cofamy czas, również muzyka „leci od tyłu”, a całości dopełniają efekty dźwiękowe.

Psychologia

To wszystko dopiero preludium. Pamiętacie o co chodziło w Mario? Nasz hydraulik poszukiwał tam swojej Księżniczki. Dlatego pokonywał kolejne światy, łaził po tym zamkach, niszczył wrogów. W Braid cel jest taki sam, jednak potraktowany jest on znacznie poważniej, a cała rozgrywka i kolejne światy staje się rodzajem rozprawy o naturze miłości, związku, dojrzałości. Każdy świat poprzedzony jest opisem, scenką rodzajową z życia Tima i jego Księżniczki, zaś zbierane w danym świecie puzzle układają się w ilustrację obrazującą ową scenkę. A słowa, że Księżniczki nie ma w tym zamku naprawdę łapią wtedy za serce.

Wiedział, że próbowała przebaczyć, ale któż mogłby po prostu zapomnieć o kłamstwie wbitym niczym sztylet w plecy? Taka pomyłka nieodwracalnie zmienia całą relację, nawet jeśli czegoś nas ona nauczyła i nigdy się już nie powtórzy. Zwęziły się oczy Księżniczki. Oddaliła się.

Czytaj więcej 3 komentarzy   |   Napisał Newton
lis 18

Wroniec

Już dwa lata minęły od poprzedniej książki Dukaja, godne jest więc i sprawiedliwe, że pisarz wydał w końcu coś nowego. Zapewne o Wrońcu już gdzieś słyszeliście, pisarz ma z powieści na powieść coraz lepszą promocję w rozmaitych mediach (na przykład dzisiaj na TVP2 ma lecieć 30-sekundowa animacja na podstawie Wrońca). A czym Wroniec jest?

Jest czymś zupełnie nowym i to pod kilkoma względami. Najpierw – język. Autor porzucił barokowe, wielokrotnie złożone sentencje na rzecz języka dziecięcych książeczek, a więc mamy tu proste, krótkie zdania. Oczywiście widoczny jest w tym wszystkim dukajowy kunszt, niektóre zdania to prawdziwe perełki (mi ciągle chodzi po głowie Sami muszą znaleźć drogę – chłopiec i jeszcze mniejsza dziewczynka). Cała zresztą książka jest stylizowana na adresowaną dla najmłodszych – grube kartki, duży tekst, ilustracje.

O czym więc Dukaj tym językiem bajek dziecięcych opowiada? Ano o stanie wojennym, 1981. Stan wojenny widziany przez dziecko i zapisany w takiej konwencji jest przedziwną krainą, zamieszkaną przez wojaków-wroniaków, MOMO, złomoty, bubeków, szpicli i stalowe suki. Świetne się ogląda razem z małym Adasiem ten szary świat, fantasmagorycznie wykrzywiony w oczach chłopca. Nierzeczywiste to wszystko tym bardziej, że zdarzyło się naprawdę. Z tego też powodu tak naprawdę dzieci nie powinny po nią sięgać – świat jest wykrzywiony, ale okrucieństwo pałowania MOMO jest prawdziwe.

„Oglądać” możemy dzięki licznym ilustracjom, dobrze pasującym do treści i formy książki. Jest ich naprawdę bardzo dużo, zajmują po pół strony, a raz na jakiś czas pojawiają się w jeszcze większym formacie. Zresztą, zobaczcie sami:

Jedyną wadą książki jest jej długość – czyta się to tak na prawdę i ogląda przez 2 godziny i koniec. Jasne jest jednak, że książka „dla dzieci” nie może być objętości takiego ponadtysiącstronicowego Lodu. Z drugiej strony – na pewno jest to książka, do której warto wracać. Nie  lada gratką są też piosenki – Piosenka Bubeka, Członka czy Przechodniów.

losuki
Czytaj więcej Brak komentarzy   |   Napisał Newton
paź 20

newtrace

Ostrzegam – wpis raczej techniczny ;)

Jak działa traceroute (na Windows – tracert) wie każdy szanujący się student informatyki. Do hosta docelowego wysyłane są pakiety z początkowo małymi, później coraz to większymi liczbami TTL. Ponieważ TTL zmniejsza się o 1 z każdym przeskokiem do kolejnego routera to wiadomo, że osiągnie ostatecznie wartość 0. Router na którym to nastąpi zwraca do hosta źródłowego informację o przekroczeniu czasu. Host źródłowy wypisuje na ekranie kolejne adresy, które zwróciły taką informację i powstaje nam całkiem ładna trasa. Pakiet z TTL-em równym 1 pozwala nam wykryć najbliższy router, z numerem 2 kolejny i tak aż dojdziemy do celu.

Wiadomo jednak, że, tak jak kij, każdy router ma co najmniej dwa końce – są to interfejsy sieciowe. traceroute pozwala nam wykryć jedynie jeden koniec każdego routera – interfejs „po naszej stronie”. Zerknijmy na poniższy komiks:

traceroute uruchomiony na komputerze pozwoli poznać adres IP interfejsów eth0 i eth2. Niestety, interfejsy eth1 i eth3 pozostają ukryte. A raczej pozostawały – do dzisiaj!

Program newtrace pozwala na śledzenie trasy pakietu, uwzględniając wszystkie interfejsy sieciowe przez które on przechodzi. Innymi słowy, dzięki niemu otrzymamy elegancką listę routerów, zaś każdy z nich będzie miał przyporządkowane dwa adresy: interfejs wejściowy (w powyższym wypadku eth0 i eth2) i wyjściowy (na diagramie – eth1 i eth3).

Jak to działa? Przez zgadywanie. Zerknijmy raz jeszcze na diagram i załóżmy, że interesuje nas adres interfejsu eth1. Wiemy 2 rzeczy:

  1. interfejs ten fizycznie znajduje się na routerze 1,
  2. interfejs jest w tej samej podsieci, co interfejs eth2.

Ponieważ znamy adres interfejsu eth2, możemy określić listę adresów IP znajdujących się w tej samej podsieci. A raczej moglibyśmy, gdybyśmy znali również maskę. Z praktyki wynika jednak, że takie między-routerowe połączenia to bardzo małe podsieci o maskach na przykład /30 lub /29.

Załóżmy więc, że lista jest określona. Nie pozostaje nic innego, jak wysyłać żądania echo request do każdego z adresów. Kluczową rzeczą jest tu TTL – ustawiamy go na taką samą wartość, jak dla pakietu, który dotarł wcześniej do eth0 (czyli w naszym przykładzie: 1). Dzięki temu, jeśli pakiet dotrze do testowanego adresu IP zyskujemy pewność, że jest on przypisany do routera 1. A skoro jest przypisany do routera 1 i znajduje się w tej samej podsieci co eth2, to jest to eth1. □

Pozostaje jeszcze sytuacja, w której przetestowaliśmy hipotetyczne podsieci o masce /30, /29, a nawet /28 i dochodzimy do jakiejś ogromnej podsieci, zawierającej setki lub więcej adresów, które trzeba przetestować. Można to robić, jeśli nam zależy. W implementacji powyższego algorytmu stosuję jednak ograniczenie – jeśli szukany adres nie znajdzie się w podsieciach o maskach większych lub równych /28, to proces szukania jest przerywany. Wartość tę można modyfikować parametrem -m podanym z linii komend.

Ponieważ program robi różne dziwne rzeczy na gniazdach, wymaga uruchomienia jako root. Źródła na githubie, można ściągnąć paczkę. Całość oczywiście w Ruby.

UPDATE 22 X 2009

Dodałem jeszcze trzy końcowe testy, wszystkie sprawdzają, czy eth0 i domniemany eth1 są na tym samym routerze:

  1. newtrace sprawdza, czy do domniemanego eth1 nie dochodzi przypadkiem pakiet z niższym TTL-em,
  2. sprawdza też, czy w odpowiedziach echo reply ustawiona jest ta sama wartość TTL-a (różne systemy mogą ją sobie różnie ustawiać),
  3. sprawdza w końcu (i to jest test ostateczny ;) )czy identyfikatory pakietu IP odpowiedzi echo reply z eth0 i domniemanego eth1 są podobne (czy nie różnią się o więcej niż 10). Jeśli tak, to istnieje bardzo duże prawdopodobieństwo, że eth0 i eth1 są na tej samej maszynie. Jedynym wyjątkiem jest sytuacja, w której interfejsy są jednak na różnych maszynach, ale żadna z nich nie ustawiają pola identyfikatora (równe jest 0).
Czytaj więcej 1 komentarz   |   Napisał Newton
Poprzednia strona 1 z 11

Blog Newtona

Nazywam się Newton. Teraz będę kłamał.

  • Blip
  • litrgy.com
  • Archiwa
    • Sierpień 2010
    • Lipiec 2010
    • Maj 2010
    • Kwiecień 2010
    • Luty 2010
    • Grudzień 2009
    • Listopad 2009
    • Październik 2009
    • Wrzesień 2009
    • Sierpień 2009
    • Lipiec 2009
    • Czerwiec 2009
    • Maj 2009
    • Kwiecień 2009
    • Marzec 2009
    • Luty 2009
    • Styczeń 2009
    • Grudzień 2008
    • Listopad 2008
    • Październik 2008
    • Wrzesień 2008
    • Sierpień 2008
    • Lipiec 2008
    • Czerwiec 2008
    • Maj 2008
    • Kwiecień 2008
    • Marzec 2008
    • Luty 2008
    • Styczeń 2008
    • Grudzień 2007
    • Listopad 2007
    • Październik 2007
    • Wrzesień 2007
    • Sierpień 2007
    • Maj 2007
    • Kwiecień 2007
    • Marzec 2007
    • Luty 2007
  • Wyszukiwanie






  • Strona główna
  • Makler
  • Nauka
  • O autorze
  • To czytam
  • West Highland Way

© Copyright Blog Newtona. All rights reserved.
Designed by FTL Wordpress Themes brought to you by Smashing Magazine

Do góry!