piątek, lipca 03, 2026

Zdolny Junior z rozmachem ;-) zwany też jako Claude Code

Nudne będzie bo znów o AI ;-)

Czułem od dawna, że jest problem z AI w postaci Claude Code czy podobnych, ale nie do końca umiałem wskazać palcem gdzie jest problem.
Dziś złapałem Claude Code na dokładnie tym co czułem ;-)

Mamy sobie w produkcie opcję pobrania czegoś, wtedy jest billing robiony. Ale billujemy tylko pierwsze pobranie, kolejne są "za darmo".
Backend o tym wie, ale frontend nie ma sygnału, że to coś już zostało pobrane.

Dałem ten kod Claude Code i najpierw poprosiłem o sprawdzenie czy w ogóle jest ta informacja o pobraniu gdzieś zapisana... jest, bo mamy link do pobranego pliku.
Mamy ten link wpisany w pewnym obiekcie połączonym z projektem.
Ale klientowi wysyłamy coś innego, mniej szczegółowego.

No to mój zamysł był taki, jak mamy te informacje i mamy wszystkie klucze potrzebne do ich przeczytania to gdy UI prosi Backend o info o projekcie i scenach (są w projektach) to co mi szkodzi dodawać w locie wasAlreadyBilled do scen, które zostały już pobrane.

Zrobił, ale zmienił jeszcze dodatkową lambdę... pytam czemu. Odpowiada, że bez tego nie może dodać tej informacji do tego obiektu bardziej ogólnego...

Użyłem mojego przerywacza "stop and think" i pytam czemu to zrobił, przecież ja mam masę danych, które nie są tak zaktualizowane i przecież nie będę ich konwertował, że ja chcę on-the-fly merge'a...
Uznał, że może to i ma sens i zmienił kod w tym kierunku... napisał mniej tego kodu, a do tego dane wyeliminował konieczność transformacji danych.

Miał dotykać lambdy dającej informacje o projekcie (i nie, nie będziemy tu dyskutować jak szalonym pomysłem jest używanie lambd do takich rzeczy....), ale zmienił inną która zapisywała w oryginalnym obiekcie link do tego co można pobrać... Porobił też jakieś zmiany w tej projektowej... wszystko bez chwili zastanowienia. Idąc takim flow: jak w opisie sceny jest link, to znaczy, że ktoś pobrał, dzieje się to w lambdzie B, lambda A wysyła do UI liste projektów i scen, user chce mieć w wyniku lambdy A info o billowaniu nazwane wasAlreadyBilled... i uznał, że skoro już w B robi update obiektu szczegółowego i tego ogólnego (używanego przez A) to on sobie zrobi update tego obiektu ogólnego....
I to ma sens, ale generuje problem "a co z już istniejącymi danymi?". Nie sprobowałem, ale nie zdziwiłbym się gdyby po pytaniu bez stop and think i pisania o merge'u i że nie chcę konwersji, to czy sam by mi nie zaproponował kodu do konwersji, a że nie ma ogólnego mechanizmu to by dopisał kolejne 500 linii kodu z konwerterem....

Zrobił to jak junior. Junior robi piękny projekt, uznaje że tu się doda pole, dopisze kod do aktualizacji tego pola... tylko nie pomyśli, że coś co powinno być lekkie, zmienił właśnie w taska numer 1, bo jeszcze musi być task numer 2 do konwersji danych.

To jest to, że junior gdy patrzy na kod widzi tu i teraz i wie jak ma być ostatecznie, ale nie myśli o tym jak stan faktyczny teraz, który jest poza kodem, w danych czy przyzwyczajeniach usera zmienić w to jak ma być.

Tak robią juniorzy (fakt, nadal spotykam seniorów którzy też na to tak patrzą...)

Claude Code to taki junior, ale fakt junior z wyobraźnią i rozmachem ;-)


Podobne postybeta
Różnica między Seniorem i Juniorem ;-)
Jak używamy Java'y ;-)
Pierwszy dzień w przyszłości, czyli programista jako dyspozytor Agentów
Vibecoding to jak praca z obcym ;-)
O tym czemu branche są złe...

środa, lipca 01, 2026

Agent nie na wszystko pomoże ;-)

Ciągle przyglądam się temu całemu AI... i nadal nie wiem jakie mam wrażenia.

Mam zamiar znów sobie zrobić trenowanie z robienia zadanek koderskich. Uznałem, że spróbuję użyć tu AI do pomocy.

