Monthly Archive for gennaio, 2009

Destino ?

Si dice, o per lo meno qualcuno ci crede, che il nostro destino sia già stato scritto e bollato molto tempo fa da un qualche essere/entità superiore.

Francamente le mie idee sono quanto di più lontano possa esistere da questa concezione finalistica, eppure è da un po’ che mi chiedo se non ci sia davvero qualcuno lassù, per altro con uno strano senso del’umorismo, a manovrare le fila della marionetta che state leggendo.

Ma andiamo con ordine.

1998: Al termine delle scuole medie, e delle relative lezioni di educazione artistica, abbandonai del tutto (o quasi) matite e pennelli, una delle mie più grandi passioni, per lasciarmi trasportare dall’impulso del momento. In effetti non sono mai stato un tipo che riflette granchè prima di fare o non fare qualcosa. E se questo è vero oggi potete ben immaginare quanto potesse esserlo allora.

In realtà non ho mai davvero abbandonato le mie “velleità artistiche”, semplicemente, nella mia superficialità di ragazzino spensierato, non ho mai saputo dare il giusto peso alle cose.

E così il tempo passa, la vita continua, ogni tanto qualche disegnino qua e la, e nel frattempo mi limito a buttar giù di continuo appunti, bozze e idee per il futuro… Una quantità talmente grande che francamente ora come ora non so davvero come fare a gestire (cavolo 10 anni son davvero tanti).

2008: Tutta una serie di strane coincidenze e vicende si accavallano in uno strettissimo lasso di tempo stravolgendo totalmente quello status quo che consideravo forse destinato a durare in eterno… o, per meglio dire, sul quale non ho mai riflettuto.

Tra progetti andati a male e mille altre cose che non starò qui a spiegare, in estate torna a galla lo strano desiderio di riprendere seriamente in mano la matita (e soprattutto la penna) e cominciare a riordinare un po’ le idee sul da farsi. Ma dopotutto resta pur sempre qualcosa di vago e proiettato sempre ad un lontano (e meno caotico) futuro.

Qualche mese dopo però, non ricordo bene come, nasce una interessante discussione con GiO e, a dispetto di ogni mia aspettativa, l’interesse per questa ritrovata passione subisce una incredibile impennata ritrovandomi di fatto immerso in un mondo di cui prima forse nemmeno sapevo l’esistenza. In pratica è stato come portare per la prima volta un bambino al Luna Park. :lol:

Ma per la regola del piano inclinato la pallina non può far altro che continuare a rotolare via via sempre più veloce. Ed ecco dunque spuntar fuori una nuova scoperta: Bakuman.

Bakuman nella mia mente malata e contorta rappresenta un vero lampo a ciel (quasi) sereno. Non soltanto è un manga molto intrigante e coinvolgente, ma fin dal primo capitolo non mi ci è voluto molto per entrare “in sintonia” con il protagonista. Diciamo che è come aver rivisto me “con più palle”. :roll: E la cosa non ha fatto altro che incentivarmi e farmi impegnare ancora di più, oltre al fatto che grazie a questo mi sono per di più avvicinato a quel mondo dei manga che avevo sempre evitato preferendogli le più note versioni animate.

Ma come detto la pallina può soltanto accelerare ed eccomi quindi coinvolto in breve tempo in discussioni con amici e conoscenti in qualche modo del campo, e ad “incontrare” sulla mia strada il buon Federico DiStefano che con il suo aiuto non ha fatto altro che assecondare un pazzo :lol: .

Ma questo forse non era ancora abbastanza ed ecco dunque che stamattina, di ritorno dall’università, un’amica fermatasi un attimo in edicola torna da me con l’ultima trovata della DeAgostini per gli aspiranti mangaka. Nulla di particolarmente nuovo in realtà per il sottoscritto ma la cosa, ed il sorriso con cui lo ha fatto, mi ha davvero fatto pensare.

Che sia davvero un ulteriore segno di un piano superiore? … Beh se è così fatemi un favore lassù: mettiamo tutti le carte in tavola e non limitiamoci a lanciare messaggi sibilinni OK? :lol: (anzi se possibile servirebbe una tavoletta grafica).

PS
Non mi pare che tu legga il blog ma te lo scrivo anche qui: Grazie Sara, ho davvero apprezzato non solo il gesto ma anche come l’hai fatto. ;)

PPS
Quei fascicoli saranno anche una cavolata ma almeno il materiale è utile. Federico ho la matita blu per i bozzetti (credo) come la tua. :mrgreen:

Aggiungere Web Mail provider in Opera 10

Attenzione: il procedimento descritto nell’articolo fa riferimento ad una funzionalità ancora in lavorazione che pertanto potrebbe subire modifiche anche sostanziali in un prossimo futuro.

Nell’articolo precedente abbiamo visto come le ultime build di Opera 10 siano in grado di gestire le Web Mail come client di posta predefinito e vi avevo anticipato che, qualora il vostro provider non fosse fra quelli disponibili, sarebbe stato comunque possibilie aggiungerlo manualmente. Vediamo quindi come aggiungere il nostro provider.

Innanzitutto localizziamo il file webmailproviders.ini che si trova nella cartella \defaults della directory di Opera. Questo contiene la lista di tutti i servizi disponibili nella forma seguente:

[Gmail]
ID=1
URL=https://mail.google.com/mail/?extsrc=mailto&url=%s
ICON=http://mail.google.com/favicon.ico

I meno smaliziati si chiederanno probabilmente cosa significhino esattamente queste stringhe e come usarle.

  • La prima riga indica il nome del provider che verrà visualizzato nel programma. Trattandosi di un file .ini ovviamente è necessario racchiudere il nome fra parentesi quadre.
  • ID indentifica in modo univoco il servizio. E’ necessario usare una numerazione progressiva per i vari servizi.
  • URL è l’indirizzo usato dal provider per gestire il protocollo mailto attraverso la web mail. “%s” è la parte variabile che verrà di volta in volta sostituita con i dati del link mailto che cliccherete (indirizzo, oggetto, ecc…).
    Attualmente sono permessi anche URL Data e Javascript.
  • Icon infine indica il percorso della favicon della web mail.

Alla luce di tutto ciò appare quindi evidente che per poter aggiungere il nostro servizio di posta è necessario conoscere l’indirizzo dell’handler mailto (URL).

Purtroppo però non tutti i provider hanno tale caratteristica, ma possono ugualmente compilare i vari campi automaticamente specificandoli con variabili separate, anzichè con la sola “%s”, secondo questo schema:

  • %t = il destinatario
  • %s = l’oggetto
  • %m = il corpo del messaggio
  • %c = CC’d recipients
  • %b = BCC’d recipients.

Per rendere meglio l’idea analizziamo quindi come dovrebbe essere modificato l’URL nel caso di Gmail:

"http://mail.google.com/mail/?view=cm&fs=1&to=%t&su=%s&body=%m&cc=%c&bcc=%b"

Ancora una volta però i problemi non mancano in quanto, almeno per il momento, Opera non è ancora in grado di gestire questo tipo di URL e bisogna prima trasfromarli in un Data o Javascript URL come nell’esempio seguente:

[Operamail.com]
ID=4
URL=javascript:(function(uri)%7B%0D%0Afunction%20decode(s)%7Btry%7Breturn%20decodeURIComponent(s).replace(%2F%5Cr%5Cn%7C%5Cr%7C%5Cn%2Fg%2C%22%5Cr%5Cn%22)%3B%7Dcatch(e)%7Breturn%20%22Opera%20percent-decode%20error%22%3B%7D%7D%0D%0Afunction%20encode(s)%7Btry%7Breturn%20encodeURIComponent(s)%3B%7Dcatch(e)%7Breturn%20%22Opera%2520percent-encode%2520error%22%3B%7D%7D%0D%0Afunction%20escapeInvalidHH(s)%7Breturn%20s.replace(%2F%25(%3F!%5B0-9A-F%5D%7B2%7D)%2Fgi%2Cfunction()%7Breturn%20%22%2525%22%3B%7D)%3B%7D%0D%0Afunction%20escapeUnsafeHH(s)%7Breturn%20s.replace(%2F%2500%7C%2501%7C%2502%7C%2503%7C%2504%7C%2505%7C%2506%7C%2507%7C%2508%7C%250B%7C%250C%7C%250E%7C%250F%7C%2510%7C%2511%7C%2512%7C%2513%7C%2514%7C%2515%7C%2516%7C%2517%7C%2518%7C%2519%7C%251A%7C%251B%7C%251C%7C%251D%7C%251E%7C%251F%2Fgi%2Cfunction(match)%7Breturn%20encode(match)%3B%7D)%3B%7D%0D%0Afunction%20filterSingleLine(s)%7Breturn%20s.replace(%2F%5Cr%7C%5Cn%2Fg%2C%22%22)%3B%7D%0D%0Afunction%20MailtoURIParser(s)%7Bthis.parse(escapeUnsafeHH(escapeInvalidHH(%22to%3D%22%2Buri.substr(7).replace(%2F%5C%3F%2F%2C%22%26%22))))%3B%7D%0D%0AMailtoURIParser.prototype%3D%7Bparse%3Afunction(dataset)%7Bthis.to%3Dthis.subject%3Dthis.body%3Dthis.cc%3Dthis.bcc%3D%22%22%3Bvar%20ref%3Dthis%3Bdataset.replace(%2F(%5B%5E%3D%26%5D%2B)%3D(%5B%5E%26%5D*)%2Fg%2Cfunction(match%2Chname%2Chvalue)%7Bhname%3Ddecode(hname).toLowerCase()%3Bif(hname%3D%3D%22to%22)%7Bif(hvalue!%3D%22%22)%7Bif(ref.to!%3D%22%22)%7Bref.to%2B%3D%22%252C%2520%22%3B%7Dref.to%2B%3Dhvalue%3B%7D%7Delse%20if(hname%3D%3D%22cc%22)%7Bif(hvalue!%3D%22%22)%7Bif(ref.cc!%3D%22%22)%7Bref.cc%2B%3D%22%252C%2520%22%3B%7Dref.cc%2B%3Dhvalue%3B%7D%7Delse%20if(hname%3D%3D%22bcc%22)%7Bif(hvalue!%3D%22%22)%7Bif(ref.bcc!%3D%22%22)%7Bref.bcc%2B%3D%22%252C%2520%22%3B%7Dref.bcc%2B%3Dhvalue%3B%7D%7Delse%20if(hname%3D%3D%22subject%22)%7Bref.subject%3Dhvalue%3B%7Delse%20if(hname%3D%3D%22body%22)%7Bif(!(hvalue%3D%3D%22%22%26%26ref.body%3D%3D%22%22))%7Bif(ref.body!%3D%22%22)%7Bref.body%2B%3D%22%250D%250A%22%3B%7Dref.body%2B%3Dhvalue%3B%7D%7D%7D)%3Bthis.to%3Dencode(filterSingleLine(decode(this.to)))%3Bthis.subject%3Dencode(filterSingleLine(decode(this.subject)))%3Bthis.body%3Dencode(decode(this.body))%3Bthis.cc%3Dencode(filterSingleLine(decode(this.cc)))%3Bthis.bcc%3Dencode(filterSingleLine(decode(this.bcc)))%3B%7D%2Cformat%3Afunction(s)%7Bvar%20ref%3Dthis%3Breturn%20s.replace(%2F(%25%25)%7C(%25T)%7C(%25S)%7C(%25M)%7C(%25C)%7C(%25B)%7C(%25w)%2Fg%2Cfunction(match%2Ca%2Cb%2Cc%2Cd%2Ce%2Cf%2Cg)%7Bif(a)return%20%22%25%22%3Bif(b)return%20ref.to%3Bif(c)return%20ref.subject%3Bif(d)return%20ref.body%3Bif(e)return%20ref.cc%3Bif(f)return%20ref.bcc%3Bif(g)return%20encode(%22mailto%3A%22%2Bref.to%2B%22%3Fsubject%3D%22%2Bref.subject%2B%22%26body%3D%22%2Bref.body%2B%22%26cc%3D%22%2Bref.cc%2B%22%26bcc%3D%22%2Bref.bcc)%3B%7D)%3B%7D%7D%3B%0D%0Aif(uri.search(%2Fmailto%3A%2Fi)!%3D0)%7Bthrow%20%22Not%20a%20MailtoURI%22%3B%7D%0D%0Avar%20parser%3Dnew%20MailtoURIParser(uri)%3B%0D%0Avar%20compose%3Dparser.format(%22http%3A%2F%2Fmymail.operamail.com%2Fscripts%2Fmail%2FOutblaze.mail%3Fcompose%3D1%26did%3D1%26a%3D1%26to%3D%25T%26subject%3D%25S%26body%3D%25M%26cc%3D%25C%26bcc%3D%25B%22)%3B%0D%0Avar%20a%3Ddocument.createElementNS(%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%22%2C%22a%22)%3Ba.href%3Dcompose%3Ba.click()%3B%0D%0A%7D)(%22%s%22)%3B
ICON=http://www.opera.com/favicon.ico

