czwartek, 24 stycznia 2019

Spóźnione podsumowanie 2018


Dystans wg dni tygodnia

Średni dystans wg dni tygodnia

Dystans wg tygodni w roku

Średnio rocznie wg tygodni

To był rekordowy rok w wielu kategoriach:-)

Zacznijmy od pogody, którą mierzę od 2010 roku przypominam. U mnie średnia wyszła 9,56 C, do tej pory rekord to było 9,44 C w 2015 r. Szczegółowo to tak wygląda:

rok     : 2010  2011  2012  2013  2014  2015  2016  2017  2018
--------------------------------------------------------------
średnia : 8.65  8.94  8.17  8.63  9.33  9.44  9.18  8.75  9.56

Rekordowo niska była też suma opadów: 447.9mm (148 dni opadowych); dla porównania w 2017 roku spadło 763,8mm deszczu (194 dni). Rekord do tej pory to 2014 rok: 450,6 (148 dni) czyli w zasadzie tyle samo (z dokładnością do błędu).

Na rowerze przejechałem 19,100 km (302 razy, co nie oznacza dni, bo czasami były dwa razy dziennie). Poprzedni rekord z 2017 r wynosił 17,855 km. Z tej okazji podsumowałem swoje życiowe wyczyny, a mam statystykę szczegółową od 1993 r. Kurcze 26 lat pykło, w których to latach przejechałem prawie 210 tys km. Do tego w latach 1990--1992 przejechałem ponad 20 tys km, ale nie zachowała się niestety dokładna rozpiska. Z okazji tych wszystkich wyczynów podsumowanie zrobiłem wg dni tygodnia i wg. tygodni w roku (wg. miesięcy to liczę na bieżąco). Konkretnie to podsumowanie jest zestawem 7 wykresów słupkowych rysowanych w R. Dane do skryptu i sam skrypt jest z kolei generowany przez prosty program w Perlu:

  #!/usr/bin/perl -w
use Date::Calc qw(Week_Number Day_of_Week);

##my $RRcmd = 'R CMD BATCH'; ## see below

my $color= 'pink';
my $current_yr = 2019;

my %Miesiac = (1 => 'styczeń', 2 => 'luty', 3 => 'marzec', 4 => 'kwiecień',
        5 => 'maj', 6 => 'czerwiec', 7 => 'lipiec', 8 => 'sierpień',
        9 => 'wrzesień', 10 => 'październik', 11 => 'listopad', 12 => 'grudzień',);
my %DoWName = ( 1 => 'pon', 2 => 'wto', 3=> 'sro', 4 => 'czw', 5 => 'pia', 6 => 'sob', 7 => 'nie' );


open(O, ">dow.R") || die "Cannot open!\n";
open(P, 'LANG=C grep "dist\|date" c*.xml|' ) || die "Cannot open!\n";