Są 3 główne obszary w takich przygotowaniach.

  • Pattern matching,
  • Użycie odpowiednich klocków,
  • Implementacja klocków

Jedno to jest zobaczyć "o, tutaj najlepiej użyć fast/slow pointers", drugie to zaimplementować.
Jedno to "o graf", drugie to uznanie "a tutaj chcemy najkrótszą ścieżkę czyli BFS" i w końcu trzecie to implementacja.

Na każdym etapie można mieć "mocniejsze" i "słabsze" obszary ;-)

"Z poprzednich razów" mam masę kodu, jakieś 1600 rozwiązań w postaci kodu źródłowego i jeszcze w Markdown jakieś ~300. 

Uznałem, że dam AI szansę ;-)

Wystawiłem to na pożarcie Antigravity CLI (taki "uboższy" kuzyn Claude Code, tylko że od Google).
Dostało instrukcję by spróbować najpierw na podstawie tego kodu spróbować zidentyfikować klocki... kiedyś sobie to rozpisałem, że miałem takowe w postaci mind mapy... ale jak wiele mind map zgubiłem ;-)

Nie wyszło mu zbytnio, ale spróbuję jeszcze raz.

Drugie było takie "przejrzyj ten kod i znajdź miejsca gdzie mam największe problemy i opisz te miejsca i zaproponuj drogę do poprawy"....

Coś zrobił... (inna sprawa, widzę wyraźnie, że w takim treningu TRZEBA mieć kogoś kto Cię sprawdza, może to być LLM, ale ktoś musi sprawdzić, bo to, że działa na przykładach to za mało - z doświadczenia, Gemini jest tu słabsze od ChatGPT). Antigravity najpierw uznało, że od razu napisze regexy do wyszukiwaina błędów.... nie była to dobra ścieżka ;-)

W końcu mu wytłumaczyłem, że niech wybierze losowe 10% plików i zrobi ich pełną analizę wysyłając ich treść do modelu żeby ten model zrobił analizę... dopiero później powinno spróbować zrobić syntezę tych błędów....

Wszystko spaliło masę tokenów i zużyłem swoje 5h w 20 minut ;-) więc jeszcze użyłem Opusa 4.6... 

Ale wyniki są takie sobie, teraz jest pytanie czy lepiej po prostu to wszystko zrobić samemu i używać Gemini czy bardziej ChatGPT do sprawdzania moich rozwiązań i to trzymać w Markdownie do późniejszej analizy, czy więcej wysiłku włożyć w te prompty....

Mam wrażenie, że to jest tak często. Że Agenty robią cuda, jak akurat wyczują o które cuda Ci chodzi, albo to są "prostsze" cuda do zrobienia i nic na razie nie bije zrozumienia rozwiązania samemu... tylko fakt, z Agentem wiele rozwiązań które są "good enough" można zrobić w godzinę, a swoje "good enough" robiłoby się tydzień albo miesiąc.

Zrobienie mocka dla serwisu to jest coś co robiono miliony razy, sam to robiłem kilka razy - dziś nie muszę tego pisać sam, proszę Claude Code czy podobne i mam.
Naniesienie prostych zmian w auth/authz z dobrze napisanej (przeze mnie ;-)) historyjki to też jest prosta sprawa.

Jak sprawa jest prosta w definicji to jest błysk ciupagi.

Ale na razie są, albo ja mam problemy z nowatorskimi sprawami gdzie sam nie do końca wiem co powinno dziać się w środku. 
Zwykle jest tak, że jeżeli sam bym tu i teraz umiał napisać ten kod, ale mnie by to zajęło parę godzin czy dni to umiem to wyjaśnić narzędziu, ale jak jest coś z czym sam miałbym problemy (np. zamiana polyline z x,y,z w klotoidę, która jest linią bazową dla drogi tak by kolejne klotoidy i pasy na tej drodze do siebie geometrycznie pasowały) to pierwsze "o wow! zrobił to, ale są jeszcze problemy" to pikuś, problem jest później jak te problemy trzeba rozwiązać... 
Coś jak z prawem Parkinsona:
- "Ile masz zrobione kodu po tych 2 dniach?"
- "z 80 %"
- "o to jutro skończysz?"
- "nie, no coś Ty, z 2 tygodnie to jeszcze zabierze"

O, jak Agent ma "myśleć" to na razie mu to idzie słabo, jak ma robić szybko coś co my byśmy umieli zrobić, albo coś co było robione już wiele razy to wtedy wymiata.
A w pewien sposób im lepiej płatna praca, tym mniej powtarzalnych rzeczy ;-)


