white noise | tag/gtd /blog//tag/gtd.html white noise another little app for a gtd system /blog//post/another_little_app_for_a_gtd_system.html /blog//post/another_little_app_for_a_gtd_system.html devel gtd perl unix Sun, 18 Nov 2007 14:00:51 +0100 Gtd

Feeling really comfortable with my outline based gtd system, I decided to go one step further. I have a bunch of cards, one for each project I'm working on, so I looked for a nice way to managed them. Some kind of interface that helps me browse, filter and edit the cards.

I haven't found anything suitable on the net, so I decided to go my way and code a little helper from scratch. The result is a cards browser with some filtering capabilities; it is project oriented rather than action oriented, simply because that's how I feel comfortable in managing my tasks.

Information, a screenshot and download links can be found on my personal web site.

]]>
timer /blog//post/timer.html /blog//post/timer.html geek gtd tools Wed, 16 Aug 2006 14:10:31 +0200 Sono ormai da molto tempo un felice iscritto al club del "distraiti e rimanda", vuoi per una naturale incapacità a concentrarmi sulle piccole cose, vuoi perchè le mie attività sono spesso interrotte da telefonate di vario genere. Considerando poi che la maggior parte delle mie attività professionali e personali si svolge usando un pc, anche il numero di altre distrazioni è elevatissimo (ah... il multitasking).

Mentre la cosa non ha praticamente impatto quando devo gestire compiti lunghi o complessi, ogni volta che mi trovo a gestire cose che si fanno in meno di cinque minuti la cosa più frequente che finisco per fare è rimandarle. Evidentemente la mia capacità di concentrazione nel brevissimo periodo fa schifo.

Per cercare di ovviare a questa situazione, e per cercare di riportare le mie todo list ad una lunghezza umana, ho deciso di dotarmi di un timer. Impostare slot temporali definiti sta dando ottimi risultati.

Ho cercato abbastanza a lungo un software che fosse semplice e fosse adeguato alle mie esigenze. osdclock è apparso la scelta migliore. Si tratta di un orologio che si piazza in uno degli angoli del desktop e rimane sempre in primo piano. Inoltre ha la simpatica funzione di accettare un ritardo prima di visualizzarsi. Posso lavorare tranquillo e senza distrazioni su di una cosa fino al momento in cui l'ora mi compare, in caratteri cubitali rossi, nell'angolo inferiore destro del mio monitor.

Ho costruito anche un piccolo wrapper che mi consente di lanciare osdclock con tutte le opzioni necessarie, specificando anche il ritardo che desidero.

Eccolo qui:

#!/bin/bash
if [ "$#" != '1' ]
then
        echo "usage: $0 <delay>"
        exit 1;
fi
TIME=$1
/usr/bin/killall osd_clock
/usr/bin/osd_clock -s 0 -f -*-courier-bold-r-normal-*-18-180-75-75-*-110-iso8859-1 -r -w $TIME &
exit 0;

Nota bene: se non usate Linux ma altre varianti di Unix, potreste dover sostituire killall con il comando equivalente appropriato per il vostro sistema.

]]>
outline e gtd /blog//post/outline_e_gtd.html /blog//post/outline_e_gtd.html geek gtd Fri, 14 Jul 2006 19:30:52 +0200 Per lavoro e per piacere mi trovo molto spesso a gestire progetti e attività da svolgere al computer. Essendo il mio lavoro, ed i miei interessi informatici, abbastanza eterogenei, ho iniziato a sentire il bisogno di maneggiare le mie lunghissime liste di cose da fare i maniera efficiente e comoda. Non sono un fanatico della produttività estrema, ma ho notato che i margini di miglioramento nel mio caso erano ampi.

Qualche tempo fa ho letto il libro di David Allen "Getting Things Done" e ne ho tratto diversi spunti interessanti. In particolare, la gestione delle cose senza priorità e il raggruppamento delle attività in liste a tema.

Gli strumenti

Per mettere in pratica alcuni dei consigli elencato nel libro di cui sopra, il primo passo è stato quello di individuare degli strumenti consoni alle mie necessità ed al mio modo di operare. Se fate una breve ricerca in rete, troverete tonnellate di sistemi preconfezionati che si ispirano più o meno fedelmente a GTD... L'utilizzo di uno strumento omni comprensivo è una possibilità molto accattivante (avevo inizialmente pensato di adattarne qualcuno o di scriverne uno ex-novo), tuttavia ho preferito orientarmi verso qualcosa che non mi vincolasse ad una piattaforma particolare, o meglio, ad un computer particolare.

Cosa meglio di un editor di testo?

Il formato testo ha il vantaggio di poter essere modificato ovunque, anche da remoto, ed ogni sistema che ho utilizzato ha almeno un editor di testo incluso nell'installazione standard (mi rendo conto che ciò che ho appena detto può sembrare ovvio, ma siccome incontro ancora persone che credono che i file in formato Microsoft Word siano uno standard...).

Convenzioni

Le cose da fare sono raggruppate in file; un file per progetto o per contesto (ad esempio, nel file sourceforge.otl ho raccolto tutto quello che devo fare quando sono collegato ai server di sourceforge.net). Non sono abituato a ragionare in modo troppo schematico, quindi avere le cose organizzate in questo modo mi torna molto utile.

I singoli file sono di fatto degli outline, con le azioni disposte in modo gerarchico per poter individuare facilmente l'ordine delle attività e le loro dipendenze. Suggerisco a cui utilizza Vim come editor di testo il plugin TVO; è molto comodo.

Non utilizzo priorità in modo diffuso, tuttavia mi torna molto comodo evidenziare le cose da fare urgentemente e quelle che, per un qualche motivo, sono in sospeso. Uso i seguenti tag da premettere all'azione:

  • (U): cosa urgente
  • (H): cosa in sospeso
  • | : commento/nota

ovviamente l'elenco si può estendere e personalizzare a piacimento.

Gestire le azioni

Uno dei suggerimenti del libro di David Allen è quello di prendere la prima azione di ciascun progetto e farla, oppure processare le azioni di un particolare contesto una dopo l'altra finchè se ne ha la possibilità. Non amo questo approccio... lo trovo un po' dispersivo. Preferisco scegliere un progetto e lavorarci sopra finchè ne ho voglia (o necessità).

Utilizzare dei file di testo strutturati come outline, e delle etichette da abbinare alle azioni quando si desidera, rende molto facile automatizzare il processo di gestione ed adattarlo alle proprie necessità.

Questo frammento di codice permette di elencare il numero di azioni per ogni file:

for file in ~/gtd/*.otl;
do
    printf "%-20s: %3d\n" $(basename $file .otl)
        $(cat $file | perl -ne "next if /^\W*(\|)/; print" | wc -l);
done

(è stato indentato per chiarezza ma va scritto tutto su una riga. Funziona con la shell bash di Unix).

Se conoscente almeno un po' un qualsiasi linguaggio di programmazione estendere quanto sopra è facilissimo. E gestire le vostre cose da fare molto più rilassante.

]]>