Con l'approssimarsi del mio quarantatreesimo genetliaco, ho pensato di dedicarmi un po' al tema dei compleanni.
Un'idea che mi era stata proposta diverso tempo fa: dal momento che nella rubrica c'era già la possibilità di registrare le date di nascita, rendere possibile generare da quelle, in modo automatico, le ricorrenze dei compleanni, nell'agenda.
Però in modo permanente, senza cioè bisogno di dover ripetere l'operazione ogni anno.
Ero quindi rimasto in attesa che la persona che aveva fatto questa proposta ne scrivesse il progetto, per potermi dedicare a realizzarlo. L'attesa sembrava destinata a durare perennemente.
Fortunatamente, è recentemente subentrata un'altra persona che, avendo avuto, indipendentemente dalla prima, la stessa idea, nel giro di pochi giorni ha scritto un ottimo progetto.
E di chi poteva trattarsi, se non della nostra Anna, che ben conosciamo per i suoi cruciverba che pubblica sotto il nome di "Alfa64", e per le sue ricette di cucina?
E così Anna ancora una volta si riconferma un'ottima collaboratrice. E ha ancora delle altre idee che bollono in pentola, e che nei prossimi mesi saranno realizzate.
Se continuerà così, bisognerà cambiare il nome al programma e chiamarlo "WinAnna".
Torniamo ai compleanni: ho quindi realizzato il progetto di Anna, integrandolo con qualche idea in più che mi è stata data da Antonio De Angelis, il noto cruciverbista.
I punti fondamentali sono questi: nell'agenda, è stato aggiunto, oltre ad Appuntamento, Scadenza e Annotazione, un nuovo tipo: "Ricorrenza".
Una ricorrenza funziona in modo simile ad una scadenza, da cui però differisce perché non si considera mai eseguita, ma si ripete periodicamente in modo illimitato.
Una scadenza, invece, è caratterizzata da una data ben precisa, con tanto di giorno, mese, ed anno: trascorsa quella data, la scadenza è terminata.
Si possono immettere tre tipi di ricorrenze: settimanali, mensili e annuali.
Le ricorrenze settimanali, sono caratterizzate da uno o più giorni della settimana in cui si ripetono. Ad esempio: ogni lunedì e giovedì, andare in palestra.
Le ricorrenze mensili sono caratterizzate da uno o più giorni del mese in cui si ripetono.
Ad esempio: il 10 di ogni mese, pagare le quote del condominio.
Le ricorrenze annuali sono caratterizzate da una data espressa come giorno e mese, ma senza specificare l'anno perché si ripetono di anno in anno. Come, appunto, i compleanni.
Anche per le ricorrenze, è possibile impostare un preavviso, di modo che, ad ogni avvio di WinGuido, si venga avvertiti se è imminente la ripetizione di una ricorrenza.
Altri cambiamenti riguardano la rubrica: innanzi tutto, diventa possibile registrarvi le date di nascita anche senza conoscere l'anno.
Supponiamo di ricordare, di una certa persona, che in un certo giorno di un certo mese compie gli anni, ma di non sapere l'anno di nascita esatto: basterà lasciarlo vuoto, e limitarsi a immettere giorno e mese.
Una volta immessa la data di nascita, con o senza anno, apposite funzioni locali permettono, sia in fase di immissione che di consultazione della rubrica, di generare automaticamente, nell'agenda, la ricorrenza annuale relativa al compleanno. Vale a dire: ogni anno si potrà essere avvertiti quando si approssima il compleanno di quella persona, senza rischiare di dimenticarsene.
Questa operazione può essere svolta anche per più nominativi contemporaneamente, dopo averli selezionati dai vari menù della rubrica.
Inoltre, c'è una nuova voce nel menù di configurazione della rubrica. Quella voce è: "Compleanni".
Permette di scegliere se attivare, o no, la generazione automatica delle ricorrenze.
Attivandola, ogni volta che in rubrica si registra una data di nascita, la generazione della ricorrenza relativa al compleanno avviene automaticamente, senza più bisogno di dare nessun comando.
L'attivazione di quella opzione agisce anche su tutte le date di nascita già registrate prima che venisse attivata, generandone le ricorrenze dei compleanni.
In fase di consultazione dei dati della rubrica, è stata introdotta anche una funzione locale che permette di cercare l'onomastico in base al nome e, se trovato, di generare anche per quello una ricorrenza annuale.
Un'osservazione personale: ho realizzato queste funzionalità perché mi sono state chieste, e perché Anna ne ha scritto il progetto, ma spero che non se ne abusi per non sminuire troppo il valore degli auguri di compleanno.
Voglio dire che il ricevere, in occasione del mio compleanno, gli auguri, per me deve essere l'espressione di qualcuno che si è ricordato di me e mi ha pensato.
Va bene, cioè, ricordarsi anche solo approssimativamente che il mio compleanno ricade in autunno, quindi verso fine settembre di ogni anno andare a guardare, nella rubrica, quale sia la data esatta, e quindi segnarsi la scadenza nell'agenda: già così subentra una componente personale. Ma se tutto diventa automatico, come faccio a sapere quale valore hanno gli auguri che ricevo? Come faccio a sapere se a ricordarsi di me è stata una persona, o un computer?
Altrimenti tanto varrebbe portare le cose alle estreme conseguenze, e realizzare anche una funzione che, all'approssimarsi dei compleanni, automaticamente generi e invii i messaggi di posta elettronica con gli auguri.
E a questo punto, si potrebbe completare l'opera, facendo in modo che quando si ricevono messaggi di questo tipo automaticamente sia generata e inviata la risposta con i ringraziamenti.
Tutto questo, quale valore avrebbe?