- Chrrrrrrrr... - odpowiedziałem
- Dwa... dzyńńńń - budzik dalej próbował
- Fiuuuuuuuu - stwierdziłem kategorycznie
- Tri... jesteś wyspany. - zakończył
Tak, budzik tym razem mnie zahipnotyzował. Nawet zadziałało - przez pierwszą minutę nawet wierzyłem, że jestem wyspany. Ech, mogłem zapytać przed kupnem, co oznacza "Budzik: Kaszpirowski Edition". Przeciągnąłem się we wszystkich możliwych wymiarach i przeszedłem kilka kroków po ścianie. Po zorientowaniu się, że grawitacja jest już zaimplementowana w tym wszechświecie i upadku na podłogę wyjrzałem przez okno. Jaki piękny dzień! Słońce ćwierkało, ptaszki świeciły, po niebie przesunął się glitch. Poza tym czekała mnie dzisiaj misja archeologiczna - zbadać C029 w... o rany... komnacie Oracle Forms? TEJ komnacie? Mało kto wie o istnieniu legendy, według której demon Oracle próbował kiedyś opanować Szczecin. W Epickiej Walce z Jeszcze Bardziej Epickim Zakończeniem, Którego Nikt Nie Pamięta demon został pokonany. Widząc swoją klęskę próbował uciekać i groził, że jeszcze tu wróci. Podczas odwrotu poślizgnął się na skórce od banana i stwierdził, że Szczecin nie ma licencji na Oracle Bananas, po czym wpadł do komnaty. Został w niej zamknięty razem z Oracle Forms, które miały być jego najgroźniejszą bronią. Oczywiście to tylko legenda - naprawdę zostały tam znalezione najlepiej na świecie zachowane działające Oracle Forms. Archeolodzy odkryli nawet treść licencji podpisanej przez nieszczęśnika klienta - Oracle dostaje prawo do jego duszy i nerek na 1024 lata. Platońskie oczywiście. Moim zadaniem było zbadać jedną z tych form.
Do Tajnej Bazy Władców Javy Niewyglądającej Jak Tajna Baza Władców Javy wysłałem się drogą satelitarną. Auć, nie polecam. Hamowanie z prędkości światła (nawet w powietrzu) nie jest miłe. Wyszedłem z routera i przeszedłem obok zdziwionego admina wprost do ekspresu z kawą. Po 5 sekundach wyposażony w Uniwersalny Przyrząd do Badania Wszystkiego i kubek kawy ruszyłem po schodach prowadzących do komnaty. Po dotarciu na sam dół zorientowałem się, że zapomniałem klucza. Ech, to się wytnie. Zostawiłem kawę i Uniwersalny Przyrząd do Badania Wszystkiego, pobiegłem po klucz i wróciłem. 1/4 kawy w kubku zniknęła. To było naprawdę dziwne. Wiedziałem już, że muszę działać szybko, żeby zdążyć ją wypić. I przy okazji - że prawdopodobnie czycha tu na mnie straszliwe niebezpieczeństwo. Wszedłem do sali i zobaczyłem dziwną, starą maszynę. Kilkadziesiąt, a może nawet kilkaset metalowych skrzynek wiszących na ścianach i suficie, połączonych szklanymi rurkami. Co jakiś czas przez którąś z nich przelatywała kapsuła z... no nie wiem, z czym. Wszystko było dość osobliwie uporządkowane. Właściwie to wcale nie było tu porządku. No cóż - musiałem tam znaleźć urządzenie C029. Przykładałem do wszystkich po kolei Uniwersalny Przyrząd do Badania Wszystkiego, ale nie mogłem znaleźć tej właściwej skrzynki. Ten problem mógł rozwiązać tylko łyk kawy. Tylko że... została tylko 1/4 kubka. Teraz naprawdę się przestraszyłem - czyżbym miał nie dopić tej kawy? Tak być nie mogło - wypiłem resztę zawartości kubka i rozejrzałem się po pomieszczeniu. Nie było tam nic poza skrzynkami, więc dalej sprawdzałem wszystkie po kolei. W końcu przy jednej z nich Uniwersalny Przyrząd do Badania Wszystkiego wyświetlił:
Uw&ga, p^^apka!
D#m%n Or^^^e!
Ale glitche.. ciekawe, co znaczy druga i trzecia linijka. Nieważne - zabrałem się do badania. Dlaczego nie wziąłem Uniwersalnego Przyrządu do Badania Skrzynek? No cóż - wynik był zgodny z oczekiwanym: bałagan nieziemski. Oznaczało to pozaziemskie pochodzenie C029. Albo... nie, to niemożliwe.
W tym momencie usłyszałem jakiś mechanizm w okolicach sufitu... no jak mogłem nie zauważyć powieszonego fortepianu? Instrument zbliżał się do mnie z przyspieszeniem 10 m/s^2. Zacząłem obliczać, kiedy zderzy się z moją głową. Niestety Matlab w zegarku uruchamiał się trochę za długo więc stwierdziłem, że transfer poza pole rażenia fortepianu jest ważniejszy. W ostatniej chwili uskoczyłem i wybiegłem z pomieszczenia. Szkoda tylko, że zostawiłem tam swój kubek po kawie. Zszedłem, żeby po niego wrócić, ale... komnata była zamknięta. Ech, pewnie ktoś coś kombinuje z uprawnieniami do drzwi. Ufff... co to do diabła było? Dlaczego tam wisiał fortepian? I dlaczego coś piło moją kawę? Przecież była bez mleka. Brrr. Postanowiłem zająć się tym później - poprosiłem adminów, żeby przyjrzeli się tym nieszczęsnym uprawnieniom, a sam wziąłem 1024 lata urlopu i uciekłem, gdzie pieprz rośnie. Znaczy - wykonałem taktyczny odwrót... gdzie pieprz rośnie.
Właściwie to postanowiłem sprawdzić, gdzie ten pieprz rośnie. Pierwszym miejscem, które zamierzałem zbadać była Teneryfa. Oczywiście dla dobra nauki - czarne plaże, góry Anaga i Mojito nie miały tu żadnego znaczenia
Sam port lotniczy można określić jednym słowem - wow. Jego układ jest dość niecodzienny - jeden duży sześciokąt z terminalami A i B, do niego podłączony mniejszy (tak, ze współdzieli z tym pierwszym jeden wierzchołek) z halą wejściową. I przyczepiony -taśmą klejącą- nowoczesnym przejściem terminal C pośrodku niczego. Postanowiłem zbadać duży sześciokąt. Wszedłem standardowym wejściem i zacząłem iść w prawo. Trzeba przyznać, że panował tam niemiecki porządek. Na środku każdej ściany okienko do odprawy, na każdym rogu - punkt sprzedaży hot-dogów i granatów - tak powinno być. Żeby się nie zgubić liczyłem mijane wierzchołki. Po siedemnastym nadal nie zauważyłem wyjścia i zacząłem się zastanawiać, ile właściwie boków ma ten sześciokąt. Nawet zapytałem o to ochroniarza:
- Entschuldigen pana bardzo, wie viele Boken haben Sześciokąten?
- Schiessen, ich weiss nicht. Zwanzig Boken?
No cóż, czyli musi mieć dwadzieścia boków. Ruszyłem dalej. Kupiłem w jednym z kiosków ciastko francuskie i granata. Takiego:
Po trzydziestym wierzchołku sześciokąta znowu zacząłem się zastanawiać. Znalazłem tego samego ochroniarza który tym razem powiedział mi, że Sześciokąten haben... vierzig Boken. Dziwne. Z ciekawości zapytałem sprzedawcę w tym samym kiosku, co poprzednio o ciastka francuskie. I przy okazji o liczbę boków tego sześciokąta. Stwierdził, że... ani tutaj, ani nigdzie dalej w tym sześciokącie takowych nie ma. No jak to? Zjawisko paranormalne bez ciastka francuskiego? Nie, tak to ja się nie bawię. Zacząłem wracać tą samą drogą. Co prawda nie liczyłem wierzchołków, ale... po mniej niż dziesięciu trafiłem do wyjścia. I czy za którymś oknem widziałem góry? A za innym dno oceanu? Chyba jednak będę musiał zbadać ten budynek. Ale to później - najpierw obowiązki, czyli zbadanie plaży na Teneryfie.
No cóż - musiałem dotrzeć na terminal C (ciekawe, kiedy wybudują C++). Jak człowiek - na nogach, bez wysyłania się światłowodem. Dziwne, spróbujcie kiedyś. I tak z przyzwyczajenia po 100 ms byłem przy bramkach z odprawą bagażową. Do każdej z nich ciągnęła się kolejka. Priorytetowa. Grzecznie wykonałem enqueue() na sobie, w wyniku czego podjechał mały robocik i wykonał na mnie insert_with_priority(). Łaskotało. Sprytnie - większość dostała priorytet 42, a posiadacze droższych biletów: 734. Nade mną pojawił się numer 42. Wszystko szło dobrze, chociaż powoli. Przynajmniej do czasu - jeden z czekających był nieco znudzony, powiedział coś o krzywej motylej nodze i nadpisał numerek wyświetlany nad nim. Na 1025. O nie, naruszył integralność struktury danych! Kiedy następna osoba odebrała kartę pokładową, żaden algorytm nie wiedział, kto jest następny. Pasażerowie biegali po lotnisku, niektórzy nawet utworzyli cykliczny graf skierowany. Musiałem działać - w takich warunkach nie zamówię sobie kawy! Zacząłem od wyjaśniania każdemu z czekających, w jakiej jest strukturze danych. Ale byłem bezradny - pan Hans Schmidt nadal twierdził, że stoi za Hansem Klossem i odwrotnie. Pan Malinowski natomiast uważał, że jest korzeniem binarnego drzewa cytrynowego. No cóż. W końcu wezwałem ochronę, która najpierw wysłała robocika, żeby ponownie wykonał na wszystkich insert_with_priority(), a potem ukarała sprawcę całego zamieszania. Tak, trafił na karnego jeżyka.
Usłyszałem jeszcze, jak zaklął:- ORA-600!
Hmmm... chyba już słyszałem coś podobnego. No ale - doszedłem do punktu odprawy, położyłem na taśmociągu walizkę z danymi. Przejechała przez wagę (20 MB) i Maszynę Do Prześwietlania Walizek (TM). Ta ostatnia wykryła obecność 18 MB ziemniaków typu Irga. Ha! Dobrze, że wykorzystałem walizkowego TrueCrypta, przez co nikt nie odkrył, że przewoziłem tam GCC.
Podczas odprawy osobowej musiałem rozłożyć Debugger Guna na poszczególne atomy i każdy włożyć do osobnej tacki. A potem złożyć go z powrotem! Na szczęście po 500-nym atomie strażnicy pozwolili mi rozkładać Debugger Guna na całe cząsteczki. I nawet zegarek z Matlabem mogłem przenieść w całości. Jeszcze trudniej miało SCP-173 odprawiające się w bramce obok - nie mogło przejść, bo cały czas ktoś na nie patrzył. W takich warunkach nie mogło mi zagrażać, więc zająłem się własną odprawą. W końcu przeszedłem przez bramkę, złożyłem to, co miałem złożyć i rozejrzałem się po strefie wolnocłowej. Wyglądała trochę jak krzyżówka supermarketu z dworcem kolejowym. Nie, nie można tam kupić pociągu na wagę (Orient Express niemyty luz) - po prostu jest to hala. Po jednej stronie wyjścia na płytę lotniska, po drugiej sklepy. Jeden sprzedawał chipsy po 5000 EUR za paczkę (cena promocyjna), w drugim wodę mineralną - 1 cząsteczka H2O w butelce. No cóż. Natomiast w środku hali... tak. Kawiarenka.
Wymyślili sobie oryginalną nazwę - OracleDaemonKleineCafe - ciekawe, co to znaczy po polsku. Zamówiłem średnią kawę z mlekiem i posypką z kodu bajtowego Javy. Eeeee... no tak. Pani popatrzyła na mnie jak na informatyka i posypała kawę cynamonem. To jest życie! Zacząłem pisać ten dziennik i popijać kawę. Tylko, że... ta kawa znikała jakby trochę za szybko. Tutaj powinienem wstawić kolejne "Eeee...", ale powtarzałoby się za często. Nie może być tyle "Eeee..." w jednym wpisie, więc "Eeee..." się tutaj nie pojawi. Złożyłem reklamację - no przecież nie zamawiałem samopijącej się kawy! Oczywiście reklamacja została przyjęta:
- ORA-6... eee... znaczy oczywiście ma pan rację. W prezencie od firmy dajemy gratis fortepian spadający na głowę!
Jacy mili! Od poprzedniego fortepianu Matlab w moim zegarku był włączony, więc zacząłem obliczać, kiedy instrument muzyczny spadnie mi na głowę. 10 m/s^2, 8 m nad moją głową... to oznacza 1,26 s. Obliczenia trwają już 0,57 s, przez co miałem 0,69 s na odsunięcie się! Podziękowałem, wziąłem kawę i zwiałem poza zasięg broni muzycznej. Ufff. Szkoda, że uderzenie spowodowało wstrząs i wylanie się połowy zawartości kubka.
Ale nie ma tego złego - zaczęli wpuszczać ludzi do samolotu. Zwykły Boeing-737 od Java Airlines. Tym razem w kolejce została zastosowana struktura danych odporna na zewnętrzne manipulacje - róbta-co-chceta. Wszyscy weszli na pokład i zajęli miejsca. Stewardessa zaczęła wyjaśniać procedury bezpieczeństwa:
- ...w momencie awaryjnego lądowania prosimy o uruchomienie konsoli i wpisanie godmode on...
mówiła też coś o kamizelkach, krawatach i marynarkach ratunkowych pod fotelem. Zakończyła instrukcję:
- A w razie pojawienia się przedstawicieli innej planety proszę o pomachanie im i zatańczenie Macareny - oczywiście to też zademonstrowała.
Koniec instruktażu - zapiąłem pasy, chomik napędzający silniki zaczął się rozkręcać, a samolot kołował na pas startowy. Maszyna robiła piruety, ósemki i dziewiątki (dostała 3*10 punktów) i przygotowała się do startu. W końcu chomik dostał Pedigree-2048, samolot przyspieszył do II prędkości kosmicznej i oderwaliśmy się od ziemi:
Stewardessy zaczęły rozwozić kawę i pliki .class do pochrupania. Spojrzałem na jedną z nich, bo wydawała mi się podejrzana. Stewardessa, nie kawa. Chinka ze spinkami we włosach ułożonymi w kształt trapezu. Zaraz, to była antena! Ciekawe, czy można się do niej podłączyć przez SSH... wyłączyłem Matlaba w zegarku i podłaczyłem się do sieci. SSID to ChangChongCheng, hasło...też. Wow! Uruchomiłem ssh 192.168.1.1 -X i trochę rozejrzałem się po systemie. Kto tam zainstalował bazę danych Oracle?! I Angry Birds? Odinstalowałem, co trzeba i zainstalowałem aktualizację, żeby nikt nie mógł podłączyć się dla żartu, a stewardessa się zaczerwieniła. Rozłączyłem się... oczywiście po zamówieniu sobie podwójnej latte za 0 EUR. Już rozumiem, dlaczego zawsze każą wyłączać telefony komórkowe w samolotach.
Ufff... wyłączyłem Wi-Fi w zegarku, wypiłem latte (w końcu się udało!) i popatrzyłem na ekran przed moim fotelem. Wyświetlała się mapa Teneryfy, na którą lecieliśmy:
Ale coś było jakby nie tak - po wpisaniu FOV 30 zobaczyłem:a przy FOV 10:
Hmmm, to musi być błąd mapy. Tak czy siak - już zaczęliśmy podchodzenie do lądowania (stewardessa bez Angry Birds i Oracle DB chodziła wyraźnie szybciej). Przebiliśmy się przez chmurę, podlecieliśmy w stronę pasa startowego i w końcu wylądowaliśmy. Wszyscy zaczęli bić brawo - oczywiście chomikowi napędzającemu samolot. Gryzoń dostał orzeszka w nagrodę, samolot się zatrzymał, a drzwi się otworzyły. Wysiadłem i poszedłem w stronę karuzeli do odbioru walizek.
Nad nią wyświetlił się mój numer lotu i lotnisko, w którym startowałem. Hmmm... ale numer się nie zgadzał. No dobra, lotnisko też. Nie przyleciałem chyba z ORA-600. ZARAZ! Chwilę później zarówno lotnisko źródłowe, jak i numer lotu były w najlepszym porządku (no... do góry nogami). Ale na samej karuzeli... kręcił się Lord Error! I skubany kupił 65535 biletów na przejazd. Oczywiście wyciągnąłem Debugger Guna i zacząłem wyjaśnić mu grzecznie, że powinien sobie iść. Ale usłyszałem:
- ORA-666! - wrzasnął... ktoś.
- Na rozkaz&%$! - odpowiedział Lord Error schodząc z karuzeli i uciekając... gdzieś. Znowu miałem wrażenie, że już skądś jakoś słyszałem ten głos. Hmmm, to chyba nie będą nudne wakacje.
Ale postanowiłem później się nad tym zastanowić. Drogę do hotelu pokonałem na hulajnodze. Wiecie, born to be wild, zabójcza prędkość, wiatr we włosach i muchy w zębach. Czy jakoś tak. Dotarłem do Bahia Fañabe i znalazłem swój pokój. Całkiem ładny ten hotel. Białe, dwupiętrowe budynki z niebieskimi wykończeniami. Między nimi fosa z krokodylami basen i most nad nim. Poza tym cały labirynt ścieżek i ścieżynek prowadzących do poszczególnych pomieszczeń. Ech, mogłem zabrać Najmniejszą na Świecie Niedeterministyczną Maszynę Turinga, która mogłaby przeszukać je wszystkie jednocześnie... no trudno.
Po znalezieniu swojego pokoju postanowiłem superbohatersko pójść spać. Problem w tym, że... nie znalazłem kołdry. Poszedłem do recepcji i dowiedziałem się, że przez pomyłkę dali mi trójwymiarową pościel. No jak tak można? Jeżeli taka kołdra ma 3 wymiary, to w czasoprzestrzeni istnieje tylko przez nieskończenie krótką chwilę. Która na pewno nie wystarczy, żeby się wyspać.
W końcu pani z obsługi poszła do mojego pokoju z kołdrą mającą właściwą liczbę wymiarów. Poszedłem za nią, żeby nie zgubić się i ominąć pułapki - a i tak wpadłem na Minotaura, którego musiałem rozśmieszyć. Udało się - kołdra czekała na miejscu i nie zamierzała zniknąć. To mogło oznaczać tylko jedno - rozpoczęcie procedury łóżkobiegosiękładzenia. Rozpocząłem bieg w kierunku łóżka... tylko pomyliłem zwrot. Ech. Po wybraniu tym razem właściwego wektora prędkości rzuciłem się na łóżko.
Zacząłem się zastanawiać. Komnata Demona Oracle. ORA-600 (i raz ORA-666). Naruszenie integralności kolejki na lotnisku. I fortepiany usiłujące spaść mi na głowę. Czyżby ktoś chciał pokazać mi nowy utwór, a nie ma abonamentu na Spotify? Naprawdę dziwne. Ale teraz miałem dużo poważniejszy problem - musiałem rozstrzygnąć, na którym boku się ułożyć. Co gorsza - zasnąłem przed znalezieniem rozwiązania.
C.D.N.Źródła zdjęć:
Plan lotniska Berlin Tegel: tutaj
Plan Teneryfy: a to tutaj
Łóżko fakira: tam
Samolot: jeszcze gdzie indziej
Granat: tu







Orient Express niemyty luz? Dwadzieścia deko poproszę! Pan piłuje, panie Zenku, ja powiem, kiedy przestać!
OdpowiedzUsuńBinarne drzewo cytrynowe? Nie znam, chyba że jest to wariacja na temat drzewa Brzoskwiniowo-Truskawkowego, tego, na którym konieczne jest robienie zrównoważania gałęzi za pomocą sokowirówki.
Tak, te fortepiany to na pewno taka teneryfiańska wersja YouTube. Chcesz dać do posłuchania - zrzucasz na głowę. A potem delikwent zaczyna śpiewać. Na przykład "ORA ORA szabada dabada da amora!"
Ten komentarz został usunięty przez administratora bloga.
OdpowiedzUsuń