Podobne postybeta
Napisz źle, ale napisz ;-)
Bob wykazuje inicjatywę ;-) i jakże piękny mógłby być Googlebook....
Zapiski z 29 piętra....
O urokach uprzęży – czyli o tym, że okiełznana moc LLM-ów jest bardziej użyteczna niż nieokiełznana
Agent by Agent ;-) czyli o tworzeniu agenta AI agentem AI ;-)

piątek, czerwca 19, 2026

Zauroczył mnie Cladue Code ;-)

Dostałem w pracy Claude Code, w takiej specjalnie wersji, że nie gada do Anthropica, a działa z modelami na AWS Bedrock.
Mam limit 200 USD miesięcznie (nie wiem jak jestem daleko czy blisko tego limitu ;-)).

Ale od tego Claude Code się można uzależnić - do tego człowiek zaczyna być bardzo defensywny w pisaniu. 
"Zrób X, tak by Twoje wyniki były takie same jak z Y, stwórz listę hipotez jak Y działa i testuje je sprawdzając Twoje wyniki z tymi z Y, pamiętaj nie wolno Ci używać Y do tego by dostać wyniki, masz prawo do tego tylko by stworzyć baseline do którego będziesz porównywać swoje hipotezy" ;-)

Ale przyznaję, że kusi mnie by wejść prywatnie w Claude Code PRO, ma co prawda dużo mniej tokenów, ale ja w domu znów nie rozwiązuję tak wielu rzeczy.

Mam Claude Code z lokalnymi modelami na moim Mac Mini M4 Pro z 64 GB RAM, ale jednak Qwen3.5 czy Gemma4:31b są fajne, ale nie umywają się do "prawdziwych" modeli ;-)

Tzn. Antygravity ma wersję CLI, wcześniej było Gemini CLI, ale Claude Code wydaje się mieć w sobie "to coś". Poprosiłem o raport z porównania 2 rzeczy i dodałem, że fajnie by było jakby dodał do tych issue ich lokalizację jako lat, lon... to on mi dodał mapę i pokazuje to na mapie ;-)

Trochę taka praca z Claude Codem czy podobnymi toolami to nadzór nad super produktywnym i bardzo bystrym, ale też bardzo "tępym" koderem, który umie na pisać masę rzeczy - ale nie zawsze myśli o tym czy one mają sens ;-) [

To jest trudne do uchwycenia, że te narzędzia do vibe codingu potrafią zrobić w kilka minut coś co nam by zajęło kilka tygodni albo i dłużej, z drugiej strony co jakiś czas robią tak głupie rzeczy, że człowiek się zastanawia jak to w ogóle może działać - sztuka, której się ciągle uczymy to znalezienie tych miejsc z "przebłyskami geniuszu" i blokowanie wchodzenia w pętle robienia tej samej głupiej rzeczy w kółko - wyrok jeszcze nie zapadł czy tak się da pracować ;-)



Podobne postybeta
Zdolny Junior z rozmachem ;-) zwany też jako Claude Code
Vibecoding to jak praca z obcym ;-)
Agent nie na wszystko pomoże ;-)
Okrucieństwo vibe codingu część 2 ;-)
Mój pierwszy skill ;-)

czwartek, czerwca 18, 2026

Heurystyki kasowe – jak z OS-ów w branży lub firmie wyczytać potencjalne zarobki

Taka obserwacja z rynku, a może bardziej obserwacji rynku przez ostatnie 20+ lat ;-)

Jest prosta heurystyka dla stwierdzenia czy w danym biznesie/danej gałęzi gospodarki jest dużo czy mało pieniędzy dla programistów (i ogólnie też). 

Wystarczy popatrzeć na OSy używane do uruchamiania większości podstawowych narzędzi ;-)

Jeśli większość specjalistycznego softu jest dla Windows to raczej jest mało kasy w tym biznesie. Bo i klienci i dostawcy działają na Windows, które zwykle trafia do firm gdy te zamawiają "najtańszy" komputer.

Windows + Linux - tu już jest lepiej, bo fakt istnienia wersji dla Linuksa sugeruje, że część tego softu będzie działała na serwerach, czyli mamy już coś co wymaga by usiadł do tego ktoś z wyższą pensją ;-)

Windows + Linux + macOS - OK, tutaj jest soft, który jest "dla wszystkich", są w miarę znośne pieniądze.

macOS + Linux - No i jesteśmy w miejscach gdzie dobrze płacą ;-) 