while (<P>) { 
  chomp();
  ##print ">>$_;";
  if (/date[^'"]+["']([0-9\/]+)["']/) {$date = "$1";}
  if (/dist[^'"]+["']([0-9\/]+)["']/) {$D{$date} += $1;}
}

close(P) || die "Cannot close!\n";

for $d (sort keys %D ) {    
  ($dyy, $dmm, $ddd) = split '/', $d;
  if ($dyy == $current_yr ) { next } ### skip as incomplete

  my $dow = Day_of_Week($dyy,$dmm,$ddd);
  $DoWs{$dow} += $D{$d}; $DoWNums{$dow}++;

  my $woy = Week_Number($dyy,$dmm,$ddd);
  $WoYs{$woy} += $D{$d}; $WoYNums{$woy}++;
  $RdT++;
  $Years{$dyy}=1;
}

@YNo = sort(keys (%Years));
$YNo = $#YNo +1;

print O "##Generated content == do not edit\n";
print O "##By Day of Week\n";
#
for $d (sort keys %DoWs) { 
  $mean = sprintf "%.1f", $DoWs{$d} / $DoWNums{$d}; 
  $t += $DoWs{$d}; 
  $days_totals .= "$DoWs{$d}, ";
  $days_means .= "$mean, ";
  $days_ns .= "$DoWNums{$d}, ";
  $days_labels .= "'" . $DoWName{$d} . "', ";
  ##printf "%-12.12s %7i %.1f (%i)\n", $DoWName{$d}, $DoWs{$d}, $mean, $DoWNums{$d};
  ;
}
$days_totals =~ s/, $//; $days_means =~ s/, $//;
##$days_ymeans =~ s/, $//;
$days_ns =~ s/, $//; $days_labels =~ s/, $//;

print O "days_totals <- c($days_totals);
  days_means <- c($days_means);
  days_ns <- c($days_ns);
  days_labels <- c($days_labels);\n";

print O "barplot(days_totals, 
 main='Distance (total $YNo[0]--$YNo[$#YNo]): $t kms', horiz=F,  
 names.arg=days_labels, col=c('$color'));
barplot(days_means, main='Day means ($YNo[0]--$YNo[$#YNo])', 
 horiz=F,  names.arg=days_labels, col=c('$color'));
barplot(days_ns, main='RideDays (total): $RdT', horiz=F,
 names.arg=days_labels, col=c('$color'));\n";

print STDERR "##Razem: $t\n";

##print "====\n";

print O "\n\n##By Week of Year\n";

for $w (sort {$a <=> $b } keys %WoYs) { 
  $mean = sprintf "%.1f", $WoYs{$w} / $WoYNums{$w}; 

  $vals_totals .= "$WoYs{$w}, ";
  $vals_ymeans .= sprintf "%.1f, ", $WoYs{$w}/$YNo;
  $vals_means .= "$mean, ";
  $vals_ns .= "$WoYNums{$w}, ";
  $vals_labels .= "$w, ";
}

$vals_totals =~ s/, $//; $vals_means =~ s/, $//;
$vals_ymeans =~ s/, $//;
$vals_ns =~ s/, $//; $vals_labels =~ s/, $//;

print O "vals_totals <- c($vals_totals);
  vals_ymeans <- c($vals_ymeans);
  vals_means <- c($vals_means);
  vals_ns <- c($vals_ns);
  vals_labels <- c($vals_labels);\n";

print O "barplot(vals_totals, main='Distance (total $YNo[0]--$YNo[$#YNo]): $t kms', 
  horiz=F,  names.arg=vals_labels, col=c('$color'));
barplot(vals_ymeans, main='Weak means ($YNo[0]--$YNo[$#YNo])', 
  horiz=F,  names.arg=vals_labels, col=c('$color'));
barplot(vals_means, main='Day means ($YNo[0]--$YNo[$#YNo])',
  horiz=F,  names.arg=vals_labels, col=c('$color'));
barplot(vals_ns, main='RideDays (total): $RdT', 
  horiz=F,  names.arg=vals_labels, col=c('$color'));\n";

print O "### ENDE!\n";

close(O);

print STDERR "##R dow.R\n";

system ("R", "CMD", "BATCH", "dow.R");
print STDERR "##xpdf Rplots.pdf\n";

print STDERR "##convert -density 300 Rplots.pdf opus_by_dow.jpg\n";
system ("convert", "-density", "300", "Rplots.pdf", "opus_by_dow.jpg");

Na koniec przyznam że mam mieszane uczucia co do zeszłorocznego wyczynu, w sensie że za dużo wyszło. Oprócz roweru też jest życie...

Tak więc w przyszłym roku raczej rekordu nie będzie.

Szkocka tragedia (po gdańsku)

Budyń-Adamowicz: ofiara. 36 rachunków bankowych i 7--9 mieszkań. Rada Nadzorcza GPEC (przewodniczący). Rada Nadzorcza Zarządu Morskiego Portu Gdańsk (od 2005r.)

Adamowiczowa: żona Makbeta.

Abramowiczowa Janina: teściowa Makbeta.

Stefan Wilmont: morderca. Zamieszkały w Oliwie. Skazany za 4 napady na placówki bankowe w Gdańsku (łącznie zrabował 13 tys PLN) na 5,5 roku pozbawienia wolności.

Dariusz Sokołowski: niepełnosprawny szef agencji ochrony Tajfun (z prokuratorskimi zarzutami za pobicie i bodjże porwanie) wynajętej do ochrony koncertu WOŚP w Gdańsku. BTW kiedyś był taki ktoś: Podinspektor Tadeusz Sokołowski, zastępca komendanta miejskiego policji w Gdańsku (2001).

Hieny (zamiast czarownic): setki nie będziemy wyliczać.

poniedziałek, 14 stycznia 2019

Ogrzewane rękawiczki na rower

Zasilane z USB i zakupione na Allegro za 60 PLN. Drogo, ale spieszyło mi się. Wiem że z Chin via Ebay (na przykład) by było za 20 PLN. Rękawiczki przekombinowane: mają włącznik + trzy poziomy grzania przy czym różnic istotnych między poziomami nie odczuwam (słabo grzeją ale jak ręce nie będą zamarzać to bez znaczenia). Do tego są odłączalne, bo jakiś 30 cm od rękawiczki jest złącze typu jack. Kable są zresztą za krótkie z punktu widzenia moich potrzeb. No i jack się wysuwa łatwo...

Dolutowałem przedłużkę wypierniczając złącze. Pro memoria: czarny na wejściu jacka to biały na wyjściu, tj. od rękawiczki/czerwony na wejściu to szary na wyjściu.

Pro memoria, bo przelutowałem jeden, a drugi okręciłem na razie taśmą izolacyjną (żeby nie wypadał). Jak będzie mi się chciało to kiedyś przelutuję drugi więc warto wiedzieć, który z którym polutować bez rozcinania po raz drugi wtyczek. Dziś byłem w rękawiczkach i było OK. Ciekawe jak długo pociągną bo wyglądają dość delikatnie...

Paweł Adamowicz nie żyje

Wczoraj czyli 13 stycznia został zamordowany. Mordercą jest człowiek, który wcześniej był sprawcą 4 napadów na placówki bankowe, za które to napady został skazany na 5 i pół roku więzienia. Karę zakończył pod koniec 2018 r. (w grudniu bodajże).

Prezydent Gdańska Paweł Adamowicz został zaatakowany nożem na scenie WOŚP podczas wieczornego "Światełka do Nieba" w tym mieście. Na miejscu był reanimowany, potem został przewieziony do szpitala, gdzie był operowany. Napastnik to 27-letni mieszkaniec Gdańska z przestępczą przeszłością.

Wygląda na atak człowieka chorego psychicznie, ale nie zamierzam spekulować w tym temacie dołączając do chóru internetowych ekspertów od polityki/bezpieczeństwa/więziennictwa itd lub zwykłych hien usiłujących coś na tej tragedii osiągnąć typu naczelny Wyborczej Kurski czy korespondent Guardiana na Polskę Davies...

wtorek, 8 stycznia 2019

Jak zrobić gruzińskie mchali/pchali

W Gruzji tego nie jadłem przyznam. Wg http://obliczagruzji.monomit.pl/przepisy-kuchni-gruzinskiej/pchali-warzywna-kreatywnosc-w-orzechowym-sosie mchali/pchali to to samo. Zrobiłem wg. przepisu jak poniżej (przypuszczalnie stąd, ale już nie pamiętam na 100% https://www.vegestyl.pl/weganskie-przepisy/przystawki/pchali-gruzinskie):

300 g upieczonych lub ugotowanych na parze buraków; 150 g orzechów włoskich; 1 łyżeczka octu balsamicznego; 1 ząbek czosnku; natka pietruszki, kolendra; 1/2 nasion granata; 1 łyżeczka zgniecionych nasion kolendry; przyprawy: sól, pieprz, chili, tymianek, majeranek. Z taką modyfikacją że bez kolendry (zielonej) i granatów. Zamiast kolendry dałem więcej (zmielonych) nasion kolendry.

Przygotowanie: buraki ścieramy na tarce o grubych oczkach, a następnie rozdrabniamy blenderem podobnie, jak orzechy włoskie. Rozdrobnione buraki i orzechy łączymy razem, dodajemy wyciśnięty lub bardzo drobno posiekany czosnek, ocet winny, zgniecione nasiona kolendry, majeranek, tymianek, posiekaną natkę pietruszki, kolendrę i doprawiamy przyprawami. Wszystkie składniki dokładnie mieszamy. Z tak uzyskanej masy formujemy kulki i posypujemy granatem, pozostałą pietruszką i kolendrą.

Narobiłem się ja głupi, bo zmiksować coś tak niepłynnego, to nie jest prosta sprawa. Wyszła pasta oczywiście. Zrobiłem też wersję z dynią (zamiast buraków). Rezultat niepowalający w obu przypadkach i jakoś to nie za bardzo schodziło. Raczej nie będę tego robił więcej.

Do tego proporcja 300 g buraków/150 g orzechów jest mało dietetyczna/za bardzo kaloryczna. Alternatywna wersja mchali/pchali nie przewiduje miksowania buraków/orzechów. Po prostu buraki się trze na grubej tarce, posypuje orzechami i przyprawami (np. http://ugotuj.to/ugotuj/174600369/mchali+z+burakow/p/):

60 dag niedużych buraków ćwikłowych; 5 dag wyłuskanych orzechów włoskich; 2--3 łyżki posiekanej natki; 4 ząbki czosnku; 2 łyżki octu winnego; 3 łyżki oleju słonecznikowego; sól+ pieprz.

Buraki gotujemy lub pieczemy. Po opłukaniu w zimnej wodzie obieramy i ścieramy na tarce o dużych oczkach. Orzechy siekamy i mieszamy z burakami, natką, przeciśniętym przez praskę czosnkiem, octem i olejem. Przyprawiamy solą i pieprzem. Podajemy po schłodzeniu.

Muszę spróbować tej wersja, która wydaje się mieć dwie fundamentalne zalety: mniej kalorii (mniej orzechów -- 8,3% masy buraków zamiast 50%) no i nie przewiduje blendowania, które jest mocno uciążliwe.

Reasumując z kuchni gruzińskiej próbowałem już wykonać samodzielnie: mchali, badridżani z bakłażana (http://obliczagruzji.monomit.pl/przepisy-kuchni-gruzinskiej/baklazanowe-zawijasy-po-gruzinsku) no i czurczele. Bardziej skomplikowane rzeczy typu pierogi chinkali są nie dla mnie. Rezulatat mieszany: mchali i czurczele tak sobie. Badridżani może być ale żeby to jakaś superrewelacja była to też nie powiem. Planuję jeszcze spróbować pelamuszi (zamiast czurczeli), bo to w sumie to samo.

Przepisu na pelamuszi/pelamushi po polsku ni ma to załączam po angielsku, wg. https://www.washingtonpost.com/recipes/georgian-sweet-grape-puddings-pelamushi/14548/:

Tested size: 6-8 servings

Ingredients: 1/4 cup all-purpose flour; 1/4 cup extra-fine or finely ground cornmeal (harina de maiz); Small pinch fine sea salt, plus more for garnish; 32 ounces pure Concord grape juice; 1/4 cup honey, for garnish; 1/2 cup skinned, chopped hazelnuts (may substitute another tree nut), for garnish.

Directions: Whisk together the flour, cornmeal, salt and grape juice in a large saucepan over medium-high heat. Bring to a boil, stirring occasionally; cook for 1 minute, then reduce the heat to medium-low; cook for about 20 minutes, stirring often, until the mixture has reduced by about one-third and you can no longer taste the flour.

Divide the mixture among individual ramekins. Place them in the refrigerator to chill and set for several hours or up to overnight.

Preheat a toaster oven or oven to 300 degrees. Line a small baking pan with parchment paper.

Bring the honey to a boil in a small saucepan over medium-high heat; it will look sudsy. Stir in the nuts until evenly coated; remove from the heat after 30 seconds.

Spread the nuts in the baking pan and sprinkle lightly with salt; bake for 10 minutes, then transfer the nuts to a wooden cutting board to cool, turning them over after 2 or 3 minutes and breaking apart any large chunks.

Serve the chilled puddings in their ramekins, or turn them out onto individual plates. Garnish with the honeyed hazelnuts and a sprinkling of salt.

poniedziałek, 7 stycznia 2019

Zbieranie bursztynu na wyspie Sobieszewskiej

Na sprawą TV temat stał się modny. Ja się dowiedziałem o tym sporcie trochę wcześniej od kol. MK, który szuka bursztynu już od paru lat. Bursztyn zbiera się przeszukując wypłukane przez wodę patyki, których -- po sztormie -- są całe ławice. Można czekać aż morze ww. patyki wyrzuci na brzeg, ale lepsze rezultaty daje brodzenie w wodzie. Do tego potrzebne są wodery (minimum kalosze) i podbierak do zagarniania patyków. Bursztyn pływa i jest żółty więc da się go wyławiać podbierakiem (razem z patykami); alternatywnie wyciąga się w ciemno cały podbierak patyków na brzeg a potem wysypuje i ogląda zawartość. W nocy też można szukać, bo w świetle lamp UV bursztyn zabarwia się na żółto-seledynowo i dość wyraźnie go widać. Bursztynu szuka się po sztormie, przy czym wiać powinno w kierunku lądu czyli z północy. Jak nie wiało to go nie będzie, można nie chodzić i nie tracić czasu. W skrócie zatem naukowo: buty + podbierak + sztorm = bursztyn (bursztyn - podbierak = buty + sztorm zatem :-) ).

Więc poszliśmy (mój) pierwszy raz szukać 25 grudnia. Plaża była pusta, ale znaleźliśmy miejsce gdzie trochę tego bursztynu było. No ja byłem średnio przygotowany i wyszkolony. Nie miałem w szczególności wysokich butów i dość szybko woda mi się nalała. Zimno mi się przeraźliwie zrobiło. Byliśmy wszystkiego góra 2 godziny.

Potem był sztorm jak wiadomo. Pojechaliśmy w czwartek 3-ciego stycznia, sztorm jeszcze nie ucichł. Plaża i woda przy brzegu była czysta, w sensie nie było żadnych patyków. Nie było nawet sensu szukać. Przetestowałem nowej wodery z Decathlonu (149 PLN) + kurtkę HH (odgrzebaną z szafy). No tym razem byłem ubrany prawidłowo--jedyny problem to kończyny, zwłaszcza dłonie. Bo żeby zbierać bursztyn to lepiej zdjąć rękawice.

Kolejna wizyta w piątek--byliśmy na Sobieszewie rano, tuż po 4:00. Wiatr już ucichł, ale morze było jeszcze wzburzone. Na plaży były już miejsca, w których zaczęły gromadzić się wypłukane z dna patyki. Było już też sporo ludzi na plaży z latarkami UV. Nie było tylko bursztynu. Poszliśmy pokimać do samochodu, bo szkoda było marnować energię...

Około 7:00 następna próba. Morze wyraźnie spokojniejsze, jeszcze więcej ludzi na plaży, których stopniowo przybywa. W apogeum jest kilkaset osób, które gromadzą się w miejscach, w których fale wyrzucają patyki (i bursztyn). Pojawiają się też media (TVN, TVP, Fakt). Pan z lokalnej Panoramy nawet zrobił ze mną wywiad, ale się okazało, że byłem rezerwą. Puścili wywiad z kimś innym. Rozczarowujące... Zbieraliśmy bursztyn do 14:00. Ja uzbierałem ponad 400 g, w tym okoł 200 g w dużych kawałkach, reszta to okruchy. Nb. bursztyn jest lekki więc nawet całkiem spory kawałek nie waży dużo 12 gramów to mój rekord mówiąc konkretnie (kawałek 40mm długi 20mm szeroki no i jakieś 15mm gruby; wyłowiony z morza zresztą a nie znaleziony na brzegu). Okruchy ważą ułamki grama a wymiarowo zaczynają się od (dużego) łepka od szpilki -- żeby ktoś nie myślał że standardem jest okaz pokazywany w TVN. Absolutnie nie, taki gigant (wielkości pięści), to rzadkość -- ja nie widziałem żeby ktoś coś takiego wyłowił, no ale widać, że jak się ma szczęście to można.

Kolejna wizyta na plaży 6-tego stycznia. Trochę na pałę, bo było wiadomo że będzie tłum (niedziela). I był. Pełno patyków, gorzej z bursztynem. Jak zapadł zmrok się okazało, że nasze latarki UV to zabawki w porównaniu z tym co wyciągnęła konkurencja. Zwijamy manele koło 17:00. Słabo poszło...

Dziś (7 stycznia) pojechałem sam kontrolnie, bez sprzętu. Plaża pusta, morze spokojne, nie ma zbieraczy -- tylko nieliczni spacerowicze. Przeszedłem się od wejścia Orle do Ptasiego Raju zbierając okruchy bursztynu i robiąc zdjęcia. Nawet tych okruchów trochę było (więcej niż wczoraj, w tym trzy w miarę kuliste okazy 15mm--20mm średnicy ważące: niecałe 4 g, ciut ponad 4 g oraz największy -- 5,7 g. Razem wszystkiego wyszło 25 g.)

Teraz trzeba czekać na następny sztorm...

Zdjęcia z wypraw po bursztyn są tutaj: 0401 0601 0701

niedziela, 6 stycznia 2019

Jak zrobić gruzińską czurczelę

Czurczchela: Czurczchela -- gruziński deser produkowany z orzechów i winogron. Znany w Turcji jako Pestil Cevizli Sucuk. Orzechy są wiązane nićmi. Gotowane w soku z winogron i masie z mąki kukurydzianej oraz cukru tworzą coś na kształt podłużnych batonów. Zobacz też: http://weganon.pl/2016/03/gruzinska-czurczchela-2.html (albo wpisz w google Czurczchela).

Spróbowałem wykonać wg przepisu:

Składniki: 1 litr soku (świeżego) z jasnych winogron. ok. 5 łyżek mąki; szczypta soli; 140 g orzechów.

Orzechy nawlekamy na bawełniane grube nici, zawiązując na końcu pętelkę do powieszenia przyszłych orzechowych batoników. Otrzymałam 7 sztuk o długości 12--14 cm.

Sok z winogron podgrzewamy, aż się gotować. W odrobinie zimnego soku z winogron rozprowadzamy mąkę i wlewamy do gotującego się soku, dokładnie mieszając masę, która wyglądem będzie przypominać wodnisty kisiel. Zmniejszamy temperaturę. Po 30 minutach masa zacznie lekko gęstnieć i przybierze kolor jasnego toffi. Lekko solimy. Często mieszamy, by gęstniejący sok nie przywarł do dna garnka. Masa będzie przybierać coraz ciemniejszy kolor i zredukuje objętość. Pod koniec gotowania będzie wyglądała jak kajmak. Obtaczamy w masie sznurki orzechów i zawieszamy do zastygnięcia.

Przepis miejscami nie do końca precyzyjny, co rozumiem wynika ze zmiennej ilości wody w owocach i/lub upodobań kucharza. W szczególności brak jest czasu gotowania.

No to w moim przypadku było 1300 g soku (czyli nieco więcej niż w przepisie) i 100 g mąki. Razem 1400 g. Po 40 minutach gotowania waga masy wynosiła 1080 g.; 60 min. -- 960 g.; 90 min. -- 710 g.; 110 min. -- 580 g.; 120 min. -- 510 g. Czyli po 2 godzinach masa stanowiła 36% wyjściowej a po 110 minutach 41%.

Moim zdaniem przegiąłem pałę i zbytnio zredukowałem sok, co spowodowało, że nie szło w nim zanurzyć sznurka. Jeszcze pierwszy dało się w miarę łatwo oblepić (bo sok był gorący i było go najwięcej) ale już drugi z trudnością a trzeci okazał się ostatnim.

Wniosek: 2 h gotowania to za dużo. Wychodzi że godzina i 45 minut (albo i ciut mniej) absolutnie wystarczy. Albo redukcja masy do 42--45%. Jak mi się będzie chciało to takie będą parametry w drugim podejściu. Także w drugim podejściu bym spróbował wersji nieco bardziej slim, tj. wykorzystując sok z jabłek (tańszy i mniej kalorii), bo wprawdzie prawdziwe churczele są z winogron ale są też wersje z soku z granatów oraz jabłek (widzieliśmy w Gruzji). No i wreszcie bym rozpoczął od 3litrów soku, kończąć na 0,45 $\times$ 3 l = 1,35 l.

Jeżeli ktoś jest w stanie ocenić lepkość po wyglądzie, to po 2 h tak to wyglądało.

Piszę nieco bardziej, bo (podobnie jak wiele innych przysmaków z Gruzji) czurchela za sprawą zgęszczonych winogron/mąki/orzechów to bomba kaloryczna. Raczej nie należy się nią objadać...