Michał Moroz

Abecadło smoczątka, dziennik niecodzienny

Pozytywne wartościowanie: pisz swój ChangeLog

ChangeLog to plik, który znaleźć można w większości paczek z programami Open Source. Opisuje on wszystkie zmiany w kodzie, te większe i mniejsze. Z tego pliku mogą skorzystać inni programiści oraz użytkownicy, aby obejrzeć, co dodano ostatnio do programu, czy też, jakie błędy poprawiono. Dla niektórych programów jest to najważniejsze lub jedyne źródło informacji o zmianach do nich wprowadzanych.

Tyle wprowadzenia, mam nadzieję, że zaspokoiłem wiedzę wszystkich mniej informatycznych, którzy mogliby chcieć wiedzieć, czym ten ChangeLog jest. A tymczasem przejdźmy do właściwej części wpisu.

Rozwijając temat - tak, nakłaniam Was do prowadzenia swojego prywatnego dziennika wszystkich pozytywnych zmian, które wprowadziliście w swoim, czy też w czyimś życiu. Taki dziennik potrafi bardzo dowartościować w tych gorszych momentach, a zawsze po przeczytaniu tego, co pożytecznego, czy też kreatywnego zrobiłem, czuję się dumny z siebie. Po pewnym czasie ChangeLog będzie stanowił miłą pamiątkę, źródło dalszych inspiracji, czy też bazę danych o różnych projektach, które kiedyś stworzyliście, a być może przydadzą Wam się jeszcze w przyszłości.

Główną zaletą oczywiście będą te wszystkie pozytywne emocje, które powrócą, kiedy powrócicie myślami jeszcze raz do tego przyjemnego momentu. Osoby, które cały czas powtarzają, że nigdy nic nie robią, będą zdziwione tym, jak wiele zdarzeń obracały w nicość. A ja bucowato uśmiechnę się do siebie i kolejny raz powiem: `jaki to ja jestem fajny'. :P

Dla każdego coś miłego. W takim razie ostatni akapit poświęcę na instruktaż i zakończę ten wpis. Instruktaż będzie bardzo krótki. Nie oszukujcie się, zapisujcie wszystkie pozytywne zmiany i wszystkie wartości dodane, od pocieszania koleżanki do stworzenia projektu swego życia. Formę wymyślcie sobie sami, mój pomysł to data i opis zdarzenia, krótki i suchy. W moim przypadku emocje napływają same. Oczywiście wy dostosujecie swoje ChangeLogi do własnych potrzeb, nieprawdaż? ;)

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Mapa myśli - kotwicząc informacje

Na początku kawałek o naszym mózgu. Jego najważniejszą funkcją jest przetwarzanie i przechowywanie danych. Oczywiście to stwierdzenie nie odkrywa Ameryki, jednak umieściłem je tutaj, aby zwrócić uwagę na sposób, w jaki te informacje są przechowywane i jakie należy podjąć kroki, aby je odczytać. Ta sprawa już nie jest tak prosta, jak by się mogło wydawać...

Zastanówmy się, dlaczego w momencie, kiedy zupełnie nie potrzebujemy danego przedmotu, nagle uświadamiamy sobie, gdzie go odłożyliśmy (chociaż kilka dni temu szukaliśmy go tyle czasu i nic nie mogliśmy odnaleźć)? Czemu tak jest? Otóż, jakiś sygnał, który właśnie nasz umysł zarejestrował, skojarzył się nam z danym miejscem, w którym odłożyliśmy ten przedmiot. Tego pierwszego skojarzenia sygnału z miejscem wcale nie musimy być świadomi, jednak gdy już impuls dotarł do tego miejsca, pobudził jeszcze jedną ścieżkę, która znacznie wzmocniła siłę impulsu tak, że wpłynął na naszą świadomość.

No dobrze, ale co z tego wynika? - spyta ktoś. Odwróćmy na chwilę sytuację. Czemu nie mogliśmy znaleźć przedmiotu dnia poprzedniego? Gdyby to był długopis, to jakie skojarzenia pojawiłyby się w Waszych głowach pierwsze? Długi, owalny, kolorowy, z przyciskiem, służy do pisania? Właśnie - żadnej wzmianki o położeniu, ponieważ długopisy nie są przypisane szczególnie do jakiegoś miejsca. Śmiało, powiedzmy naszym głowom, że interesuje nas jeden konkretny długopis. Żadna z nich nie posłucha.

Z tego już można coś wysnuć. Po pierwsze, jedynym sposobem dotarcia do pożądanej informacji jest droga skojarzeń. Po drugie, skojarzenie, które występuje w jedną stronę wcale nie musi występować w drugą, a efekty tego widać powyżej.

Kotwica.

Kotwiczenie informacji, to zapamiętywanie informacji nie jako autonomiczna całość, ale dołączanie jej do istniejących już pojęć. Wtedy, drogą skojarzeń łatwo będzie dojść do interesujących rzeczy. W ten sposób uczenie jest efektywniejsze, bo zawsze, kiedy będziemy pobudzać pojęcie (krótko mówiąc - myśleć o nim), powiązanie między nim a naszą informacją stanie się silniejsze.

Kolejną ważną rzeczą jest zdanie sobie sprawy z tego, w jaki sposób postrzegamy świat. Znacznie lepiej trafiają do nas obrazy, niż tekst, ponieważ obraz przedstawia daną rzecz, którą musielibyśmy odczytać i wyobrazić, korzystając z tekstu. Uświadomienie sobie tego niuansu jest istotne dla zrozumienia mapy myśli.

Mapa myśli.

Z myślą ma więcej wspólnego niż z mapą. Dość prosta w budowie, daje nam około 700% wydajności w procesie nauki niż metoda ogólnie stosowana - zakucie na blachę z zeszytu bądź notatek, między którymi powiązań nie ma.

Akapit mówiący o obrazie mógłby podpowiadać nam, że ta mapa powinna się posługiwać pismem obrazkowym, a litery są złe. I tak by było, gdyby nie fakt, że zrobienie porządnego szkicu danego obiektu zajmie o wiele więcej czasu, niż zapisanie jego nazwy. Dlatego, od obrazka się zazwyczaj zaczyna.

Obrazek ten wizualizuje główne zagadnienie, czyli pierwsze skojarzenie w mapie myśli. Musimy je zapamiętać dokładnie, ponieważ od niego będzie się wywodziły dalsze skojarzenia. Bez niego nawet nie osiągniemy naszej mapy.

Stwórzmy więc mapę myśli o mapie myśli. Przyda się kartka A4 lub większa, kilka kolorowych pisaków lub kredek, długopis i do pracy. ;)

Na środku umieszczamy hasło, które będzie pierwszym skojarzeniem. Czyli samą mapę myśli. Moim skojarzeniem na zwrot `mapa myśli' jest kawałek papieru i głowa narysowana w środku. Chciałem powiedzieć - mózg, ale rozmyśliłem się - wymagałby dużo starannej pracy, aby z mózgiem się kojarzył. Oczywiście, to tylko mój pomysł, jeśli Wam termin `mapa myśli' kojarzy się z czymś innym, to namalujcie to.

