Szum

piątek, 2 wrzesień 2005, w kategoriach: Inne

Zacznę trywialnie: Internet to medium. I to medium o tyle specyficzne, że dostępne dla każdego, kto tylko zechce w nim cokolwiek opublikować. Minus jest taki, że szerzy się w sieci mnóstwo bełkotu, bezwartościowej papki, w którą łatwo się wciągnąć, podobnie jak w przypadku tej serwowanej tłumowi w celu ogłupienia przez niektóre telewizję, stacje radiowe, gazety, książki. Daleki jestem od stwierdzeń w rodzaju “Internet to śmietnik”, szerzony przeważnie przez ludzi którzy nie są w używaniu sieci na tyle biegli, żeby znaleźć w nich poszukiwaną treść, chodzi po prostu o to, żeby niezależnie od medium stosować odpowiednią filtrację treści i ustalić jakieś sensowne ramy czasowe.

Potęga czystego tekstu

poniedziałek, 22 sierpień 2005, w kategoriach: Linux

Nie na darmo Dave Thomas w “Pragmatycznym Programiście” zatytułował tak jedną z sekcji. W plikach tekstowych jest coś magicznego, szczególnie mając pod ręką potężny edytor jak Emacs czy JEdit i zestaw unixowych narzędzi w rodzaju grepa, seda, awk, finda itp.

Osobiście, najważniejsze w całym systemie są dla mnie dwa pliki, ~/txt/todo i ~/txt/notes. W pierwszym trzymam najważniejsze rzeczy: listy z GTD, “przypominacze”, najświeższe pomysły, a w drugim najróżniejsze notatki: fragmenty kodu, które zapominam, a które często są mi potrzebne, polecenia shella, skrótky klawiszowe emacsa, najważniejsze zapiski z książek które czytałem/czytam (inaczej wartościowe pomysły z nich zaczerpnięte szybko uciekają) itp. itd.

Dlaczego Ruby?

niedziela, 14 sierpień 2005, w kategoriach: Programowanie, Ruby

Jak napisałem w “powitalnym” wpisie, uwielbiam programować w Rubym. Dlaczego? Co czyni ten praktycznie nieznany w Polsce język programowania unikalnym? Oto moje ulubione cechy:

1. Prawdziwa obiektowość. W Rubym nie ma typów prymitywnych, wszystko jest obiektem. Można więc napisać: (0.8).round albo: “cos”.upcase. Nawet nil (”nic”) jest instancją klasy. Jednocześnie nie oznacza to, jak w Javie, konieczności zadeklarowania przynajmniej jednej klasy. Jeśli więc chcemy, możemy programować w stylu proceduralnym, tyle, że w gruncie rzeczy, “za kurtyną” i tak kod ten staję się wnętrzem klasy.

2. Możliwość rozszerzania języka. Do każdej klasy, zarówno napisanej przez nas jak i tej będącej częścią biblioteki standardowej możemy dodać metody, składowe, lub nadpisać te już istniejące. Stwarza to możliwość programowania “bottom-up”, czyli dostosowania języka do wykonywanego zadania.

3. Narzędzia. Dodatkowe narzędzia Ruby’ego są niesamowite. Mamy więc Rake’a, czyli program do budowy skryptów ala Makefile, tyle że w czystym rubym, mamy ruby-gems, pozwalające na instalację za pomocą jednego polecenia dowolnej potrzebnej biblioteki czy pakietu dla Ruby’ego, mamy też “w standardzie” rozbudowany framework do pisania testów modułowych. Dostajemy też interaktywny interpreter i przeglądarka dokumentacji “ri”, przypominająca np. perldoc.

GTD - linki

czwartek, 11 sierpień 2005, w kategoriach: Getting Things Done

http://www.davidco.com - David Allen i jego firma, a zarazem oficjalna strona Getting Things Done

http://www.amazon.com/exec/obidos/tg/detail/-/0142000280?v=glance - “Getting Things Done” na amazon.com

http://www.43folders.com - Jeden z największych i najciekawszych “portali” GTD w sieci.

http://www.fastcompany.com - Inna duża strona GTDowa, z bardziej “korporacyjnym” zacięciem

http://groups-beta.google.com/group/43Folders - Lista mailingowa o GTD, via Google Groups

http://www.lifehacker.com - Setki cennych porad o “hackowaniu” życia, cześć związana z GTD, cześć nie, ale wszystko bardzo wartościowe i ciekawe.

http://www.lifehack.org - Jak wyżej.

http://www.stevepavlina.com - Najbardziej chyba znany blog o samorozwoju.

Niepełny manifest rozwoju

sobota, 6 sierpień 2005, w kategoriach: Tłumaczenia

Oryginalna wersja autorstwa Bruce Mau Design Inc., do zobaczenia tutaj.