Chiaramente si tratta di una procedura non alla portata di tutti e che, si spera, presto non sarà più necessaria. Ma se nel frattempo volete cominciare a sperimentare nessuno potrà impedirvelo. ;)

Opera 10 si integrerà con le Web Mail

A dispetto di ogni mia previsione o aspettativa, il Desktop Team pare abbia finalmente accolto, seppure in modo ancora parziale, le numerose richieste dei suoi utenti riguardo un sostanziale miglioramento e potenziamento della gestione della posta in Opera 10.

Se con la prima alpha della prossima major release, Opera Mail (questo il nuovo nome di M2) aveva infatti introdotto il tanto desiderato supporto alla composizione in formato html e svariate migliorie volte a semplificare la vita dell’utente, con l’ultima weekly build si è voluto fare un ulteriore passo proprio in quest’ultima direzione aggiungendo il supporto nativo ai servizi Web Mail.

Ciò significa che sarà ora possibile, come del resto avviene già da tempo in Firefox 3, usare come client di posta predefinito direttamente l’interfaccia web di servizi come Gmail, Yahoo! Mail, e Windows Live Hotmail, anzichè dover ricorrere al protocollo POP3 o IMAP.

Tradotto in termini ancora più semplici, vi basterà adesso cliccare su un collegamento mailto: per aprire la pagina di composizione della vostra web mail, con tanto di campi come destinatario o oggetto eventualmente già compilati come nell’esempio sottostante:

Link

Una bella comodità per chi preferisce le sempre più evolute interfaccie ajax ai classici client desktop.

Per i maggiori providers il tutto avverrà in maniera trasparente senza che sia necessaria alcuna configurazione manuale da parte dell’utente. Al primo click su un collegamento mailto verrà semplicemente chiesto se si intende usare il client email predefinito di sistema, il client integrato in Opera, oppure una delle Web Mail supportate.

Tuttavia è ancora presto per poter testare a dovere questa nuova funzionalità.

Attualmente gli unici providers supportati sono infatti Gmail, Yahoo! Mail e Windows Live Hotmail, e, peraltro, gli ultimi due necessitano una versione recente del browser.js, senza contare che Yahoo continua a non funzionare come dovrebbe limitandosi ad aprire la finestra di benvenuto anzichè quella di composizione.

E’ ancora in corso una discussione fra gli sviluppatori se sia preferibile permettere ai providers di aggiungersi alla lista in modo automatico secondo le specifiche del WHATWG oppure procedere in proprio.

Sia come sia poco importa. Ciò che conta è aver finalmente colmato anche questa lacuna. E se il vostro provider non figura fra quelli disponibili non preoccupatevi, sarà sempre possibile aggiungerlo manualmente. Ma per questo vi do appuntamento alla prossima. ;)

Best of Week (+/-) #2

Settimana ricca di avvenimenti quella appena trascorsa. Indeciso su cosa inserire e cosa far fuori ho quindi pensato di tirare dritto (magari con la speranza di scriverci qualche articolo) e restare su link forse più utili e/o interessanti. ;)

Kabu - Dragonball TG

Kabu - Dragonball TG

Ecco la playlist della settimana:

Alla prossima. Enjoy ;)

Web standards curriculum in italiano

Qualche mese fa, parlando della straordinaria iniziativa di casa Opera per la formazione di web developer rispettosi degli standard web, accennavo anche al fatto che, essendo stata la guida rilasciata sotto una licenza Creative Common molto flessibile, ne sarebbe stato possibile (oltre che auspicabile) la localizzazione nelle più svariate lingue.

Fortunatamente non sono stato l’unico ad averlo notato e ad oggi alcuni volenterosi utenti della rete si sono già messi all’opera per portare il Web Standard Curriculum in alcune delle principali lingue, fra cui anche l’italiano.

Per la nostra adorata lingua di Dante pare essersi impegnato un utente esterno alla community di My Opera, Giuseppe aka floyd1616, che ha deciso di ospitare le traduzioni sul suo sito personale. Benchè avrei auspicato di vederle raccolte su un portale come OperaZone poco importa, ciò che conta è che comunque ci siano.

Al momento i lavori sono ancora in fase iniziale e sono state tradotti due soli tutorial introduttivi, ma sembra che ben presto l’intera documentazione dovrebbe essere pienamente fruibile.

Augurando buon lavoro a Giuseppe non ci resta che attendere (o cominciare a studiare) ;) .

Links:

Opera Web Standards Curriculum
Opera Web Standards Curriculum in italiano
Indice traduzioni disponibili