Podpisujemy nasz obrazek wielkimi literami - MAPA MYŚLI. Jestem pewien, że tak szybko nie zapomnicie tego obrazka z podpisem.

Od naszego głównego zagadnienia rysujemy dużą strzałkę, po czym wypełniamy ją... niebieskim kolorem? Za strzałką wpisujemy hasło `budowa', od którego robimy odgałęzienia do kolejnych, pomniejszych haseł, powiedzmy: `kolory', `obrazek w środku', `strzałki jako skojarzenia', `drzewiasta struktura', `dużo połączeń'.

Następna strzałka, żółta, wieść będzie nas do mózgu, od którego takie to odgałęzienia wydzielimy - `lubi obrazki', `używa skojarzeń'. Od `skojarzeń' tworzymy kolejną gałązkę - `działają tylko w jedną stronę'. `Skojarzenia' możemy też połączyć linią ze `strzałkami' z poprzedniego akapitu, tak samo można zrobić z `obrazkami'.

I tak dalej - nie bójcie się kreślić liniami przez całą mapę, używać różnych odcieni kolorów, kontrastów, diagramów, ramek, kółek, kwadratów, obrazów, czy czegokolwiek, co wymyślicie, jeśli będą one dla Was zrozumiałe. Jeśli postaracie się o to, by tworzenie map myśli było dla Was odkrywczą zabawą, nie dość, że miło spędzicie czas, to na dodatek będziecie jeszcze efektywniej się uczyć! :)

Warto jeszcze wspomnieć o dwóch rzeczach - im bardziej śmieszne będą skojarzenia z danym zagadnieniem, tym lepiej zostanie ono zapamiętane, a ja życzę Wam tego, abyście zdrowo się uśmiali nad waszymi notatkami. A druga sprawa to kwestia list wszelkiego rodzaju. Jeśli już nie da rady i w danej notatce będziecie mieli listy elementów o kilku, czy kilkunastu elementach, to potraktujcie je jako jeden obiekt i zróbcie z nich jeden skrót, byle by był łatwy do zapamiętania. Potem zaznaczcie części słów, z których stworzyliści skrót i zapiszcie jego nazwę pod spodem. Przykładowo: drapa ropa - drapiestwo, padlinożerstwo, roślinożerstwo, pasożytnictwo, czyli jedna z części mapy myśli wykreślonej na potrzeby sprawdzianu z biologii o ekologii, do której notatki stworzyłem i zapamiętałem w godzinę, a powtórzyłem je po raz pierwszy już podczas pisania tegoż sprawdzianu. ;)

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Thinkpad 560X, błąd 8611

Workstacja, Thinkpad 560X, o wdzięcznej nazwie Hime (z jap. - księżniczka), doczekała się części zamiennych w postaci nowej obudowy i lepszej matrycy. Dodatkowo, razem z nią została wprowadzona nowa płyta główna i procesor 233MHz - nie chciało mi się demontować starej. A nuż bym coś uszkodził?

Problem w tym, że gdzieś pomiędzy trackpointem, a mostkiem znajduje się zakłócenie na linii, które blokuje dostęp do działającego systemu - zatrzymując się na testach Biosu. Dziwny to pomysł, gdy nie można załadować systemu poprzez problemy z trackpointem, ale nie ja go projektowałem.

Szczęśliwie i na ten problem znajdzie się obejście - po wyświetleniu komunikatu o błędzie i przejściu do okna testów, należy je zamnkąć, wciskając Esc. Spowoduje to przejście do okna ustawień biosu. Następnym krokiem jest wybranie i uruchomienie menu Config, oraz naciśnięcie Ctrl-D z jego poziomu. To miejsce, nazwane "Base 128 CMOS" (ma ktoś pomysł, jak je przetłumaczyć? Bazowe 128 bajtów raczej z niczym się nie kojarzy), o ile dobrze potrafię odgadnąć, posiada o wiele więcej możliwości konfiguracyjnych niż poprzednie okna, dostępne dla użytkownika. W nim to offset 20h odpowiada za zachowanie trackpointa - w moim przypadku zmiana wartości na 01 wystarcza. A następnie F2 (zapisz) i F3 (wyjdź), oraz restart maszynki i Thinkpad przestaje reagować na błędy trackpointa.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

mpd, czyli jak zacząłem słuchać muzyki za pomocą konsoli

Oto Music Player Daemon, demon do zadań muzycznych. Jak to diabeł, działa skutecznie, o ile dobrze go poinstruujemy. W połączeniu z pomniejszymi pomiotami może stanowić konkurencję większości wiodących programów do odtwarzania muzyki. Jego poważną zaletą jest mała zasobożerność - gdy schowa się w zakamarkach naszego systemu, przęciętny użytkownik nie zauważy spadku wydajności podczas odtwarzania.

Doprowadzamy demona do porządku

Z instalacją demona i podstawowego klienta nie powinno być problemu - znajduje się on w repozytoriach większości dystrybucji. Wybieramy ulubioną komendę naszego systemu do pobierania danych: urpmi mpd mpc. mpc to oczywiście Music Player Client.

Kolejnym krokiem jest skonfgurowanie demona tak, aby można było słuchać muzyki. Ogranicza się to do napisania własnej ścieżki do katalogu z muzyką (music_directory), oraz listami odtwarzania (playlist_directory). Następnie ustalamy zmienną filesystem_charset na UTF-8 lub ISO-8859-2. Teraz wystarczy tylko odkomentować odpowiednie opcje przy wyborze sterownika dźwięku i wykonać polecenie mpd --create-db.

Wskazówka: gdy nasze katalogi z muzyką są rozsiane w różnych miejscach, można stworzyć specjalnie przeznaczony dla mpd katalog z dolinkowaniami do tych miejsc. W ten sposób pozbędziemy się długaśnych ścieżek, a i skanowanie przebiegać będzie o wiele szybciej.

Tak przygotowanego demona (re)startujemy i od tej chwili możemy zacząć używać klienta.

Klient wygląda mniej więcej tak:
[dragonee@lilium bin]$ mpc play
Threemovements - Awaken
[playing] #1/6   0:00 (0%)
volume: 77%   repeat: off   random: off

Nieco kłopotliwe może wydać się zrobienie pierwszej własnej playlisty. Wystarczy jednak wykonać polecenie mpc ls, które wyświetli nam spis katalogów dostępnych w miejscu podanym jako music_directory. Teraz wybieramy sobie jakiś katalog i wykonujemy: mpc ls "Artist - Album" | mpc add, co doda nam wylistowane pliki do playlisty. Następnie za pomocą mpc save nazwa możemy zapisać tą listę odtwarzania, a mpc play rozpocznie jej odtwarzanie. Komend oczywiście jest mnóstwo - w celu poznania dalszej funkcjonalności zapraszam do mana.

O pomiocie biegającym z tytułami do last.fm

Zwie się on mpdscribble. Podobnie, jak mpc, jest klientem, jednak nie odtwarza piosenek, a tylko pobiera od demona wiadomości i wysyła je do last.fm. Możemy uruchamiać go ręcznie, ale czemu by nie zrzucić tej roboty na komputer?

Instalacja na dystemach debianowych i pod Fedorą jest najprostsza, bo z paczek, a pod Mandrivą trzeba kompilować. Nie ma zbyt wielu zależności, więc nie robi to aż takiego problemu.

Niestety - problem w tym, że nigdzie nie zauważyłem, by mpdscribble mógł się odpalać jako demon. Dzięki niezwykle prostemu programowi daemonize będziemy mogli zapewnić tą funkcję bez ingerowania w kod programu. Jego kod jest już nieco przestarzały i sami musimy się postarać o dodanie #include <stdlib.h> w pliku daemonize.c, lub o spatchowanie źródeł tą oto łatką. Wystarczy ściągnąć, rozpakować i skopiować łatkę do katalogu ze źródłem, a następnie nałożyć ją poleceniem patch -p1 <patch-daemonize-1.4.

Po poprawnej instalacji obu narzędzi, czas na to, co tygryski lubią najbardziej; grzebanie w skryptach startowych. W różnych dystrybucjach różnie one wyglądają, ale moja modyfikacja jest na tyle prosta, że nie powinna sprawić zbytnich problemów.

Fragmenty /etc/init.d/mpd:
Wewnątrz opcji start:
daemon mpd
daemon /usr/local/sbin/daemonize -c /tmp -u mpd /usr/local/bin/mpdscribble
RETVAL=$?
Wewnątrz opcji stop:
killproc mpd
killproc mpdscribble
RETVAL=$?
Wewnątrz opcji status:
status mpd
status mpdscribble
;;

Teraz mamy zapewnione uruchamianie mpdscribble razem z demonem mpd i jednocześnie pod jego użytkownikiem, czyli dwie pieczenie na jednym ogniu.

Pozostaje nam ostatnia sprawa - napisanie odpowiedniego pliku konfiguracji. Dla demona nie będzie zbrodnią podawanie konfiguracji w pliku /etc/mpdscribble.conf. Nie jest ona długa - wystarczy wpisać nazwę użytkownika username = user i hasło przepuszczone przez algorytm MD5 (password). Wypadałoby jeszcze utworzyć pliki /var/cache/mpdscribble.cache oraz /var/log/mpdscribble.log i nadać im odpowiednie uprawnienia dla użytkownika mpd.

Bo tych ciężkich bojach nasz player ładnie wspiera last.fm.

Demon w oknie

Chcę więcej. Zmienianie piosenek za pomocą konsoli jest bardzo przyjemne, ale przyzwyczaiłem się do amaroKa ze swoją ikonką w zasobniku systemowym. Czy istnieje jakaś rada dla mnie? Po chwili poszukiwań odkryłem rozmaite klienty mpd działające w konsoli, interaktywnie, za pomocą ncurses, czy przezaczone dla Qt i KDE. Można znaleźć nawet skrypty działające po http. Ich spis znajduje się na oficjalnej stronie klientów mpd.

Jako użytkownik KDE spróbowałem klienta kmp. Zalecam ostrożność, na stronie domowej wersja kmp była o wiele wyższa, niż ta, którą wymieniono w spisie. Instalacja wymaga dodania ścieżki do programów Qt (w moim przypadku /usr/lib/qt3/bin) do $PATH, jeśli się już tam nie znajduje.

Klient ten mnie zadowala, posiada całą funkcjonalność, której potrzebuję, by odtwarzać muzykę, oraz trayikonkę. Chociaż jego interfejs mógłby być nieco bardziej przemyślany, jest do wytrzymania. I nie zabiera zbyt wielu zasobów.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Bash na Windows

Bash na Windows

Bardzo przydatna rzecz, kiedy z przyzwyczajenia wklepując ls dowiadujemy się niespodziewanie, że dany program nie istnieje. Praca z konsolą Windows staje się wtedy o wiele przyjemniejsza.

Co nam potrzebne?

Wymagane.

Dodatki - nie są potrzebne, ale mogą być użyteczne.

Jak poskładać to wszystko razem?

Na początku instalujemy wszystkie wybrane przez nas pakiety z GnuWin32. Niczego nie trzeba zmieniać na tym etapie.

Kolejną rzeczą może być zainstalowanie Dev-Cpp, jeśli go potrzebujemy. Tu też nie ma się co martwić o miejsce instalacji - śmiało wybieramy domyślne.

Po przeczytaniu readme od basha, dowiadujemy się, że należy poczynić kilka kroków. Tak więc kopiujemy bash.exe i bash.dll do katalogu bin pakietu GnuWin32 (domyślnie C:\Program Files\GniWin32\bin). Teraz trzeba wstawić gdzieś .bashrc - dla Windowsów NT i wyższych, powinno się skopiować go do katalogu %UserProfile%, w 9x nie ma to znaczenia. Przydatnym wydaje się stworzenie katalogu C:\tmp, inaczej bash będzie wyrzucać ostrzeżenie podczas uruchamiania.

Na koniec - musimy dodać zmienną HOME (dla WinNT ustawiamy jako %UserProfile%, dla Win9x podajemy miejsce, gdzie leży nasz .bashrc) oraz PATH (dodajemy ścieżkę do katalogu bin instalacji GnuWin32 oraz Dev-Cpp). Dla 9x wpisujemy SET zmienna=ścieżka w autorun.bat (w przypadku PATH dopisujemy odpowiednie ścieżki zakończone średnikiem), w WinNT istnieje narzędzie (Mój Komputer -> Właściwości: System -> Zaawansowane -> Zmienne środowiskowe), przy czym HOME wpisujemy do zmiennych użytkownika.

Miłego użytkowania powłoki bash pod Windows. ;)

1 Sądzę, że tą wersję basha jest najłatwiej zainstalować. Oczywiście można wybrać każdą inną.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Chcę obejrzeć Cubic Tragedy

Wpis na blogu da.killi zawiera link do filmu niestety w hd. Więc należy go zeskalować. Na razie próbuję prostego polecenia, prawie całkowicie zerżniętego z mana. ;]

Polecenie:
$ mencoder *.mov -vf scale=640:360 -oac copy -ovc xvid -xvidencopts 
bitrate=600 -o dch2.mov

Chcę sprawdzić, jak bedzie to wyglądać, chociaż nie spodziewam się zbyt wysokiej jakości po takim bitrate. I oczywiście nie chodzi mi tylko o mój efekt, ale również o sztukę. :D

Na razie jest przy 200s, po kilku minutach. Ale filmik ten też nie ma zbyt dużej długości. No cóż, zobaczymy, czy się uda.

Apdejt: Na początku dźwięk zupełnie nie chciał działać. Ale znalazłem lepsze polecenie.

Ulepszone polecenie:
$ mencoder CUBIC*.mov -vf scale=640:360 -oac lavc -ovc xvid -xvidencopts 
bitrate=1000 -o dch3.mov

Wyszedł ładny pliczek - pięciokrotne zmniejszenie rozmiaru i nie tnie się, jak oryginał. ;]

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Use mtu

Q: Jak zmusić LAN do współpracy z Neo+?
A: ifconfig eth0 mtu 1492 na workstacjach.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Nudzi mi się

Serwer:
cat movie.avi | netcat -l -p 8888
Workstacja:
netcat 192.168.1.1 8888 | mplayer -
Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Bardzo małe czapy

Q: Co zrobić, kiedy Windows mówi, że nie chce się zainstalować, bo masz dziabniętą partycję?
A: Użyj fdisk.

Q: I co dalej?
A: Wkrótce. Już wkrótce.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane

Antipixel

Nigdy nie potrafiłem zapamiętać, jak zwą się te fajne przyciski, które są umieszczone po lewej stronie. Więc zapisuję tutaj.

Specyfikacja:
Styl - Antipixel;
Krój czcionki - Silkscreen, 8px, bez wygładzania,
	wyjątki: niemieszczący się tekst;
Rozmiary - 80x15;
Tło z ikoną/tekstem po lewej - 23x11;
Tło tekstu po prawej - 52x11;
Bordery: 2 x 1px, wewnętrzny często #fff, zewnętrzny #666,  
	wewnętrzny border rozdziela ikonę i tło;
Tekst zaczyna się trzy/cztery piksele od brzegu tła, wyjustowany do lewej 
	(poprawkę naniósł da.killa);
Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane
Na górę
Reklamy Google