To jest heurystyka - więc działa zwykle, ale nie zawsze - gry AAA są praktycznie tylko na Windows, ale już masa softu używanego do tworzenia elementów w grach działa też na macOS ;-)

To samo jeśli chodzi o ocenę firmy gdy się jest na rozmowach:
  • Windows wszędzie -> pieniędzy dużych tu nie będzie, 
  • Windows czasem -> kasa znajdzie się, 
  • Mac i Linux rządzą wszędzie -> kasy dużo zwykle będzie ;-)


Podobne postybeta
Heurystyka dostępności a strach przed imigrantami
Przyśpieszanie backtrackingu
Czemu obecny Sejm i rząd są wyjątkowe?
"os.arch", "os.name", "sun.arch.data.model" co to jest i co pokazuje na jakiej maszynie i OSie? ;-)
YouTube/Facebook/Instagram dla jedzenia by nie przeszedł ;-)

poniedziałek, czerwca 08, 2026

Monachium to złe lotnisko jest ;-)

Ja i lotnisko w Monachium się jakoś nie lubimy ;-)

Dwa lata temu leciałem do Wenecji przez Monachium (w końcu, nie jestem pewien jak to się zaczęło, ale były cancele i rebooking)... i samolot z Krakowa się spóźnił i spałem w Monachium... 

Tydzień temu miałem lecieć z Krakowa do Rzymu przez Monachium... tym samym chyba nawet kodem jak ten przypadek sprzed 2 lat.... nie poleciałem bo najpierw samolot był spóźniony od 3h, a później zrobili podsłuchałem (stałem obok gate'u), że robili dodatkowy przegląd techniczny, w końcu próbowali resetować komputer i w końcu... Cancel, rebook na następny dzień na lot z KRK do FCO bezpośrednio, ale z LOTem ;-)

No i dziś (czy już wczoraj) wracałem z Rzymu do Krakowa przez Monachium.... ale podobno w Monachium pożar był, albo dym czuli... w każdym razie zamknęli lotnisko i wylądowałem w Stuttgarcie ;-)

Po perypetiach wylądowałem w hotelu, który sobie samo bookowałem (IHG rządzi... nadal ;-)) i w końcu (po ponad godzinie) dostałem nawet maila z info, że jutro lecę ze Stuttgartu do Krakowa z Eurowings...

Widzę, już że:

  • będę musiał zacząć bookować bilety nie przez Lufthanse,
  • będę musiał unikać połączeń przez Monachium



Podobne postybeta
Co się dzieje jak Ci zrobią Cancel lotu na lotnisku "startowym"?
Nie lubię Lufthansy
Kurza twarz ;-)
Punkty uzależniają ;-)
Reset

środa, czerwca 03, 2026

O urokach uprzęży – czyli o tym, że okiełznana moc LLM-ów jest bardziej użyteczna niż nieokiełznana

GenAI/LLMy dziś to są konie pociągowe. O tym, jak dobrze działają, decyduje jakość uprzęży (aka harness).

To było widać w analizie wycieku z Claude Code, która wywołała wiele uśmieszków i komentarzy w stylu: „Jak to? Najlepsze narzędzie do okiełznania LLM-ów jest takie prostackie?”. Masa promptów, a do tego kod z w pełni deterministycznymi mechanizmami, jak wykrywanie frustracji przez przekleństwa...

Jakoś wielu komentatorom umykało, że ten pełny determinizm regexów jest mechanizmem kontroli, wymuszającym stabilność systemu. Fakt – ten do wykrywania frustracji był pewnie po prostu łatwiejszy do zaimplementowania lokalnie niż wysyłanie całego kontekstu do LLM-a tylko po to, by ten wyłapał kilka wulgaryzmów.

Ale jak się zastanowić, to nie jest dziwne.
Na dziś LLMy są świetne, ale jeszcze nie potrafią się same kontrolować. Nie mają zdrowego rozsądku, nie znają relacji przestrzennych, a nawet nie do końca rozumieją, że np. jeśli człowiek je i ma usta pełne jedzenia, to nie może jednocześnie mówić.

W pierwszej fazie zachwytów nad LLM-ami poszliśmy na żywioł. Korzystaliśmy maksymalnie z tego, że potrafią na podstawie poprzednich słów genialnie napisać kolejne. Taki LLM jest sprytniejszy od łańcuchów Markowa – choć nie rozumie per se tego, co pisze, to sama gramatyka i język kodują pewne informacje i zależności. To specyficzne „strukturalne zrozumienie” (nie kognitywne, lecz wynikające z wyczucia struktury) wynika stąd, że model widzi cały kontekst jednocześnie.
Okazało się też, że świetnie działa to na kodzie.

