Laptopa zwykle traktuje jako zamiennik komputera stacjonarnego, w związku z czym raczej rzadko miałem okazję sprawdzić ile czasu wytrzymuje na baterii, zakładałem, że powinien około 2 – 2,5 godziny. Kilka razy jednak okazało się, że czas ten był znacznie gorszy, ledwie godzina. Zastanawiałem się czemu tak jest... przecież ja nic specjalnie obciążającego nie robiłem na nim, dlaczego laptop tak szybko wysysał baterię? Cóż, okazało się, że ja może świadomie nic nie robiłem, ale Thunderbird (2 Beta 1) ma brzydką przypadłość – po hibernacji lub suspendzie lubi wpadać w jakąś dziwną pętlę i... i na starym laptopie zauważyłbym ten fakt bez większych problemów, zużycie procesora na poziomie 100%25 powoduje spowolnienie, którego trudno nie zauważyć. Nowy laptop ma już procesor dwurdzeniowy, pętla zajmowała jeden rdzeń. Wystarczająco, by bateria znikała w zastraszającym tempie, drugi rdzeń jednak wystarczał, bym nie zauważył spowolnienia pracy systemu... Thunderbirda pozbywać się nie chcę, bo mimo wszystkich swoich wad jest wystarczający do moich potrzeb. Zainstalowałem sobie więc SpeedswitchXP i umieściłem wskaźnik zużycia procesora na pasku. Gdy jest podejrzanie wysoki przez dłuższy czas, wiem, że Thunderbirda należy uruchomić od nowa...
Styczeń, a za oknem szaro, ani grama śniegu... Ze śniegiem problemy są już od lat wielu (w zasadzie właśnie dlatego przestałem bawić się w bieganie na nartach), ale aż tak bezśnieżnej zimy nie pamiętam od dawna. Pamiętam jedną, jakieś 15 lat temu. W ramach ferii zimowych zamiast jeździć na sankach albo lepić bałwana, bawiliśmy się w lesie w robienie szałasów...
Wspominałem o tym we wcześniejszym poście. A dlaczego one są złe? Ponieważ zwykle wszystkie taby otwarte są w jednym procesie. I co z tego wynika? Sesje w aplikacjach internetowych identyfikowane są najczęściej przez identyfikatory sesji, które z kolei przechowywane są po stronie klienta w ciasteczkach. Mają one atrybut session only , co oznacza, że nie są zapisane na dysku. Zakładki w obrębie jednego procesu mogą wzajemnie widzieć swoje ciasteczka, pomiędzy procesami już tak nie jest. Dowód – można zalogować się przy pomocy Internet Explorer do serwisu bankowości internetowej i w innym tabie (IE 7) lub oknie (IE 6) otwartym przez File->New Window wkleić jakiś inny URL z tego serwisu. Działa? I tak ma być. A teraz ta sama operacja w przypadku dwóch różnych PROCESÓW Internet Explorera... Nie działa, bo ten inny proces nie widzi ciasteczek tego pierwszego, tak więc nie może przedstawić się prawidłowym identyfikatorem sesji. Ot, taka ciekawostka.
Nie tak dawno pojawiły się alarmujące wieści o dziurach w mBank. Wieści, choć prawdziwe (dziura była), były nieco przesadzone, a i sama podatność wcale nie tak prosta do wykorzystania, jak było to przedstawiane. W ramach “odprysków” tej sprawy stałem się uczestnikiem dość ciekawej dyskusji. O niej słów kilka.
Rok 2006 jest już za nami. Ten sylwester był chyba najlepszy z tych, jakie miałem. Chyba po części dlatego, że rok 2006 przyniósł wiele zmian. Oby 2007 był jeszcze lepszy. A co najważniejsze... “tańczyłem”! Obyło się bez ofiar w ludziach :)
Kiedyś stała się rzecz dość zwyczajna – skończyła mi się herbata. Jak to zwykle w takich przypadkach się robi, poszedłem nabyć nową do sklepu, wziąłem “normanego” (a przynajmniej miałem taką nadzieję) Liptona i... I jeśli tak rzeczywiście smakuje herbata w Londynie, to ja się cieszę, że zostałem w Polsce. No, przynajmniej wtedy jak nie słyszę nic o naszej władzy :)
Czasami trzeba zrobić jakąś analizę danych, gdzie źródło jest plikiem tekstowym, a wyniki różne, w zależności od tego, na co mnie najdzie. W Windows używam do tego rewelacyjnego narzędzia LogParser. Narzędzie to czyta dane i wyświetla je po pewnym przetworzeniu, a przetworzenie to definiowane jest przy pomocy (nieco zubożonego) SQL. Ponieważ udostępnia obiekt COM fajnie wykorzystuje się je w skryptach. Nie zawsze jednak takie operacje wykonuję w Windows. W przypadku Linuksa korzystam z następującego obejścia:
piszę skrypt w Pythonie, który przetwarza (parsuje) dane według moich potrzeb,
przetworzone dane wrzucam do SQL,
operacje wykonuję w SQL,
No dobrze, ale czy do tego potrzebna jest baza danych? Właśnie nie. Jest sobie coś takiego, co nazywa się SQLite, co daje bazę danych bez serwera bazy danych. W połączeniu z pysqlite tworzy to całkiem niezłe narzędzie. Oczywiście SQLite jest zubożony w stosunku do “dużych” baz danych, takich jak MySQL, Postgres o naprawdę dużych (Oracle, MS SQL, DB2) nie wspominając, ale do tych zastosowań jest zupełnie wystarczająca. Po co wybierać się z armatą na wróble...
W końcu udało mi się odebrać mój nowy dowód osobisty i paszport. Teraz jeszcze muszę poinformować całą stertę różnych dziwnych instytucji, że dowód zmieniłem. W XXI wieku mogliby sami do tego dojść, ale nie...
Pozytywnych jest tych kilka dni wolnego... Trochę mniej cała komercja związana ze świętami... Bo ja się przyznam po cichu, że święta to ja lubię tak umiarkowanie...