Napisany w 1998 roku manifest jest wyrazem postulatów stanowiących wierzenia, strategie i motywację Bruce’a Mau. Obrazuje także sposób, w jaki działa studio BMD.

1. Zmieniaj się pod wpływem wydarzeń. Musisz chcieć się rozwijać. Rozwój to nie jest coś, co ci się przydarza. Ty go tworzysz. Ty nim żyjesz. Predyspozycje do rozwoju: otwartość na doświadczanie zdarzeń i chęć zmiany na ich skutek.

2. Zapomnij o dobrze. Dobro jest znaną wartością. Dobro to jest to na co się wszyscy zgadzamy. Rozwój niekoniecznie jest dobrem. Rozwój jest poszukiwaniem ciemnych zakmarków które mogą, ale nie muszą być przydatne w naszych badaniach.

3. Proces jest ważniejszy niż wynik. Kiedy wynik kieruje procesem dojdziemy tylko tam, gdzie już byliśmy. Jeśli proces steruje wynikiem nie wiemy dokąd zmierzamy, ale wiemy, że chcemy tam dojść.

4. Kochaj swoje eksperymenty (tak jak kochałbyś swoje brzydkie dziecko). Radość jest motorem rozwoju. Wykorzystuj wolność przedstawiania swojej pracy jako pięknych eksperymentów, iteracji, prób i błędów. Spójrz na to z dystansu i pozwól sobie na radość nieudolności każdego dnia.

5. Wgłębiaj się. Im bardziej się wgłębaisz, tym prędzej odkryjesz coś wartościowego.

6. Chwytaj przypadki. Zła odpowiedź jest dobrą odpowiedzią w poszukiwaniu innego pytania. Zbieraj złe odpowiedzi jako część procesu. Zadawaj inne pytania.

GTD - wprowadzenie, część 3

czwartek, 4 sierpień 2005, w kategoriach: Getting Things Done

Zgodnie z zapowiedziami w części trzeciej zajmiemy się szczegółami implementacji GTD - słowem koniec z teorią, bierzemy się do pracy.

Podstawowy problem to wybór miejsca, w którym będziemy trzymać nasze listy z pierwszego odcinka. I od razu pierwszy dylemat, który musimy rozstrzygnąć - papier czy komputer. Generalnie, żeby przechowywanie list na komputerze miało sens trzeba przy nim spędzać naprawdę dużo (większość?) czasu. Może się to więc sprawdzić u grafików, programistów, części pracowników biurowych itp. Jeśli jednak komputera używamy rzadziej, wtedy konieczne będą rozwiązania papierowe - zgodnie z zasadą “czystego umysłu” chcemy przecież jak najszybciej przerzucić wszelkie kołatające się po głowie myśli do naszego systemu, w związku z czym musimy go mieć zawsze pod ręką.

GTD - wprowadzenie, część 2

wtorek, 2 sierpień 2005, w kategoriach: Getting Things Done

W pierwszej części tego artykułu zajeliśmy się czterema listami, “rdzeniem” Getting Things Done. Jest to jednak tylko fragment całego systemu, część “pętli” przetwarzania informacji.

Pętla ta składa się z 5 czynności:

Zbierz - Tym zajeliśmy się w pierwszym odcinku, ale tylko w odniesieniu do rzeczy, które zaprzątają naszą głowę, tymczasem najzupełniej fizyczne przedmioty, względem których musimy wykonać jakąś akcję, także muszą zostać zebrane. Rozmaite papiery, notatki, listy (w sensie poczty) David Allen proponuje trzymać w “skrzynce odbiorczej”, czyli w jakimkolwiek wygodnym pojemniku który będzie na tyle duży żeby je pomieścić i jednocześnie na tyle mały żeby stać gdzieś pod ręką na biurku. Przykłady: tu i tu.

GTD - wprowadzenie, część 1

sobota, 30 lipiec 2005, w kategoriach: Getting Things Done, Lifehacks

Od czasu do czasu na tym blogu będzie się przewijał skrót GTD. Co to jest? GTD, od “Getting Things Done”, to zestaw technik mający na celu ułatwić nam “zmuszanie” się do pracy i zwiększyć naszą produktywność. Może nie jesteś zadowolony ze swoich ocen, może twój pracodawca nie jest zadowolony z ciebie, może chcesz robić coś konstruktywnego zamiast obijać się, ale nie potrafisz się do tego zabrać, a może po prostu chcesz być troche bardziej twórczy. Jeśli przytaknąłeś gdzieś po drodze, to znaczy że GTD może ci się przydać.

“Getting Things Done” to także tytuł książki, którą napisał David Allen, w której opisał on te właśnie techniki. Ten Pan jest więc zasadniczo twórcą całego tego systemu, jednak, jak to zwykle bywa, wraz ze wzrostem popularności książki ludzie zaczeli wprowadzać własne modyfikacje, ulepszenia (przynajmniej w opinii ich autorów) i wersje (np. dla uczniów).