Szybko jednak wyszło na jaw, że to podejście sprawdza się głównie wtedy, gdy na wynik patrzy człowiek, weryfikuje go i na bieżąco przygląda się temu, co powstało.

To jest IMHO ten punkt, którego nie dostrzeżono na początku, gdy wielu uznawało, że LLM-y natychmiast wyprą ludzi. Bo coś, co modelowi zajmuje ułamki sekundy, człowiek musi robić przez 15-30 minut albo dłużej.

Sam pamiętam moje zdziwienie, gdy dałem LLM-owi zadanie, które dawaliśmy programistom podczas rekrutacji. Zrobił to w kilka sekund, razem z napisaniem kodu i wskazaniem ukrytych pułapek (gotchas)... (OK, sam, gdy dostałem to zadanie, rozwiązanie znałem po 1,5 sekundy, z czego całą sekundę spędziłem na szukaniu gotcha, ale faktem jest, że napisanie czystego kodu zajęło mi potem te 15-20 minut).

W tym miejscu nastąpił wysyp masy narzędzi, które działały... ale jednak nie do końca.

Pierwszym ruchem było dodawanie lepszych instrukcji i cały prompt engineering, który sprowadzał się do tego, by wyjaśnić LLM-owi, co dokładnie ma zrobić i jak ma weryfikować swoje działania. W końcu jeśli podamy modelowi precyzyjną instrukcję oraz kryteria sukcesu, to zazwyczaj dowiezie wynik.

Twórcy LLM-ów też to zauważyli. Dostrzegli, że często sam model potrafi rozbić problem na mniejsze części, co doprowadziło do rozwoju metod Chain of Thought. Dziś, w modelach z fazą „thinking”, AI samo wykonuje tę potężną pracę analityczną przed wypuszczeniem odpowiedzi.

Teraz zaś wchodzimy w moment, gdy dociera do nas, że LLM-y są świetne w generowaniu tekstu, ale musimy je kontrolować i zakładać im wspomnianą „uprząż”. To może być coś tak prostego jak regex czy inne deterministyczne metody walidacji, a mogą to być osobne prompty i modele obserwujące odpowiedź i reagujące na nią. 

No bo jak na przykład testować coś, co pod spodem używa LLM-a? 
Jedną z metod jest karmienie go znanymi przypadkami testowymi, gdzie z góry znamy oczekiwany rezultat – i nagle mamy klasyczny test regresyjny dla sztucznej inteligencji. To zadanie jest znacznie prostsze, gdy LLM wyrzuca ustrukturyzowane dane (np. JSON) albo gdy generuje zapytania do bazy danych, bo wtedy możemy po prostu zweryfikować końcowy wynik operacji na bazie.

Innym podejściem jest instruowanie modelu, by najpierw napisał testy, a później... kategoryczne zabronienie mu ich modyfikowania. To kluczowe, bo LLM-y są sprytne i domyślnie wybierają ścieżkę najmniejszego oporu. Jeśli kod nie przechodzi testu, model potrafi wpaść na pomysł, że najprościej będzie po prostu zmienić treść testu.

To znaczy... my, programiści, też tak czasem robimy. Różnica polega na tym, że człowiek z czasem uczy się, że test wolno zmienić tylko wtedy, gdy jego wywrotka jest faktycznie oczekiwanym rezultatem wprowadzonej zmiany w logice biznesowej. LLM tej etyki zawodowej jeszcze nie ma.

W ten sam trend wpisuje się podejście agentskie. Agent dostaje do dyspozycji konkretne narzędzia, a te narzędzia mają już twarde, kodowe ograniczenia. Jeśli na przykład funkcja do pobierania zawartości sieci dostanie zamiast poprawnego adresu URL bezpośredni link do lokalnego pliku, system od razu zgłosi błąd. Narzędzia są deterministyczne i ich użycie zmusza LLM do poruszania się w ściśle ograniczonej przestrzeni.

Co będzie dalej? Może – a w zasadzie to już się dzieje, bo sam łapię się na tym, że próbuję tak naprowadzać sztuczną inteligencję – kolejnym krokiem będzie okresowe odpytywanie LLM-a przez system nadzorujący: „Co Ty właściwie próbujesz w tym momencie zrobić i dlaczego?”. Odpowiedź, wraz z pełnym zapisem historii tej „rozmowy”, będzie następnie przekazywana do analizy innemu, niezależnemu modelowi pełniącemu funkcję sędziego.

