<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><title>jpc's place</title><link>http://jpc.jogger.pl/</link><description>Wpisy z dziennika internetowego Jogger, wspomaganego przez Jabbera</description><lastBuildDate>Sun, 12 Feb 2012 06:10:16 +0100</lastBuildDate><generator>JoggerPL</generator><item><title>Czytelnictwo</title><link>http://jpc.jogger.pl/2011/02/23/czytelnictwo/</link><description>Przeczytałem ostatnio „Peanatemę” Neila Stephensona. To jest książka niesamowita, wciagająca i tak pełna odniesień do historii, że ciężko ją nazwać science fiction. Zdecydowanie trzyma poziom Cyklu Barokowego tego samego autora (co jest bez wątpienia nie lada wyzwaniem).
Dzisiaj natomiast skończyłem „Małego Brata” Cory Doctorow. Ściągnąłem wersje CC już w okolicach premiery (2008), ale dopiero kupione w Empiku polskie tłumaczenie dane mi było przeczytać. To ciekawe i przerażające zarazem, że fantastykę naukową można napisać właściwie bez uciekania się fantastyki. Ta książka to prawie podręcznik. Gdybyście mieli zamiar (w co wątpie) przejmować grupą docelową (young adults), to zapewniam, że fabule niczego nie brakuje, a w „innych aspektach” to bardziej Sapkowski niż Niziurski... ;]
Całe szczęście, że zimowe noce są długie. :)</description><pubDate>Wed, 23 Feb 2011 13:18:37 +0100</pubDate><guid>http://jpc.jogger.pl/2011/02/23/czytelnictwo/</guid><category>Ogólne</category></item><item><title>Wrzuta.pl w Safari 5</title><link>http://jpc.jogger.pl/2010/06/11/wrzuta-pl-w-safari-5/</link><description>Popełniłem rozszerzenie dla Safari 5 poprawiające interakcję z wrzutą.pl. Zmienia Flashowy odtwarzacz muzyki na tag audio z HTML5, dodaje linki do ściągania plików (małe ikony dyskietki koło rozmiaru, pod odtwarzaczem) oraz opcjonalnie usuwa reklamy i wyrzuca dużo innych (niepotrzebnych IMHO) elementów. Kod oparty jest częściowo o 2 userscripty i jeden userstyle.
Doczekałem się też błyskawicznej recenzji (dzięki! ;), na której możecie zobaczyć zrzuty ekranu.
Kilka (myślę, że ciekawych) informacji dla programistów rozszerzeń można wyczytać na BitBucketowym wiki.</description><pubDate>Fri, 11 Jun 2010 15:43:52 +0200</pubDate><guid>http://jpc.jogger.pl/2010/06/11/wrzuta-pl-w-safari-5/</guid><category>Informatyka</category><category>Techblog</category></item><item><title>Tajna nowinka w Safari 5</title><link>http://jpc.jogger.pl/2010/06/11/tajna-nowinka-w-safari-5/</link><description>Nie jestem pierwszym, który to zauważył, ale w nowym Safari jest możliwość cofnięcia (za pomocą ⌘Z) zamknięcia zakładki. (Undo Close Tab)
Cofanie działa niezależnie w każdym oknie i jest zbawiennym suplementem dla Reopen Last Closed Window i Reopen All Windows from Last Session z menu Hsitory.</description><pubDate>Fri, 11 Jun 2010 15:36:28 +0200</pubDate><guid>http://jpc.jogger.pl/2010/06/11/tajna-nowinka-w-safari-5/</guid><category>Informatyka</category><category>Techblog</category></item><item><title>Procesory LPC17xx od NXP</title><link>http://jpc.jogger.pl/2010/06/07/procesory-lpc17xx-od-nxp/</link><description>Ostatnio siedziałem trochę nad procesorami z rodziny LPC1700 (konkretnie nad LPC1768, który jest w niedrogiej płytce &quot;startowej&quot; mbed i nad LPC1752, który planujemy wykorzystać w produkcie). Fajne i tanie Corteksy M3 (ARMy), ale ja nie o tym chciałem... ;-)
Chciałem o tym, że dokumentacja i dostarczane przez producenta pliki nagłówkowe mają irytujące bugi. W LPC17xx.h rejestr FIFOLVL jest zdefiniowany jako 8-bitowy, więc optymalizacja w kompilatorze z radością eliminuje wszystkie testy sprawdzające starsze bajty (a w nich siedzi poziom nadawczego bufora FIFO). Jak się można domyśleć debuggowanie tego było czystą przyjemnością. :) (tak, douczyłem się z radością instrukcji Thumb2)
Mniej problematyczne, ale irytujące jest, że FIFOLVL może przyjmować 17 różnych wartości (16 bajtowe FIFO może być puste, pełne lub cokolwiek pośrodku, zakodowanie tego wymaga 17 stanów), a nie 16, jak napisano w dokumentacji. Maksymalną wartością jest więc 0x10, a nie 0xf, a pola te zajmują jeden bit więcej niż podano. PS. Zweryfikowałem to na dzikich osobnikach rasy LPC1752 pochodzących z Farnella.
Myślę, że wkrótce wrzucę na bitbucket.org jakieś przykłady i moje biblioteki do peryferiów, ale muszę je jeszcze trochę potestować. Gdyby ktoś się niecierpliwił to może zerknąć na moje repo LPC1768 (ale kod tam jest stary, nawet nie ma tej poprawki do FIFOLVL) albo może mnie zachęcić do doszlifowania nowego w komentarzach (bez obaw, I don't hold my breath ;).
Short summary in English: The file LPC17xx.h provided by NXP as part of the CMSIS package has a serious bug: the FIFOLVL register in all the UART register structs is declared as uint8_t (should be uint32_t) which makes the compiler remove (as an optimization) all transmit FIFO level checks. Additionally the maximal FIFO levels are 0x10 and not 0xf and the fields occupy one more bit (it is quite logical for a 16-byte FIFO). This values were verified on the LPC1752 I own.</description><pubDate>Mon, 07 Jun 2010 01:25:26 +0200</pubDate><guid>http://jpc.jogger.pl/2010/06/07/procesory-lpc17xx-od-nxp/</guid><category>Elektronika</category><category>Techblog</category></item><item><title>Trójka a OS X</title><link>http://jpc.jogger.pl/2010/04/17/trojka-a-os-x/</link><description>W wypadku wystąpienia chęci słuchania Programu Trzeciego Polskiego Radia na waszym nowym, słitaśnym MacBooku Pro 13&quot; można użyć bezpośredniego adresu do strumienia RTSP: Trójka. Link ten można też złapać i przeciągnąć na pulpit (abo gdzie), aby sobie otwierać wygodnie, zwykłym dwumlaskiem.

Działa na pewno w Snow Leopardzie (w QuickTime X) i Leopardzie oraz nie wymaga Flip4Mac (wykorzystuje Orban Opticodec-PC, który skutkuje strumieniem AAC+). Link wydłubałem ręcznie ze strony Trójki, po wybraniu odtwarzacza Real Player.</description><pubDate>Sat, 17 Apr 2010 21:44:46 +0200</pubDate><guid>http://jpc.jogger.pl/2010/04/17/trojka-a-os-x/</guid><category>Informatyka</category><category>Ogólne</category><category>Techblog</category></item><item><title>Kapitał Ludzki</title><link>http://jpc.jogger.pl/2009/04/08/kapital-ludzki/</link><description>Wystartowałem w programie Nowa Innowacyjna Firma w ramach programu Kapitał Ludzki i po Świętach mam zgłosić się na test psychologiczny. Miał ktoś już przyjemność w czymś takim (były już wcześniej nabory w ramach tego programu) brać udział?
Google co prawda nic o tym nie wiedzą, ale mimo wszystko myśle, że to jest prawda. ;]</description><pubDate>Wed, 08 Apr 2009 22:10:25 +0200</pubDate><guid>http://jpc.jogger.pl/2009/04/08/kapital-ludzki/</guid><category>Ogólne</category><category>Osobiste</category><category>Ustrój Świata</category></item><item><title>Googtionary</title><link>http://jpc.jogger.pl/2009/01/26/googtionary/</link><description>It seams that Google cannot always replace a true dictionary and not only when you want to hit someone with a heavy one made from dead trees.
Try checking the validity of </description><pubDate>Mon, 26 Jan 2009 19:11:06 +0100</pubDate><guid>http://jpc.jogger.pl/2009/01/26/googtionary/</guid><category>Informatyka</category><category>Ogólne</category><category>Ustrój Świata</category></item><item><title>PLT Scheme Module System</title><link>http://jpc.jogger.pl/2009/01/26/plt-scheme-module-system/</link><description>Let me link to a thread I started about dynamically requiring scheme modules while playing nicely with compilation to distributable executables. The problem was to declare a module for inclusion by the compiler without really requiring it (since it may only be needed by code loaded dynamically at runtime).