Tu pojawia się pytanie, na które nie znamy jeszcze odpowiedzi, ale możemy się domyślać ;-)

No bo czy to możliwe, że LLM-y wciąż mają ogromną przestrzeń do autonomicznego wzrostu? Może w samym tym strukturalnym semi-zrozumieniu języka tkwi jeszcze więcej surowej mocy? Może same modele da się wytrenować tak, by realizowały część tych zadań kontrolnych i pilnowały same siebie? 
A może, jeśli dotarliśmy już blisko fizycznych granic architektury transformerów, ta kontrola będzie zadaniem dla nas, programistów? Nasza rola ewoluje: to już nie tylko pisanie kodu, ale budowanie zamkniętych „tras”, po których bezpiecznie mogą poruszać się LLM-y i agenty.

Część mnie uważa, że przyszłością jest właśnie ta druga opcja. 
Obecny wyścig gigantów GenAI wygląda już jak wojna na wyniszczenie. Nawet jeśli któryś z nich dotrze w końcu do mitycznego Graala, czyli prawdziwego AGI – systemu zdolnego rozwiązać dowolny problem i realnie „myślącego” w naszym ludzkim rozumieniu – to konkurencja zreplikuje ten sukces zaledwie 3 do 6 miesięcy później. Pierwszy gracz na miejscu po prostu nie zdąży wykopać fosy biznesowej. Cała idea zmonopolizowania rynku przez jedną „Superinteligencję” rozbija się o realia rynkowe. 

Nawet jeśli takie AGI zaprojektuje w ułamku sekundy lepsze procesory i wydajniejsze źródła energii, to fizyczny czas oczekiwania na wolne linie produkcyjne w fabrykach sprawi, że rywale szybko dogonią lidera. A niewykluczone, że będą mieli po drodze większe zasoby finansowe.

Stąd wydaje mi się, że czytelny sygnał, jaki płynie z rynku – gdzie wszyscy masowo podnoszą ceny za tokeny – jest prosty: branża już zrozumiała, że rewolucyjne AGI nie czai się tuż za rogiem. Albo alternatywnie: mają już AGI, które jako pierwsze racjonalnie wytłumaczyło im, że pora zacząć w końcu zarabiać prawdziwe pieniądze.


Podobne postybeta
wait() i notify()/notifyAll() - najbardziej nierozumiane metody klasy Object ;-)
Journaling w LLM, albo jak małpuję po LLMie ;-)
Miałem farta...
Dlaczego niektórzy nienawidzą AI, a inni po prostu ją tolerują?
Chciałem popsuć G1 i mi się na razie nie udało ;-)

Obszedłem cały kraj! ;-)

No stało się – obszedłem cały kraj. 

Taki mniejszy, wręcz miniaturowy, a oficjalnie: najmniejszy na świecie.


Obszedłem Watykan. To jest to zielone „kółko” po lewej stronie mapy. Jak widać po statystykach, tempo przez całą drogę było bardzo, ale to bardzo spacerowe.

W uszach miałem Mistrza i Małgorzatę, pod nogami Rzym (i miejscami Watykan) i tak sobie szedłem wokoło murów. Przeszedłem nawet przez watykańskie połączenie kolejowe. Działa ono na tyle rzadko, że to potężne kraty odcinają tory od rzymskiej ulicy, a nie tradycyjne szlabany. I trzeba przyznać – mają tam wyjątkowo dużą bramę dla pociągów.

A co do samego Mistrza i Małgorzaty...Słucham akurat „superprodukcji” z udziałem aktorów, ale szczerze mówiąc – czekam już, aż to się skończy, bo męczy mnie ta książka. Ewidentnie groteska to nie mój styl. Najlepsze są dla mnie te fragmenty, które dzieją się 2000 lat wcześniej: dialogi Poncjusza Piłata z Jeszuą i cała ta linia fabularna.

Te sceny przypomniały mi zresztą inną książkę, którą niedawno przesłuchałem (i która też mnie wymęczyła) – Dominion: The Making of the Western Mind. Jej główny przekaz mocno tu rezonuje: postać Jezusa i pierwotne chrześcijaństwo były absolutnie wyjątkowe w swoim przekazie na tle epoki. Rzym i inne ówczesne cywilizacje, mimo wysokiego poziomu rozwoju, miały podejście do ludzkiego życia, które z dzisiejszej perspektywy jest całkowicie abstrakcyjne. Masowe mordowanie ludzi było tam zwykłą, chłodną taktyką zarządzania. W takim świecie opowieść o bezwarunkowej miłości i wybaczeniu musiała brzmieć dla Rzymian jak całkowite szaleństwo.
Zresztą może to był i zamiar Bułhakowa zestawić tę groteskę z powieścią historyczną, żeby podkreślić groteskowość tej Moskwy?

Nie zmienia to jednak faktu, że dokonałem tego - obszedłem cały kraj! Co z tego, że najmniejszy na świecie? ;-)



Podobne postybeta
Czerwcowe książki
Wenecja ;-) i weneckie kodowanie
Czytelniczy listopad
Atak kreacjonistów
Jak rozwiązać krzyżówkę? ;-)

Co się dzieje jak Ci zrobią Cancel lotu na lotnisku "startowym"?

No to w niedzielę miałem lecieć do Rzymu, ponieważ chciałem lecieć później (frajer ;-)) to wybrałem lot o 16:45 z Krakowa do Monachium, a później 19:05 czy jakoś tak z Monachium do Rzymu (FCO).

Coś mi sugerowało, że to może nie być najlepszy wybór... bo 2 lata temu lecąc do Wenecji miałem lecieć tym samym lotem i wyleciał z opóźnieniem i w końcu w Monachium spałem ;-)

Gdy w niedzielę w momencie gdy miał zacząć się boarding pojawiła się informacja, że samolot jest opóźniony o 2h już wiedziałem, że będę spał w Monachium.
Nawet się zbytnio nie zdenerwowałem, bardziej miałem - a takie jesteście dranie...

No to czekałem, jeszcze nas ciut bardziej opóźnili i w końcu zaczął się boarding... przepuścili parę osób i nagle jakieś brazylijskie małżeństwo to wstrzymało i panie z bramki zamiast 1 ich obsługuje, a druga puszcza pasażerów to one jakoś tak nagle zwolniły....

Później były telefony, jakieś wymiany zdań "15 minut? Szybki przegląd techniczny", później kolejne 15, jeszcze 10 i komentarz o resetowaniu... i w końcu Cancel ;-)

Po informacji o odwołaniu komunikat od pani z bramki, że chwilę trzeba poczekać bo muszą jeszcze się dowiedzieć gdzie wyładowane zostaną bagaże... w końcu info pas numer 2 i proszę tam iść... 

Wyjście nie jest takie proste, bo w Krakowie na Balicach w strefie odlotów nie ma (a przynajmniej ja nie widziałem) znaków w kierunku wyjścia, wyjście odbywa się nieoficjalnie obok kontroli bezpieczeństwa.

Wejście do miejsca gdzie są karuzele z bagażami też nie jest proste ;-) w Krakowie jest możliwość przejścia z rękawa po schodach w dół do odbioru bagażu, ale nas wyrzucili ze strefy bezpiecznej. Drzwi zaś do bagażu się otwierają tylko dla wychodzących, nie dla wchodzących ;-)
Trzeba iść do "zgubionego bagażu" (co wiem od ochrony bo się spytałem) i tam trzeba zadzwonić... ale ja już nie musiałem bo pan latał i już obsługiwał wcześniejszych z tego samego lotu.
Ogląda kartę pokładową, sprawdza numer lotu, jak właściwy to bierze 1 osobę i przeprowadza przez tajne przejście (to jest jeden korytarz), otwiera drzwi do strefy z bagażami i mówi który pas.

A w międzyczasie przychodzi mail z info o nowym bookingu, ale trzeba jeszcze zrobić oficjalny checkin (akurat tutaj stąd, że Lufthansa z którejś z tych swoich do bani linii przebookowała mnie w ramach sojuszu na Lot, który leciał w poniedziałek bezpośrednio do Rzymu)


Podobne postybeta
Co się dzieje gdy mój pierwszy samolot się spóźnia i mam mało czasu na przesiadkę?
Monachium to złe lotnisko jest ;-)
Kurza twarz ;-)
Autobus ze skrzydłami...
Jednak lubię United ;-)

niedziela, maja 31, 2026

Kurza twarz ;-)

Jest tak, moja wielka wyprawa do Rzymu odbywa się przez Monachium.

Ponieważ moje planowanie jest takie sobie to wybrałem późny lot uznając, że będę w Gliwicach na Fluffym... Nie pojechałem.