This is not obvious because the PLT Scheme runtime does not keep the whole scope as bare dictionaries (like does Python or Ruby) so a call to &quot;eval&quot; does not see bindings (variables) introduced by the local scope (and this basically means that it sees no bindings at all). There are several reasons for this:


  It can determine at bytecode compilation time whether functions and variables are primitive, imported from another module or really dynamic (because it can search the code for their mutations).
  The primitive calls can be inlined and prepared for efficient JITing (since we know they are primitive and will remain this way forever).
  Local bindings (introduced by let or by function bodies) can be removed if they are not used and variable access can be optimized into a pointer dereference (same thing for any struct field access).

This means that we cannot just stuff a bunch of local variables inside a function, call eval and hope that the hell won't break lose on us. :) We have to create a new namespace (which is not the same as scope) and copy any modules we may need from our namespace [1]. And if we want to compile our code to executables we have to come up with better references to our modules than simple path names which would be evaluated (at runtime) relative to the current directory (which obviously won't work). And this is where the magic define-runtime-module-path comes to the rescue. It evaluates the module path (at compilation time) relatively to the current module and stores such reference in a variable for future use.
It is worth mentioning that this magic define was written by Matthew Flatt (one of the main PLT Scheme developers) using standard macro mechanism of Scheme (without modifying the language) and can be adored </description><pubDate>Mon, 26 Jan 2009 18:56:25 +0100</pubDate><guid>http://jpc.jogger.pl/2009/01/26/plt-scheme-module-system/</guid><category>Informatyka</category><category>Techblog</category></item><item><title>Duda-Bis</title><link>http://jpc.jogger.pl/2009/01/23/duda-bis/</link><description>Ciekawa sprawa. W Warszawie protestują pracownicy powołując się na obrót firmy jako na wyznacznik jej płynności finansowej. Cała informacja napisana tak, żeby zasugerować złą wolę banków, które próbują wykończyć polskie firmy.
Jak się trochę poszuka, to w internetach o firmie Duda-Bis można znaleźć trochę informacji. Głównie krzyków o złym traktowaniu kooperantów, rotacji kadry kierowniczej i słabych wynikach finansowych. To wszystko z datami z początku 2008 roku.
Trochę więcej napisała Wyborcza, im się chociaż chciało zajrzeć do googli (powołują się na komentarze z serwisu bankier.pl, te same co ja), a nie tylko ctrl-c/v z PAPu.
W jednym tylko miejscu znalazłem informację o tym, że przez bank zgłoszony został wniosek o upadłość z możliwością układu (a nie z likwidacją majątku), więc dokładnie to, czego domagają się pracownicy (tylko sami o tym nie wiedzą). Firma będzie miała 3 miesiące na zawarcie układu z wierzycielami (nie tylko z 3 bankami, ale ze wszystkimi wściekłymi rolnikami również), w ramach którego mogą umażać długi, rozkładać na raty spłatę i robić wszystkie inne cuda (o ile zgodzi się na to 2/3 wierzycieli dysponujących 50% długu). W dodatku przez te 3 miesiące nie naliczają im się odsetki, nie zrywają umowy długoterminowe i takie tam.
Gdyby ktoś z zarządu pomyślał troche wcześniej, to otworzyliby postępowanie naprawcze i robili dokładnie to samo, ale bez syndyka, który przejmie (przynajmniej formalnie) zarządzanie przedsiębiorstwem.
Ostatecznie imperialistyczne banki się mszczą na polskim przemyśle, czy po prostu dziennikarze znają prawo i gospodarkę tak samo dobrze, jak pracownicy opisywanej ubojni (tylko za co w takim razie biorą pieniądze?).</description><pubDate>Fri, 23 Jan 2009 22:33:34 +0100</pubDate><guid>http://jpc.jogger.pl/2009/01/23/duda-bis/</guid><category>Ogólne</category><category>Ustrój Świata</category></item><item><title>Mercurial</title><link>http://jpc.jogger.pl/2008/12/13/mercurial/</link><description>hg log -r: wyświetla historię w kolejności chronologicznej.
W dokumentacji tego nie znalazłem, odgadłem drogą eksperymentu naukowego. Czy to jest aż taki głupi pomysł, że nikt tego wcześniej nie potrzebował?</description><pubDate>Sat, 13 Dec 2008 01:38:56 +0100</pubDate><guid>http://jpc.jogger.pl/2008/12/13/mercurial/</guid><category>Informatyka</category><category>Techblog</category></item></channel></rss>