Na lotnisku byłem za wcześnie.

Jak już powinie zacząć się boarding to pojawiło się info, że jednak nie bo jesteśmy opóźnieni o 2 godziny i 5 minut.

Czyli planowany odlot z Krakowa do Monachium jest gdy zaczyna się boarding na mój samolot w Monachium ;-)

Systemy jeszcze nic nie stwierdziły, ale już w Monachium dostanę na 99% info, że lecę jutro ;-) i skierowanie do hotelu...

Co ciekawe to jest prawie kropka w kropkę to samo co miałem 2 lata temu lecąc do Wenecji, też późnym lotem ;-)

Bardzo możliwe, że tym samym. 

Z plusów ja już wiem który to jest przystanek 11 na którym się wsiada do autobusu który wiezie człowieka do hotelu ;-)

A miałem plan, że sobie jeszcze pójdę dziś zobaczyć Colloseum w nocy i może na Palatyn. A co najwyżej obejdę sobie hotel przy lotnisku ;-)

Teraz tylko trzeba starć się włączyć z nudą...



Podobne postybeta
Co się dzieje jak Ci zrobią Cancel lotu na lotnisku "startowym"?
Nie lubię Lufthansy
Monachium to złe lotnisko jest ;-)
To (kalkulator) żyje :-)
Bad, bad planner (Przemek), no Fluffy for you ;-)

piątek, maja 29, 2026

Bad, bad planner (Przemek), no Fluffy for you ;-)

Plan był taki: w sobotę jadę do Gliwic na Fluffy'ego.

Ale później wpadłem na pomysł, że czerwiec to fajny miesiąc, a skoro nigdy nie byłem w Rzymie, to chętnie bym tam poleciał. I jak zamawiałem bilety, dotarło do mnie: „Ej, przecież muszę lecieć w niedzielę, bo w sobotę jest ten Fluffy...”.

Teraz patrzę na grafik i to się po prostu nie spina.

Niby mógłbym nocować w Gliwicach (miałem nawet rezerwację). Fluffy kończy się koło 22:30, więc 20–30 minut i jestem w hotelu. Ale na lotnisko muszę wyjechać najpóźniej koło 14:45. Żeby zrobić to na spokojnie, najzdrowiej byłoby wyjechać z Gliwic już koło 8:00 rano i być w domu koło 10:00.

Niby nic strasznego, ale ja naturalnie chodzę spać koło 2:00–3:00 w nocy, a tutaj musiałbym wstać o 6:30–7:00. Cały ten plan zaczyna więc wyglądać bardzo męcząco. I coraz bardziej skłaniam się ku opcji: no nie pojadę na Fluffy'ego.

Zrobiłem mały test, bo wiem, że łatwo się stresuję w takich sytuacjach. Pierwsza wersja planu zakładała, że jadę już w piątek, w sobotę połażę sobie po Gliwicach (w końcu tam studiowałem), a wrócę w niedzielę. Szybko jednak przypomniałem sobie, że w piątek mam dwa interview, po których muszę napisać dwie (a tak naprawdę trzy) ewaluacje. To oznacza, że pakować musiałbym się już w czwartek.

Uznałem więc: „Dobra, nie jadę w piątek, jadę w sobotę”. Poczułem ulgę, ale stres i poczucie przytłoczenia nadal nie znikały.

W ramach testu sprawdziłem inną myśl: „OK, w ogóle nie jadę na Fluffy'ego”. I nagle całe ciśnienie zeszło.

Trochę mi szkoda, ale znam się na tyle, że wiem, że przez cały czas byłbym poddenerwowany – a w końcu takie imprezy są po to, żeby było fajnie, a nie żeby je po prostu odhaczyć.

Ale żeby nie było: to nie jest mój pierwszy zły plan i pewnie nie ostatni. Np. prawie zawsze, kiedy planuję wyjazd, szukam późnego lotu powrotnego, żeby „wycisnąć” jak najwięcej z ostatniego dnia. Efekt? Dwa ostatnie wyjazdy do Wenecji spędziłem, siedząc na ławkach na Sant'Elena i czekając, aż nadejdzie sensowna godzina, żeby odebrać torbę i ruszyć na lotnisko.



Podobne postybeta
Starzeję się ;-)
Jak Mruka dostał więcej metalowych przedmiotów - (nie)poradnik inwestycyjny z czasów kamienia (czasami łupanego) część druga
Chillout na 80%
Kurza twarz ;-)
Moc promptów