tag:blogger.com,1999:blog-69649365175940526082024-03-05T21:27:44.070-08:00More+Il mondo visto con gli occhi di un programmatoreMore+http://www.blogger.com/profile/14667825027749674006noreply@blogger.comBlogger60125tag:blogger.com,1999:blog-6964936517594052608.post-8839329543043882892013-11-06T02:07:00.000-08:002013-11-06T02:08:15.189-08:00Il richiamo dei quaranta<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf4SoaCyTN4Eyx3QaU6x9pESwjzYSjcYXL9X8mGW4DDTXykzzRAy-qkHo6emkD6holKKFfJM3n2hOS6Ung2HkBYl0bpZzgco2fX-bUmR1jkmodZJe8XQv9IMvNTzjMJO2Hu45M9QO1KqU/s1600/sfondo_vaccinodeiquaranta.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="147" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf4SoaCyTN4Eyx3QaU6x9pESwjzYSjcYXL9X8mGW4DDTXykzzRAy-qkHo6emkD6holKKFfJM3n2hOS6Ung2HkBYl0bpZzgco2fX-bUmR1jkmodZJe8XQv9IMvNTzjMJO2Hu45M9QO1KqU/s400/sfondo_vaccinodeiquaranta.jpg" width="400" /></a></div>
<br />
Amici, parenti, amanti, figli, compagni, colleghi, conoscenti e altro ancora sono le tante cerchie cresciute assieme a te come in un social network e con le quali hai condiviso la tua vita. Eppure quando compi quarant’anni sei consapevole che non li potrai spartire con nessuno, perché sono tutti individualmente ed esclusivamente tuoi.<br />
<a name='more'></a><br />
Il compimento dei quarant’anni è un pietra miliare per l’uomo. Se per una donna la crescita biologica è segnata da identificabili tappe (menarca, ciclo fertile, climaterio e menopausa), per l’uomo invece non c’è alcun segno tangibile, quindi spesso si ritrova a dover assimilare il concetto di vecchiaia in modo inconsapevole, improvviso e talvolta traumatico, manifestando così la famigerata “crisi di mezza età”. L’unica certezza che abbiamo è che al compimento del quarantesimo anno ci viene issata sopra la testa questa spada di Damocle, senza però che ci sia dato di sapere quanto è sottile il crine che la regge.<br />
Le cose si complicano. Una volta la crisi del maschio si riconosceva da una chiara sintomatologia: relazioni con donne molto più giovani, l’acquisto di moto o auto sportive, il rinnovo del look e una fine cura del proprio aspetto. Oggi, invece, questi sono rimpiazzati da nuovi sintomi, quali gli sport estremi e qualsiasi manifestazione goliardica e dissennata. Insomma, l’assunzione di adrenalina anziché l’illusione di una carica inesauribile di testosterone.<br />
Quindi non spaventatevi se scoprite che vostro marito anziché flirtare con qualche giovane donna, disegnarsi le sopracciglia quando è fermo ai semafori e possedere una roadster nel capanno del giardino, litiga in chat con dei ragazzini per le prodezze di Miley Cyrus, si è iscritto a un corso di parkour durante la pausa pranzo ed è diventato membro di un gruppo di nerd, battezzandosi con un ridicolo nickname rigorosamente italo-anglosassone, come <i>The Big Bigolo</i>.<br />
<br />
<h3>
Il vaccino “homopatico” per la crisi di mezza età</h3>
Essendo un uomo a cui non piace aspettare una sintomatologia che magari non riuscirò nemmeno a discernere, ho avuto la brillante idea di vaccinarmi al compimento del mio quarantesimo compleanno, inoculandomi una volontaria e organizzata crisi di mezza età. <br />
Ebbene, sono prossimo alla soglia degli “anta” ma devo ancora formulare il vaccino. Ho soltanto un anno di tempo per riuscire in questa grande impresa, pertanto, per arricchire il mio studio con tutto lo scibile umano, vi invito a raccontarmi le vostre esperienze, i vostri suggerimenti ed eventuali vaccini che avete testato o semplicemente gli esiti a cui avete avuto modo di assistere.<br />
Come supporto a questa ricerca ho creato la pagina <a href="https://www.facebook.com/vaccinodeiquaranta">https://www.facebook.com/vaccinodeiquaranta</a>.<br />
Ci tengo a sottolineare che questa ricerca quasi scientifica è cruelty-free, in quanto non si avvarrà di animali per i test, ma userà unicamente cavie umane.<br />
<br />More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-89029215785947603902013-05-27T15:19:00.000-07:002013-05-29T06:20:58.917-07:00Debianizzati Summer Summit 2013, codename: “sfigatto”<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPvyke5k-aaOowszU44QLSsWhQ_B4SQhIinQpp7QKtaSbEpfAbkJNH7tVBsIErneaW8IGPfJshppJSgtcK2apjbhqRbmB0JMS6PXoO6eg8VN-QFyOMi-dRqAiruy1ltjIBVHh5O-OvZF0/s1600/sfigatto.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="297" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPvyke5k-aaOowszU44QLSsWhQ_B4SQhIinQpp7QKtaSbEpfAbkJNH7tVBsIErneaW8IGPfJshppJSgtcK2apjbhqRbmB0JMS6PXoO6eg8VN-QFyOMi-dRqAiruy1ltjIBVHh5O-OvZF0/s400/sfigatto.jpg" width="400" /></a></div>
<br />
Non mi sono mai definito un nerd o geek e tantomeno non ho mai partecipato a un qualunque
evento che contemplasse di esserlo per accedervi. Tuttavia vi
confesso che da sempre mi assilla il pensiero: “ma che cavolo
(versione edulcorata della reale espressione usata) si fa a un
ritrovo di nerd?” E se a ciò si aggiunge la stravaganza di un
“Summer Summit” organizzato in Primavera, era inevitabile che non
potessi mancare a questo evento.
<br />
<a name='more'></a><br />
<br />
<div style="margin-bottom: 0cm;">
“<i>Non c'è ADSL, non c'è telefono,
non c'è campo, non c'è elettricità... . Il ritrovo è in una casa
di montagna. Se non porti PC, prolunghe con multiprese, cavi
Ethernet, switch, hub usb, ponti radio e micro pannelli fotovoltaici
per alimentare ciascun single core sei uno sfigatto</i>”.</div>
<div style="margin-bottom: 0cm;">
Questa l'email in circolare di invito
per il<span style="font-weight: normal;"> Debianizzati Summer Summit
edizione 2013<span style="color: blue;"><sup>1</sup></span>.</span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCWDwI9NUvqXTx4xIR3DplAAnDVjpdZGk9e5YQbaGibIJYVDwVEIYP8DCVZdH7DvPb6pHfLSOpqtVm5mJmfRxxbFpzdYhUhYDc154KE6IGp9AdM8LIvc-K55MbM9LPI0QPXCdHGZwtjh4/s1600/dss2013_bed.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCWDwI9NUvqXTx4xIR3DplAAnDVjpdZGk9e5YQbaGibIJYVDwVEIYP8DCVZdH7DvPb6pHfLSOpqtVm5mJmfRxxbFpzdYhUhYDc154KE6IGp9AdM8LIvc-K55MbM9LPI0QPXCdHGZwtjh4/s320/dss2013_bed.jpg" width="320" /></a></div>
<div style="text-align: center;">
<span style="font-weight: normal;"><i>Foto: la camerata per la notte, fortunatamente mi ero portato il sacco a pelo </i></span><br />
<br /></div>
</div>
<div style="margin-bottom: 0cm;">
<span style="font-weight: normal;">Ricevuto
l'invito, ho “replyato” l'email chiedendo se potevo essere uno
sfigatto<span style="color: blue;"><sup>2</sup></span> limitandomi a portare un liquore alla genziana fatto in
casa. Ovviamente sì. </span><i><span style="font-weight: normal;">PerTosse</span></i><span style="font-weight: normal;">
ha portato i carciofi, </span><i><span style="font-weight: normal;">JeepPass</span></i><span style="font-weight: normal;">
una piastra elettrica a induzione, </span><i><span style="font-weight: normal;">BarbaBarba</span></i><span style="font-weight: normal;">
l'intero costato di un qualche quadrupede per la grigliata... .</span></div>
<div style="margin-bottom: 0cm;">
<span style="font-weight: normal;">Ed
ecco che la presenza di soli </span><i><span style="font-weight: normal;">sfigatti</span></i><span style="font-weight: normal;">
ha battezzato il codename (molto ubuntiano<span style="color: blue;"><sup>3</sup></span>) dell'evento, classico
esempio di “</span><i><span style="color: black;"><span style="background: transparent;">Reverse
Engineering</span></span></i><span style="color: black;"><span style="font-weight: normal;"><span style="background: transparent;">”</span></span></span><span style="font-weight: normal;">
(</span><i><span style="font-weight: normal;">ndr</span></i><span style="font-weight: normal;">,
solo alla stesura di questo mio “resoconto-fantasy” mi è sorto il sospetto
che </span><i><span style="font-weight: normal;">sfigatto</span></i><span style="font-weight: normal;">
potesse essere semplicemente un errore di stompa nel testo
dell'invito).</span></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
250 km per scoprire se sono a tutti gli effetti un nerd e, soprattutto, che
cavolo si fa a un ritrovo di nerd. Chilometri in cui penso che non
indosso t-shirt, bermuda e scarpe da jogging, che nel mio lato oscuro
uso tranquillamente anche altri sistemi operativi e, infine, che
qualcuno potrebbe farmi domande a cui non saprei rispondere, come
qual è la differenza tra Dash e Bash? (il primo è un detersivo, il
secondo ...azz, sarà un ammorbidente!?). Strada che percorro mentre
viaggio negli stereotipi di questi raduni.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
Una strada percorsa da altri prima di me. Giusto 24 ore prima. Infatti, la brama
per l'evento, quasi annuale (segue la filosofia Debian: non ha
cadenza regolare, si fa quando è pronto), è tale che alcuni
partecipanti sono arrivati così in anticipo che hanno stazionato la
notte prima nel parcheggio del ritrovo. Si riconoscono facilmente
perché uno ha il security glass code del finestrino tatuato sulla
guancia e l'altro il pomello del cambio in bassorilievo nella milza
(ben visibile anche senza radiografia).</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
L'evento, strutturato in organizzatissime sessioni, ha inevitabilmente raccolto
i più famosi guru del panorama digitale. In questi frangenti le
parole per riuscire a continuare la descrizione diventano povere,
misere, inconsistenti, inutili. Vederli tutti riuniti lì è stato...</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
e subito dopo mi
sono detto “ma che cavolo (versione edulcorata della reale
espressione usata) si fa a un ritrovo di guru?”<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnWbfghyphenhyphen_K5Kmw8rOj234HOeV9dy1Sh4XBcpAkHE1p7hrjV5FDrx331Vvr3qciEUnlrjBQI5vUr5R4SEDQzQ3505FJDgGSoLp8XUCe6AdYxn5N9zVA3wsToPV8dh6CHeVJrL0d2YTzAv4/s1600/dss2013_nerd.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="213" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnWbfghyphenhyphen_K5Kmw8rOj234HOeV9dy1Sh4XBcpAkHE1p7hrjV5FDrx331Vvr3qciEUnlrjBQI5vUr5R4SEDQzQ3505FJDgGSoLp8XUCe6AdYxn5N9zVA3wsToPV8dh6CHeVJrL0d2YTzAv4/s320/dss2013_nerd.jpg" width="320" /></a></div>
<div style="text-align: center;">
<i>Foto: la tavolata dei Guru. Vederli tutti riuniti lì è... </i></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<h3>
Velocità di boot</h3>
<div style="font-weight: normal; margin-bottom: 0cm;">
È risaputo: non c'è appassionato che non smanetti sul proprio PC per avere un
sistema che faccia il boot nel minor tempo possibile. Qualche secondo
guadagnato può trasformasi nell'agognato successo atteso da circa
365 giorni.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
Chiunque è
disposto a togliere servizi, funzionalità e quant'altro pur di
primeggiare in quest'esibizione.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
Al mio arrivo, i
Notebook erano stesi sul tavolo tra energy drink, caffè ed energy
drink, caffè. Tutti con il dito sul tasto di accensione e lo sguardo
da killer.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
Appena dopo
l'accensione, alla schermata di “<span style="background: transparent;">sistema
operativo mancante</span>” <i>Tolomeo</i> ha urlato: “boot
finito”. Si è aggiudicato la vittoria e il nostro rispetto. È
stata una grande lezione, abbiamo capito che, tra tutti i tips &
tricks, il non installare alcun sistema operativo risulta essere la
soluzione più performante per un computer.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<i>BarbaBarba</i>,
si aggiudica il secondo posto con un ambiente ultra light: così
minimalista che può usare il notebook unicamente come cornice
digitale per il wallpaper. Dopo 165 secondi e aver mangiato i
carciofi cucinati sulla griglia da <i>PerTosse</i>, abbiamo visto
comparire lo splash screen del window manager sul suo notebook. Nel
frattempo abbiamo messo la moka del caffè sul fornello. Bevuto il
caffé. Corretto la tazzina con il liquore alla genziana. Preparata
un'altra moka. Ed ecco apparire l'agognato wallpaper sul desktop di
<i>BarbaBarba</i> che gli fa vincere il secondo posto sui due
partecipanti alla competizione. In conferenza stampa, <i>BarbaBarba</i>
ha dichiarato che avrebbe potuto far meglio se non fosse stato per un
servizio non ben identificato (<a href="http://www.cups.org/"><i>cups</i></a>), probabilmente usato da
sistemi embedded come per le lavastoviglie, che gli ha rallentato il boot
del sistema.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhulOYoCwZR4-HmPUIpr5Kbtbe1tr6gYrsmlA05xRQ0VBxZuZ0qNXDF2I3_7xSgDtPaIuTfVAb9LdlEUzIaV3jfZhgk-mAImnyg497k2FO17D7Go2PCekuymTE7IMDWAFHI1Rm7ZRgvPHI/s1600/dss2013_carciofi.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhulOYoCwZR4-HmPUIpr5Kbtbe1tr6gYrsmlA05xRQ0VBxZuZ0qNXDF2I3_7xSgDtPaIuTfVAb9LdlEUzIaV3jfZhgk-mAImnyg497k2FO17D7Go2PCekuymTE7IMDWAFHI1Rm7ZRgvPHI/s320/dss2013_carciofi.jpg" width="320" /></a></div>
<div style="text-align: center;">
<i>Foto: i carciofi alla brace cucinati da perTosse</i></div>
</div>
<h3>
Sicurezza</h3>
<div style="font-weight: normal; margin-bottom: 0cm;">
Dopo la velocità,
<span style="background: transparent;">nell'incipit </span>del nerd
primeggia la sicurezza del proprio computer. Pertanto, dopo la
spossante attesa per vedere tutti i notebook terminare la
competizione di velocità, ecco una sessione dove gli invitati
sottopongono il proprio PC a dei test di penetrazione da parte degli
altri.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
Nel frattempo
<i>BrrNikita</i> mostra un machete, ma all'unanimità viene bocciato
quel tipo di penetration test suite e placcato lui, senza
approfondire se l'intento di <i>BrrNikita</i> volesse essere quello.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<i>JeepPass</i>
utilizza <a href="http://www.nongnu.org/ratpoison/">Ratpoison</a> come window manager e per sbloccare lo schermo
preme una sua combinazione segreta di tasti: <i>ctrl+alt+QWERTYUIOP</i>
tutti contemporaneamente. Nessuno di noi è riuscito a violare il suo
PC, solo lui che ha il 49 di piede.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
BarbaBarba,
invece, ha creato uno script che gli cambia la password con un
algoritmo randomico ogni volta che si accede al suo PC per effettuare
il login. Nessuno è riuscito a penetrare il suo computer, nemmeno
lui da quando ha installato questo script.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<div class="separator" style="clear: both; text-align: center;">
<a href="http://www.nongnu.org/ratpoison/shot2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="http://www.nongnu.org/ratpoison/shot2.png" width="320" /></a></div>
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm; text-align: center;">
<i>Foto: il "classico" e user friendly desktop di Ratpoison (...sicuramente più chiaro di <a href="http://en.wikipedia.org/wiki/Windows_8">Metro</a>)</i></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<h3>
“Toolkit”: equipaggiamento</h3>
<div style="font-weight: normal; margin-bottom: 0cm;">
Eh, sì, il
corredo nella borsa del notebook è indubbiamente una forma per
esibire in modo inequivocabile la skill del proprietario. Quindi, è
stata allestita un'apposita sessione da red carpet.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<i>JeepPass</i> ha
sfilato portando un cavo HDMI con schermatura finemente tessuta in<span style="background: transparent;">
“seta ceramica con ioni d'argento” </span>firmata Richard Ginori.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<i>BarbaBarba</i>
ha sfilato fuori il suo notebook da 17”, il rialzo inclinato,
l'alimentatore da 3,3 Kw, e, dal kit del suo baule, anche il tavolo
<span style="background: transparent;">Ingartop</span> di IKEA
completo di chiavi e istruzioni per il montaggio, oltre a una sedia
di legno massello con la seduta in <span style="background: transparent;">paglia
di Vienna</span>... tutto a corredo del suo “portatile”.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUZM4i4Lotx2KqeLVyJJyc4igX8fotqLUCpYWe6VDaKLYCj_an7hVfuWvM5OLeSlrtv9qCwZWmNdtw3UJKwCWTLMzbVzze9rk-4e3c-3kDAKz5JFUpfP0fiIpymfIjo13U6wnrHhTgsPU/s1600/DSS_computercar.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="206" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUZM4i4Lotx2KqeLVyJJyc4igX8fotqLUCpYWe6VDaKLYCj_an7hVfuWvM5OLeSlrtv9qCwZWmNdtw3UJKwCWTLMzbVzze9rk-4e3c-3kDAKz5JFUpfP0fiIpymfIjo13U6wnrHhTgsPU/s320/DSS_computercar.jpg" width="320" /></a></div>
<div style="text-align: center;">
<i>Foto: un esempio di mobilità del portatile di BarbaBarba</i></div>
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<h3>
Non solo PC</h3>
<div style="font-weight: normal; margin-bottom: 0cm;">
Già, un vero nerd
non si limita al solo PC, adora smanettare su qualsiasi oggetto che
contiene un processore.
</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<i>BarbaBarba</i>
ha voluto mostrare, tramite collegamento SSH, il suo<span style="background: transparent;">
<a href="http://www.raspberrypi.org/">Raspberry Pi</a> lasciato</span> accesso sulla scrivania di casa.
Purtroppo ha dovuto rinunciare in quanto non è riuscito a effettuare
il login al suo notebook a causa del ferreo script di sicurezza.</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<i>JeepPass</i><span style="font-style: normal;">,
invece, ha esibito una piastra cubica (Zotac) con una cover simil
vetro ceramica. Sui lati ci sono porte USB, HMDI, Ethernet, 1 x
204-pin SO-DIMM</span><span style="font-style: normal;"><span style="background: transparent;">…
. </span></span><span style="font-style: normal;">Nessuno ha capito
l'utilizzo di quelle porte, ma tutti abbiamo chiesto a </span><i>PerTosse</i><span style="font-style: normal;">
di preparare la moka del caffè da metterci sopra.</span></div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
Purtroppo il caffè non è venuto e le cause possono essere solo due:
o la moka non era adatta a un fornello elettrico a induzione, oppure
quella piastra non è un fornelletto elettrico. Al prossimo DSS
dissolveranno questo dubbio.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGVu6dB8OXYui8Kl7_9sQDz1X3C9ofriIBpzDbL7bajuLnfznG3geduv-FHqrSUkcG1ECfNH2o3NkiJ1f7nugqbhdgNwse4zE2muhNhyphenhyphenBohAjxmFC49yaeF022pR4q8kBIAz34aIGp8so/s1600/Zotac-Mini-PC-Computer-Manufacturer-From-China.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="227" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGVu6dB8OXYui8Kl7_9sQDz1X3C9ofriIBpzDbL7bajuLnfznG3geduv-FHqrSUkcG1ECfNH2o3NkiJ1f7nugqbhdgNwse4zE2muhNhyphenhyphenBohAjxmFC49yaeF022pR4q8kBIAz34aIGp8so/s320/Zotac-Mini-PC-Computer-Manufacturer-From-China.jpg" width="320" /></a></div>
<div style="text-align: center;">
<i>Foto: la "piastra" della <a href="http://www.zotac.com/products/mini-pcs/zbox-nano-series/product/zbox-nano-series/category/mini-pcs/main-category/mini-pcs.html">Zotac</a> con cui non siamo riusciti a fare il caffè</i></div>
</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<h3>
Hacker in azione</h3>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
Come qualsiasi evento cult di questo tipo, non è mancata una
sessione per le esibizioni hacker dei partecipanti.</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<i>Tolomeo</i> ci ha sorpreso "craccando" con estrema facilità la
licenza di Linux: ha distribuito ai presenti i binari del kernel
ricompilati da lui senza rilasciare i sorgenti.</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<i>BrrNikita</i>, invece, ha craccato una bottiglia di Barbera
rimuovendo l'etichetta originale e incollando, al suo posto, un'altra
con il logo di Debian.
</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
Tutti gli altri, invece, si sono limitati a violare la bottiglia di
vino sfruttando una falla nota nel tappo (con un trojan "cavatappi" si stappa).</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPT6J7kfGoSqvPYPF353bBx2GYksYMj6mMcLX9yQ4eATFj_tFEnd6wayKaaY8Wfo1fhxZ2nlHC8M71esxXYpIj8umO_AafbAkwpytyLVOSlxSwliYLe8UNpqoAGl79x-Wo9QCDFbt4i5o/s1600/dss2013_vino.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPT6J7kfGoSqvPYPF353bBx2GYksYMj6mMcLX9yQ4eATFj_tFEnd6wayKaaY8Wfo1fhxZ2nlHC8M71esxXYpIj8umO_AafbAkwpytyLVOSlxSwliYLe8UNpqoAGl79x-Wo9QCDFbt4i5o/s320/dss2013_vino.jpg" width="239" /></a></div>
<div style="text-align: center;">
<i>Foto: il vino "craccato" da BrrNikita</i></div>
<br /></div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
<br /></div>
<h3>
Conclusione</h3>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
Non crederete che quello che ho scritto fin qui corrisponda alla
realtà? Escludendo gli aneddoti più coloriti, che sono ovviamente
veri (neanche con la più fervida immaginazione avrei potuto pensare
simili cose), l'intero articolo è frutto di luoghi comuni, di cui
Internet ne è il più grande divulgatore, che nei 250 km di viaggio
ho mesciuto assieme ai dubbi e alla musica degli<span style="background: transparent;">
The Offspring per togliermi quel velo di granitica maturità
sedimentata dalla quotidianità e inadatto a un incontro tra <a href="http://www.mediamarketingservice.com/2010/04/08/cosa-significa-geek-nerd-e-dork/">nerd, geek, dork</a></span>.
</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
La catarsi del viaggio ha edificato in me l'evento e le persone prima
che io ci arrivassi. La curiosità o smania di dare una forma,
concretizzare ed etichettare un qualcosa che finora era relegato a un
mondo parallelo e virtuale è insensata quanto lo sono i luoghi
comuni. Perché non c'è niente di più concreto, benché
inconsistente e privo di forma ed etichetta, quanto l'empatia
nell'amicizia.</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
Una stretta di mano e una risata valgono tutti i chilometri di
strada. Non c'è bit che possa competere.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRra7zOEEkzlYTLJUmvAfRJTOp_ivTaNnFJNpPZDoh-hfN2QDhAtYmE_NfZaNUL271l2oioa1UhoxzeGElO-CRe-SphuSGzVN3eqAyqVzbcW4rYtiOaHaw6KG3v7y6eNQc80RXTusfm3Y/s1600/dss2013_birra.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="94" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRra7zOEEkzlYTLJUmvAfRJTOp_ivTaNnFJNpPZDoh-hfN2QDhAtYmE_NfZaNUL271l2oioa1UhoxzeGElO-CRe-SphuSGzVN3eqAyqVzbcW4rYtiOaHaw6KG3v7y6eNQc80RXTusfm3Y/s320/dss2013_birra.jpg" title="Birra per spegnere l'arsura della griglia" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQhNytlrE-bmR_NNzJHQqFYVuIXmm161oI7rtX5Y7A8ZU6AwZX0g74ywlDoaXKcSb_Xe9dyoBs_vTfCtCaOGNUlC0U2WbGKsweQHCtTJJXU9gjnjz26qCRTYBCT8Soh08n1Xs2k7ZvI9U/s1600/dss2013_pasta.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="94" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQhNytlrE-bmR_NNzJHQqFYVuIXmm161oI7rtX5Y7A8ZU6AwZX0g74ywlDoaXKcSb_Xe9dyoBs_vTfCtCaOGNUlC0U2WbGKsweQHCtTJJXU9gjnjz26qCRTYBCT8Soh08n1Xs2k7ZvI9U/s320/dss2013_pasta.jpg" title="Famoci du' spaghi!" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgABiGPxxahhb7aG3xMStlo3ZqNCkg4Jbr7g0MTc04pNdGu9dVhZJcFPlkxEPB2hOfK9S7Uskheo1n19S1aZkxa6cGpw_1j_7Gsx-uZgGZUmD4tgNGO4e-eXbqFdHbeakoeP40slu-TBFo/s1600/dss2013_grigliata.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="94" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgABiGPxxahhb7aG3xMStlo3ZqNCkg4Jbr7g0MTc04pNdGu9dVhZJcFPlkxEPB2hOfK9S7Uskheo1n19S1aZkxa6cGpw_1j_7Gsx-uZgGZUmD4tgNGO4e-eXbqFdHbeakoeP40slu-TBFo/s320/dss2013_grigliata.jpg" title="Peperoni transgenici" width="320" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtB7NLM-UZTYXDGyr3YsN6BR-apjFivd5DhxR5T6sSRU8kldUpDtGcsomzkESvrtNCRWrok8pX4oJdGDp-lbIkF54JIXraN481ZEO3403S3aMNoFfz02vTfrOdWJORY6EH0XDrxTypGYU/s1600/dss2013_piscio_o_no.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="94" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtB7NLM-UZTYXDGyr3YsN6BR-apjFivd5DhxR5T6sSRU8kldUpDtGcsomzkESvrtNCRWrok8pX4oJdGDp-lbIkF54JIXraN481ZEO3403S3aMNoFfz02vTfrOdWJORY6EH0XDrxTypGYU/s320/dss2013_piscio_o_no.jpg" title="Piscio, oppure no?" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipztmIEBNDJYdp7Y04AW0xf3WG0B36r29A3cfcBj2-nUZGl9XQ1ouySYEKjiN91eyiniaEFwMYzE3ZLOep8SIU8hwslvNuS7Aan89nFi2S7kx6_m7fOab5vmGBFoaX63asXKQJNU-HBJo/s1600/dss2013_caffe.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="94" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipztmIEBNDJYdp7Y04AW0xf3WG0B36r29A3cfcBj2-nUZGl9XQ1ouySYEKjiN91eyiniaEFwMYzE3ZLOep8SIU8hwslvNuS7Aan89nFi2S7kx6_m7fOab5vmGBFoaX63asXKQJNU-HBJo/s320/dss2013_caffe.jpg" title="Una tazzuriella di caffè" width="320" /></a></div>
</div>
<div style="font-style: normal; font-weight: normal; margin-bottom: 0cm;">
</div>
<div style="font-weight: normal; margin-bottom: 0cm;">
<div style="text-align: center;">
<i>Foto: il DSS 2013 raccontato a strisce</i></div>
<br /></div>
<div style="font-weight: normal; margin-bottom: 0cm;">
“Ma che cavolo
(versione edulcorata della reale espressione usata) si fa a un
ritrovo di nerd?” Beh, in un prossimo non definito evento otterrò
una risposta a questo mio dubbio, nel frattempo ho dissolto<span style="color: red;">
</span>l'altro mio quesito: Nerd? No, non ancora, per adesso sono
solo uno <i>sfigatto</i>!<br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjL_qukvRMOkynytrHyr1jbzpOK1dMqeaX03XJR7hSEfm2Wlu9WaH1_F-6LjUxcjRD4qX_E31bKAjIqHojSxH8X8IYCoF5O2KWFYGsyMNqHBCY3_n0lsxhSV22OcVnZWyOkUevgKVVVbaE/s1600/dss2013_vespa.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjL_qukvRMOkynytrHyr1jbzpOK1dMqeaX03XJR7hSEfm2Wlu9WaH1_F-6LjUxcjRD4qX_E31bKAjIqHojSxH8X8IYCoF5O2KWFYGsyMNqHBCY3_n0lsxhSV22OcVnZWyOkUevgKVVVbaE/s320/dss2013_vespa.jpg" width="133" /></a></div>
<div style="text-align: center;">
<i> Foto: il guru delle API se ne va in Vespa... arrivederci al prossimo DSS</i></div>
<br /></div>
<h4>
<span style="font-size: x-small;"> </span></h4>
<h4>
<span style="font-size: x-small;">Note</span></h4>
<span style="color: blue; font-size: x-small;"><sup>1</sup></span><span style="font-size: x-small;"> l'evento, non ufficiale, è stato organizzato da appassionati della distro <a href="http://www.debian.org/">GNU/Linux Debian</a> de<br />lla comunità <a href="http://www.debianizzati.org/">Debianizzati</a></span><br />
<span style="color: blue; font-size: x-small;"><sup>2</sup></span><span style="font-size: x-small;"> <i>sfigatto</i>
è quel gatto nero che quando attraversa la strada tutti si toccano gli zebedei.</span><br />
<span style="color: blue; font-size: x-small;"><sup>3</sup></span><span style="font-size: x-small;"> i </span><span style="font-size: x-small; font-weight: normal;">codename</span><span style="font-size: x-small;">
dei rilasci di Ubuntu Linux hanno la caratteristica di assumere nomi
di <a href="https://wiki.ubuntu.com/DevelopmentCodeNames">strani animali</a></span>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com6tag:blogger.com,1999:blog-6964936517594052608.post-44394697593762934572012-11-23T13:51:00.000-08:002012-11-23T14:03:47.158-08:00Upgrade: il click emozionale<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6Ltmp1qdMXpy2W8gVFM31hrkL8WSe_xeEprkmWPmGVpi2RfAiAk0MMEc2YxfltnhVL0mLlvsaKKr_Wuikgoc25L60t9pXxc-TjmXG-xYMtBBYkpSMEIoyBsYtcrYkZElNWxl_eYemCBA/s1600/click_upgrade.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="302" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6Ltmp1qdMXpy2W8gVFM31hrkL8WSe_xeEprkmWPmGVpi2RfAiAk0MMEc2YxfltnhVL0mLlvsaKKr_Wuikgoc25L60t9pXxc-TjmXG-xYMtBBYkpSMEIoyBsYtcrYkZElNWxl_eYemCBA/s400/click_upgrade.jpg" width="400" /></a></div>
<br />
Upgrade, upgrade, upgrade... la cultura degli upgrade ci fa
sentire con la coscienza a posto e il computer efficiente (senza la D
iniziale, o forse no?). Il click rapido e quasi furtivo sulla parola <i>upgrade</i>
inebria l'utente di un'emozione pari quanto
l'acquisto di una nuova autovettura: nuovo comfort, nuove features, nuovo
design...
<br />
Tuttavia, allo stesso modo di come grandi marche automobilistiche
riescono, o almeno ci provano, a rifilarci slogan di “auto
ecologica” per dei prodotti dotati di motore a combustione dei
derivati fossili, dietro la parola “upgrade” alcune volte si cela
un downgrade delle funzionalità.<br />
<br />
<a name='more'></a><br />
<br />
Per necessità, sul mio notebook domestico, ho installato <a href="http://www.vmware.com/products/player/overview.html">VMware Player</a> per gestire degli ambiente virtualizzati; l'altro
giorno, dopo aver visto il messaggio di upgrade, upgrade, upgrade...
new release, new release, new release... available now... now, now!
Ho fatto il trepidante click emozionale sulla parola <i>upgrade</i>.<br />
L'aggiornamento consisteva nel migrare dalla release 5.0.0 alla 5.0.1; un "numerillo" così piccolo e insignificante quasi da farmi ignorare la buona prassi di leggere il <a href="http://www.vmware.com/support/player50/doc/player-501-release-notes.html">changelog</a>, e in effetti, nel mio caso, non aveva proprio nulla che
potesse motivare realmente un upgrade, ma, sapete com'è? si
spera sempre di aver qualcosa di meglio e se a gratis ancor meglio.<br />
Dopo l'upgrade, non pago del primo click emozionale, ho eseguito
anche l'upgrade di <a href="http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=340">vmware-tools</a>, per aggiornare anche gli "interni" (piccolo pacchetto pelle, control cruise, navigatore, ecc.) che con la release precedente non
avevo fatto.<br />
<br />
<h3>
</h3>
<h3 class="western">
VMware, non è che stai facendo del mobbing per
farmi licenziare?<i> </i></h3>
<div class="western">
<i>Licenziare nell'accezione di “dare in licenza”. Ho questa
sensazione, come se volessero impoverire il prodotto, buono anche
per i professionisti, per far migrare parte dell'utenza alla versione a pagamento. Spero di sbagliarmi.</i></div>
<br />
<br />
<br />
La prima palese scoperta dopo l'upgrade è stata un'oscena e
prepotente scritta sul titolo della finestra: “<i>Non-commercial use
only</i>”. Fastidioso come un dito puntato alla fronte, mi chiedo: a
cosa serve? Indurmi a fare delle riflessioni ogni volta che avvio la
macchina virtuale (devo scrivere un'email di lavoro: quest'utilizzo
sarà inteso ancora come a scopo non commerciale?) oppure a umiliarmi mostrando a
tutti che sono un utilizzatore di serie B?<br />
No VMware, questo non basta per farmi desiderare l'acquisto di una licenza per la
<a href="http://store.vmware.com/store/vmwde/en_IE/buy/productID.166452200">versione enterprise</a>.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilIIbYO0nz9HPaRibTMdFZ986fg7Qag-aUHzividd4fXT_iTVUOzXtyKtZxVn0iQq3Zs6diUm-6uroCoIZhPTcZlAm0cuYUMqnTCcxtzGhgcXlwY-GFvlOrrtJsYnBi3XoblNrGJ0ZQbI/s1600/VMware0.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="112" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilIIbYO0nz9HPaRibTMdFZ986fg7Qag-aUHzividd4fXT_iTVUOzXtyKtZxVn0iQq3Zs6diUm-6uroCoIZhPTcZlAm0cuYUMqnTCcxtzGhgcXlwY-GFvlOrrtJsYnBi3XoblNrGJ0ZQbI/s640/VMware0.jpg" width="640" /></a></div>
<br />
<br />
<br />
Poco dopo, scopro che cliccando in basso su vmware-tools si
apre soltanto la finestra di about. E tutto il resto dov'è finito? <br />
<br />
<br />
Solo per una ragione ho sempre preferito VMware Player all'altra
ottima alternativa per uso Desktop per gli utenti Linux, <a href="https://www.virtualbox.org/">Virtualbox</a>: la
funzione di <i>shrink disk</i> (compressione del disco) disponibile
semplicemente con un click dalla dialog di vmware-tools.<br />
Ebbene è tutto sparito. Nel forum di VMware <a href="http://communities.vmware.com/message/2015577#2015577">qualcuno dice</a> che le
funzionalità (chissà se tutte) verranno reintegrate direttamente
nelle VMware Settings in un futuro (non meglio precisato).<br />
<blockquote class="tr_bq">
“<i>The window for vmware-tools is removed now. Related
functionalities will be integrated into VM settings later”</i></blockquote>
<br />
Sono liberi di fare quello che vogliono, ho accettato la loro licenza per l'utilizzo, ma quelle release
dove vengono rimosse importanti funzionalità, per favore, non
chiamatele più upgrade!<br />
<blockquote class="tr_bq">
<br />
<span style="font-size: x-small;">2. <b>upgrade</b> / ˌʌpˈgreɪd/ tr.</span><br />
<span style="font-size: x-small;">(improve) migliorare [product]</span><br />
<span style="font-size: x-small;">inform. potenziare, aggiornare [software, hardware]</span><br />
<span style="font-size: x-small;"></span><br />
<span style="font-size: x-small;"><br /></span>
<span style="font-size: x-small;">fonte: <a href="http://www.wordreference.com/">http://www.wordreference.com</a></span></blockquote>
<br />
VMware, ho recepito le tue pressioni ma, per il mio notebook
domestico, non passerò mai alla versione a pagamento, inoltre, molto probabilmente Oracle
raccoglierà i frutti di questa tua gretta "azione commerciale".<br />
<br />
<h3 class="western">
Di più come prima
</h3>
Prima di convertire tutto a Virtualbox, ho pensato di
temporeggiare facendo un downgrade per ritornare al mio
precedente stato di upgrade.<br />
<br />
<br />
<b>Downgrade di vmware-tools: il noioso how to</b><br />
<div style="margin-bottom: 0cm;">
Il “dito puntato alla fronte” non
mi da fastidio più di tanto, per cui ho optato al downgrade delle
solo vmware-tools per ripristinare le funzioni per me importanti.</div>
<div style="margin-bottom: 0cm;">
Ecco come ho fatto:</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Dal client virtualizzato, nel mio caso
Windows, entrare nel pannello di controllo per disinstallare vmware-tools, come in
foto:</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEhBIMDV1E0VopFe9OVZ8Q4F5VrJ1jWeLpdzLUFL5twVeu-Ag3kCLhgxarXSMfBffyZudmgstFxWt3sZjiPnxvdon-T-0FZAV0CpbNq0TNdgkCrDsJbuSVHoZd4c6VJjwULEItoo0bzdM/s1600/VMware1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEhBIMDV1E0VopFe9OVZ8Q4F5VrJ1jWeLpdzLUFL5twVeu-Ag3kCLhgxarXSMfBffyZudmgstFxWt3sZjiPnxvdon-T-0FZAV0CpbNq0TNdgkCrDsJbuSVHoZd4c6VJjwULEItoo0bzdM/s320/VMware1.jpg" width="320" /></a></div>
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Mentre, dall'host, nel mio caso Linux,
disinstallare il componente vmware-tools procedendo con il seguente
comando eseguito da terminale come utente root (o un utente con privilegi di root):</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<span style="color: blue;">vmware-installer
--uninstall-component=vmware-tools-windows</span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Successivamente scaricare la precedente
release di vmware-tools, quella che funzionava era la 8.8.4 da questo
link ufficiale di vmware (attenzione il link porta alla versione per
Linux):</div>
<div style="margin-bottom: 0cm;">
<a href="http://softwareupdate.vmware.com/cds/vmw-desktop/player/4.0.4/744019/linux/packages/">http://softwareupdate.vmware.com/cds/vmw-desktop/player/4.0.4/744019/linux/packages/</a></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<span style="font-size: x-small;">oppure (ma non ho provato!!), in seguito frugando nel sito di VMware, ho trovato anche delle versioni ISO/EXE disponibili, ma non essendomi chiara la numerazione delle
release mi sono astenuto da fare ulteriori prove, questo è il link per i più curiosi:</span></div>
<div style="margin-bottom: 0cm;">
<span style="font-size: x-small;"><a href="http://packages.vmware.com/tools/esx/index.html">http://packages.vmware.com/tools/esx/index.html</a></span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
</div>
<div style="margin-bottom: 0cm;">
Purtroppo provando ad installare il
componente scaricato con l'istruzione da "manuale":</div>
<div style="margin-bottom: 0cm;">
<span style="color: blue;">vmware-installer
--install-component=vmware-tools-windows</span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Si ottiene un errore, dovuto alla presenza, nel mio caso, della versione più aggiornata di VMware Player (5.0.1).<br />
Ed ecco che ho recuperato un metodo ufficioso per procedere con l'installazione. Qualcuno, con più pazienza e devozione per VMware Player di me, ha preparato uno script in PHP
per estrarre dall'archivio tar la ISO che ci serve. Ecco la
descrizione <a href="http://www.webtrotter.com/vmware/">http://www.webtrotter.com/vmware/</a></div>
<div style="margin-bottom: 0cm;">
e qui il download dello script<br />
<a href="http://www.webtrotter.com/vmware/vmware_extract_component.php.txt">http://www.webtrotter.com/vmware/vmware_extract_component.php.txt</a></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Una volta scaricato lo script, bisogna
rinominarlocome .php, ad esempio:</div>
<div style="margin-bottom: 0cm;">
<span style="color: blue;">vmware_extract_component.php</span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Ma ahimè, non funziona! Scorrendo
nelle righe dellos cipt ho trovato un errore, per questa release,
alla riga 95. Quindi asprite il file con un editor di testo (gedit,
notepad, kwrite, geany...) e sostituendo la riga 95:</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<span style="color: green;">$componentName =
(string) $dxml->installKey->vmis->componentName;</span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<span style="color: black;">con questa:</span></div>
<div style="margin-bottom: 0cm;">
<span style="color: green;">$componentName =
(string) $dxml->installerList->installer->componentName;</span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Successivamente, salvata la modifica
apportata, eseguite lo script da riga di comando con la seguente
istruzione:</div>
<div style="margin-bottom: 0cm;">
<span style="color: blue;">php
vmware_extract_component.php
vmware-tools-windows-8.8.4-744019.x86_64.component.tar</span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Ovviamente, per come ho scritto il
comando, l'archivio tar che avete scaricato,
<i><span style="color: blue;">vmware-tools-windows-8.8.4-744019.x86_64.component.tar</span></i><span style="color: black;">,
deve essere nella stessa cartella dello script!</span></div>
<div style="margin-bottom: 0cm;">
<span style="color: black;">Ed ecco che vi
ritroverete l'immagine vmware.iso da utilizzare per l'installazione
su tutte le macchine virtuali.</span></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Adesso avviate VMware Player e rimuovete il segno di spunta su “controlla aggiornamento componenti”, per evitare altri
emozionali solleciti di upgrade.</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBO7cQKODFjWEcpKYBQ9Af6fDtrc0_EGCZmeSQn5bh0kUCFsF6GWezBxxkC5Ss5WQ9MpmC3WvAASHQ9zahVmrukhOVjKEyxriGcXjzX33yo6-j3H2MzMvoqyUpBNxmwccTfbtSLJjwprY/s1600/VMware2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBO7cQKODFjWEcpKYBQ9Af6fDtrc0_EGCZmeSQn5bh0kUCFsF6GWezBxxkC5Ss5WQ9MpmC3WvAASHQ9zahVmrukhOVjKEyxriGcXjzX33yo6-j3H2MzMvoqyUpBNxmwccTfbtSLJjwprY/s320/VMware2.jpg" width="210" /></a></div>
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
Montate il CD sulla ISO:</div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg418e01Xy9FPNycjs9ZCSfM5Px-ZyiJb0a-isiH3fG69AF4tP5fva4rsleoT-5LD_TkfkaEDS24tBNeHeLvEO1qW-NXu9iGyvk81lAPrhzuMRnXcAuk0Q7dpPfApo_KgyM-DVUPKtAbZg/s1600/VMware3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg418e01Xy9FPNycjs9ZCSfM5Px-ZyiJb0a-isiH3fG69AF4tP5fva4rsleoT-5LD_TkfkaEDS24tBNeHeLvEO1qW-NXu9iGyvk81lAPrhzuMRnXcAuk0Q7dpPfApo_KgyM-DVUPKtAbZg/s400/VMware3.jpg" width="400" /></a></div>
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
<div style="margin-bottom: 0cm;">
E dalla macchina virtualizzata cliccate
sul CD montato per avviare la solita procedura di installazione delle
vmware-tools.<br />
<br />
<br />
<br />
Ed eccomi con le mie desiderate funzioni, testate e funzionanti:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYaZh9ya_lljR_dWPqa_HpsgzzEDEuVtam7dBYOWVNCHESHmIdMNBrnTbh5gpjleYyKWCS6aWYvIvArXyV1EZnQdOLpIwhFuB2oxu7Bryx6iZ22Xi6kf8amoCQRSkrgzvhhc1KEcx3h6o/s1600/VMware4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="285" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYaZh9ya_lljR_dWPqa_HpsgzzEDEuVtam7dBYOWVNCHESHmIdMNBrnTbh5gpjleYyKWCS6aWYvIvArXyV1EZnQdOLpIwhFuB2oxu7Bryx6iZ22Xi6kf8amoCQRSkrgzvhhc1KEcx3h6o/s320/VMware4.jpg" width="320" /></a></div>
</div>
<div style="margin-bottom: 0cm;">
<br />
<br />
<br />
<h3>
Conclusione</h3>
Se invece di fare upgrade e poi downgrade al computer avessi dedicato il tempo a fare altro, come guardare le onde del lago dalla panchina della piazza oppure scaccolarmi davanti il TG della sera, potrei convincermi che il mondo reale non sia poi peggiore di quello informatico ;-)<br />
<br />
<span style="font-size: x-small;">Prima di pigiare su un altro click emozionale ci penserò sopra un po' di più e se mi vedrete seduto sulla panchina a guardare le onde del lago con il dito incastrato nel naso saprete che non ho perso del tempo inutilmente.</span><br />
<br />
<br /></div>
<div style="margin-bottom: 0cm;">
<br /></div>
More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-49101335168291858632012-11-19T17:57:00.000-08:002012-11-20T08:32:43.869-08:00Stampa in serie: imprecazioni seriali<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5-8fFq-6f8wMW9UaqY7xit8rIvYvqb1wX-7Go3EyUHKXQxikIndjICGxb4ujqlQRb-GzIYrxFBjEK9kH7dF6xGWG4zYiU9mPofxThFi48GGhS5WK10ZtTKVHOcG9lzsI1B1xHN7k1w0I/s1600/testataCAPRA.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5-8fFq-6f8wMW9UaqY7xit8rIvYvqb1wX-7Go3EyUHKXQxikIndjICGxb4ujqlQRb-GzIYrxFBjEK9kH7dF6xGWG4zYiU9mPofxThFi48GGhS5WK10ZtTKVHOcG9lzsI1B1xHN7k1w0I/s400/testataCAPRA.jpg" width="271" /></a></div>
<br />
Capita a pochi la sfortuna di dover usare la <a href="http://openoffice.libersoft.it/index.php/2.6.5._Stampa_in_serie"><i>Stampa in serie</i></a> (o <i>Stampa unione</i>) e, ancor meno, capita che chi si approvvigiona della cancelleria decida di cambiare formato delle etichette e che il template usato per anni si ritrovi completamente inutile perché nel frattempo anche la tabella della lista degli indirizzi estratti dal database ha cambiato la propria struttura.<br />
<a href="http://www.libreoffice.org/">Libreoffice</a>, la suite office che usiamo in azienda (derivata da <a href="http://www.openoffice.org/">OpenOffice</a>), fa tutto, anche cose di cui non immaginiamo, funziona... ma ha una maledetto approccio user-<i>un</i>friendly che alcune volte ci fa sentire dei caproni.<br />
<br />
<a name='more'></a><br />
<br />
<h3>
Creare il nuovo template delle etichette </h3>
Dal menu <span style="color: magenta;">Nuovo</span> di <a href="http://www.libreoffice.org/">Writer Libreoffice</a> c'è l'intuitiva voce <span style="color: magenta;">Etichette</span> talmente chiara e semplice che ci farà illudere che le cose saranno semplici come fare le capriole sui prati fioriti mentre le caprette fanno <i>ciao</i>.<br />
<br />
Nella sezione in primo piano, <span style="color: magenta;">Testo etichetta</span>, aggancio la lista degli indirizzi (database) che ho disponibile come foglio <a href="http://en.wikipedia.org/wiki/OpenDocument">ods</a>, ma non aggiungo ancora i campi che voglio stampare (più avanti capirete perché).<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFH4uVaJNBgx3787pK-huJUSkTIdwwTSKvzy81BA59MwZlV1XBQIZYAlRwoTyDxxK-sz1UyJsNESfVxZg7nhK4gcCtel-EyAa67G9ob5JYSC1kh8wVrwiBNxbeiirXfTKbV9Ycn0ooFIk/s1600/Crazy_Goat.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFH4uVaJNBgx3787pK-huJUSkTIdwwTSKvzy81BA59MwZlV1XBQIZYAlRwoTyDxxK-sz1UyJsNESfVxZg7nhK4gcCtel-EyAa67G9ob5JYSC1kh8wVrwiBNxbeiirXfTKbV9Ycn0ooFIk/s320/Crazy_Goat.jpg" width="320" /></a></div>
<br />
Poi, appena più sotto, un attimo dopo le capriole, il “ciao” delle caprette mi sembra ora condito da sarcasmo: la lista dei formati delle etichette si presenta per MARCA e MODELLO e, ovviamente, la confezione acquistata con la veste di un brand sconosciuto non ha nemmeno un suo alter ego nella lista dei prodotti Avery.
Deduco che il responsabile dell'ufficio acquisti abbia comperato un formato "inusuale": 105x37 mm su foglio A4.<br />
Per fortuna, per gli infelici come me c'è la scheda <span style="color: magenta;">Formato</span> nella quale si può creare il proprio formato infelice di cui vantarsi sui propri blog.<br />
Ecco i valori che ho impostato per il mio:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoMYpmyr2QVZ4tAgacTZ8Vo2qExZ41zEmgHPFzaIYRYZKUXv-4Uw-A74mVXke574eK5JnN2oQFiVvcib5L8sVHieknp-LbxeXsA7kZZ3KYW-JBl7Nk7l7047w3gzANxXryuV12Nu8lz98/s1600/screenshot_etichette.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="267" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoMYpmyr2QVZ4tAgacTZ8Vo2qExZ41zEmgHPFzaIYRYZKUXv-4Uw-A74mVXke574eK5JnN2oQFiVvcib5L8sVHieknp-LbxeXsA7kZZ3KYW-JBl7Nk7l7047w3gzANxXryuV12Nu8lz98/s400/screenshot_etichette.jpg" width="400" /></a></div>
Spero di non doverveli spiegare: righello e calcolatrice alla mano ;-)<br />
<br />
<h4>
Sincronizza etichette dove sei? </h4>
Ve lo dico subito o ve lo dico dopo?<br />
Avendo fatto il primo template delle etichette mi ricordavo che c'era un pulsante “<span style="color: magenta;">Sincronizza etichette</span>” che, premendolo, consentiva di clonare automaticamente tutte le etichette della pagina allo stesso modo di com'è la prima in alto a sinistra (formati, campi, condizioni e stili), tuttavia frugando anche nelle zone più intime di Libreoffice non ho assolutamente trovato quella funzione, finché armato di pazienza e determinazione, più per orgoglio che necessità, ho trovato questo aiuto:<br />
<a href="http://help.libreoffice.org/Common/Options_1/it#Sincronizza_etichette">http://help.libreoffice.org/Common/Options_1/it#Sincronizza_etichette</a><br />
dove si dice che per far comparire quella funzione (un pessimo flottante pulsante come visibile in foto)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZWv1Vb0S_awSS7RrZF7ithFRNeXMGjXYsylhIekl6qHiHFEAJuNGcilL_O67FgIvRmwMmYhWjFcwlV-8PvJdLl_IZTEiDWUS-04iiGUTWUjnwcjYUYvXuEDTz83Ilbn4jhuD5wKSWTG0/s1600/screenshot_etichette2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZWv1Vb0S_awSS7RrZF7ithFRNeXMGjXYsylhIekl6qHiHFEAJuNGcilL_O67FgIvRmwMmYhWjFcwlV-8PvJdLl_IZTEiDWUS-04iiGUTWUjnwcjYUYvXuEDTz83Ilbn4jhuD5wKSWTG0/s400/screenshot_etichette2.jpg" width="400" /></a></div>
<br />
è necessario aver impostato a priori un'opzione altrimenti non c'è alcuna possibilità di goderne (bella fregatura!): durante la creazione delle etichette bisogna mettere il segno di spunta alla voce “<span style="color: magenta;">Sincronizza Contenuti</span>” nella scheda <span style="color: magenta;">Extra</span> (a lato della scheda <span style="color: magenta;">Formati</span>)!<br />
<br />
<h3>
Caricare i campi delle etichette </h3>
Caricare i campi delle etichette è una cosa semplice, si possono impostare già durante la creazione del documento etichette, però, c'è sempre un però, soprattutto quando è un lavoro che mi ritrovo a dover fare io, ... <br />
<br />
Tutti voi conoscete le regole di Poste Italiane per la compilazione delle etichette postali e sapete che sono molto rigorose (ndr: non mi veniva un aggettivo migliore).<br />
<br />
<blockquote class="tr_bq" style="font-family: Times,"Times New Roman",serif;">
<span style="font-size: small;">NB: Ecco le incontestabili regole : <a href="http://www.poste.it/postali/cap/standard_composizione_indirizzi.pdf">http://www.poste.it/postali/cap/standard_composizione_indirizzi.pdf </a></span></blockquote>
<br />
Ebbene per le informazioni sul <i>destinatario</i> Poste Italiane permette al massimo l'inserimento di due righe, invece io mi trovo condizioni anche di questo tipo:<br />
<blockquote class="tr_bq">
<i>Egr. Nome Cognome </i><br />
<i>Facoltà delle xxxx </i><br />
<i>Università di xxxxx </i></blockquote>
oppure <br />
<blockquote class="tr_bq">
<i>Mr. Nome Cognome </i><br />
<i>divisione xxxx </i><br />
<i>ragione sociale s.p.a.</i></blockquote>
<br />
e, dunque, nella mia lista ci sono tre campi che determinano le informazioni del <i>destinatario</i>: <i>nominativo</i>, <i>facoltà/dipartimento/divisione </i>e <i>Ragione Sociale</i>, ma non posso usare tre righe.<br />
La “soluzione” (<span style="font-size: x-small;"><i>Attenzione</i>: Poste Italiane determina anche il massimo numero di caratteri per riga ...oltre alla dimensione minima del font</span>) che ho approntato è stata quella di accorpare i primi due campi sulla stessa riga separandoli con una virgola (sono un genio!).<br />
Per aggiungere il primo campo <nominativo> bisogna mettere il cursore nel punto dell'etichetta dove si vuol scrivere e dal menu </nominativo><br />
<span style="color: magenta;">Inserisci</span> → <span style="color: magenta;">Comando di campo</span> → <span style="color: magenta;">Altro</span><br />
nella scheda “<b><span style="color: magenta;">Database</span></b>” impostare come:<br />
<blockquote class="tr_bq">
<i>Tipo campo</i> = C<i>ampi per stampa in serie</i><br />
<i>Scelta Database</i> = qui selezionare il database agganciato → il foglio → il nome del campo </blockquote>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRdXc0aMsrYui6PJTVAXsADsPj4hXG1Df2OjmR6JDGM9oHVKhIpX9teIQyyUiL2vX6DiN7rWK42aBeBdQUfK2djfi8OaY7KyCWH7bAhE_fqdSOQNtPS6BaD6FFN8xKewIc1Pib5oUYbN0/s1600/screenshot_etichette1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="267" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRdXc0aMsrYui6PJTVAXsADsPj4hXG1Df2OjmR6JDGM9oHVKhIpX9teIQyyUiL2vX6DiN7rWK42aBeBdQUfK2djfi8OaY7KyCWH7bAhE_fqdSOQNtPS6BaD6FFN8xKewIc1Pib5oUYbN0/s400/screenshot_etichette1.jpg" width="400" /></a></div>
<br />
<blockquote class="tr_bq" style="font-family: Times,"Times New Roman",serif;">
<br />
NB: nel foglio .ods il nome del campo è determinato dalle celle dalla prima riga. Consiglio vivamente di usare nomi privi di spazi!!! </blockquote>
<br />
E poi cliccare sul pulsante <span style="color: magenta;">Inserisci</span> per vederlo aggiunto nell'etichetta.<br />
<br />
<blockquote class="tr_bq" style="font-family: Times,"Times New Roman",serif;">
NB: Torna utile sapere che selezionando o meno, dal menu “<span style="color: magenta;">Visualizza</span>” la voce “<span style="color: magenta;">Nomi campi</span>” si può variare il modo con cui vengono visualizzati i campi del database </blockquote>
<br />
Fatta la stessa cosa anche per il secondo campo, dopo aver digitato la virgola e lo spazio per separarlo dal primo, e anche per il terzo campo mi ritrovo qualcosa del tipo:
<nominativo> </nominativo><br />
<blockquote class="tr_bq">
<style type="text/css">
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
A:link { so-language: zxx }
</style> [<i>nominativo</i>], [<i>dipartimento</i>]<br />
[<i>RagioneSociale</i>]<i><dipartimento></dipartimento></i></blockquote>
<blockquote class="tr_bq">
<i><ragione_sociale></ragione_sociale></i> </blockquote>
<nominativo><dipartimento> </dipartimento></nominativo><br />
<h4>
<nominativo><dipartimento>1° problema: punteggiatura condizionata</dipartimento></nominativo></h4>
<nominativo><dipartimento>E qui sorge subito il primo problema: se in qualche record della lista di indirizzi il campo <nominativo> </nominativo></dipartimento></nominativo><i><nominativo> </nominativo></i>[<i>nominativo</i>] <nominativo><dipartimento><nominativo>dovesse esser vuoto, la riga dell'etichetta inizierebbe con una virgola e spazio seguiti poi dal nome del </nominativo></dipartimento></nominativo>[<i>dipartimento</i>]<nominativo><dipartimento><nominativo>: orrore!</nominativo></dipartimento></nominativo><br />
<br />
<nominativo><dipartimento><nominativo>E' necessario inserire una bella condizione per determinare se stampare o meno la virgola, pertanto sostituisco la virgola e lo spazio con un <a href="http://help.libreoffice.org/Writer/Defining_Conditions/it">campo condizionale</a>; dal menu </nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><span style="color: magenta;">Inserisci</span> → <span style="color: magenta;">Comando di campo</span> → <span style="color: magenta;">Altro</span> </nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo>nella scheda “<b><span style="color: magenta;">Funzioni</span></b>” imposto come: </nominativo></dipartimento></nominativo><br />
<blockquote class="tr_bq">
<nominativo><dipartimento><nominativo><i>Tipo campo</i> = Testo condizionale </nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><i>Condizione</i> = nominativo EQ “” </nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><i>Allora</i> = <i><span style="font-size: x-small;">(lascio vuoto) </span></i></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><i>Altrimenti</i> = , <i><span style="font-size: x-small;">(virgola + spazio) </span></i></nominativo></dipartimento></nominativo></blockquote>
<br />
<nominativo><dipartimento><nominativo>Adesso funziona decisamente meglio.</nominativo></dipartimento></nominativo><br />
<br />
<h4>
2° problema: riga vuota</h4>
<nominativo><dipartimento><nominativo>Ma non è finita qui, Poste Italiane prevede una riga facoltativa per INFORMAZIONI AGGIUNTIVE SULL'EDIFICIO (SCALA, PIANO, INTERNO), nella lista a mia disposizione questo campo il più delle volte è vuoto e ciò determina la stampa di una riga vuota nell'etichetta. </nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo>Ebbene il problema è inserire una condizione per quel campo che determini la presenza della riga soltanto quando il campo contiene del testo. E c'è proprio una funzione che fa al caso mio però è <u>necessario aver separato le righe con NEW PARAGRAPH </u>(il tasto invio durante la digitazione) e non il NEW LINE che invece avrebbe inserito il software se avessi aggiunto i capi durante la creazione del documento etichette (la distinzione tra NewLine e NewParagraph è visibile attivando la visualizzazione dei caratteri non stampabili, vedi foto). </nominativo></dipartimento></nominativo><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqfmW7dLaFkPeBC4cXDC2T4B4xPwAQCHR8Dem5lJWoVvObIBgLvxuZZHhO5EzxRhKPdEcy72qnRHD3HUSX1up0KLJr72jhiWujiQf9yUqqflHbJK2bqdkOGqtaQBA-6gyd7SJZ8Lrx5bA/s1600/PARAGRAFO.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="241" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqfmW7dLaFkPeBC4cXDC2T4B4xPwAQCHR8Dem5lJWoVvObIBgLvxuZZHhO5EzxRhKPdEcy72qnRHD3HUSX1up0KLJr72jhiWujiQf9yUqqflHbJK2bqdkOGqtaQBA-6gyd7SJZ8Lrx5bA/s400/PARAGRAFO.jpg" width="400" /></a></div>
<br />
<nominativo><dipartimento><nominativo>Una volta inserito la riga con il campo facoltativo (INFORMAZIONI AGGIUNTIVE SULL'EDIFICIO):
<edificio>
prima di pigiare il tasto invio (NEW PARAGRAPH) per la successiva riga inserisco un campo speciale:
dal menu</edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><span style="color: magenta;">Inserisci</span> → <span style="color: magenta;">Comando di campo</span> → <span style="color: magenta;">Altro</span> </edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio>nella scheda “<b><span style="color: magenta;">Funzioni</span></b>” imposto come: </edificio></nominativo></dipartimento></nominativo><br />
<blockquote class="tr_bq">
<nominativo><dipartimento><nominativo><edificio><i>Tipo campo </i>= Paragrafo vuoto </edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><i>Condizione</i> = edificio EQ “” </edificio></nominativo></dipartimento></nominativo></blockquote>
<br />
<nominativo><dipartimento><nominativo><edificio>Quando il campo <edificio> sarà vuoto (EQ = equal) il paragrafo, ergo la riga in questo caso, non verrà stampata. </edificio></edificio></nominativo></dipartimento></nominativo><br />
<br />
<h4>
3° problema: riga indesiderata</h4>
<nominativo><dipartimento><nominativo><edificio>Ehi, non vi starete dimenticando che Poste Italiane non vuole che venga stampata la riga della nazione qualora la spedizione fosse limitata all'Italia? </edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio>Poiché, nella mia lista di indirizzi, potrebbe capitare di avere nel campo </edificio></nominativo></dipartimento></nominativo>[<i>Nazione</i>]<nominativo><dipartimento><nominativo><edificio> la stringa <nazione>"</nazione></edificio></nominativo></dipartimento></nominativo>ITALIA<nominativo><dipartimento><nominativo><edificio><nazione>", ho pensato che anche in questo caso fosse necessario nascondere la riga per la seguente equazione:
dal menu <span style="color: magenta;"> </span></nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione><span style="color: magenta;">Inserisci</span> → <span style="color: magenta;">Comando di campo</span> → <span style="color: magenta;">Altro</span> </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione>nella scheda “<b><span style="color: magenta;">Funzioni</span></b>” imposto come: </nazione></edificio></nominativo></dipartimento></nominativo><br />
<blockquote class="tr_bq">
<nominativo><dipartimento><nominativo><edificio><nazione><i>Tipo campo</i> = Paragrafo vuoto </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione><i>Condizione</i> = nazione EQ “ITALIA” </nazione></edificio></nominativo></dipartimento></nominativo></blockquote>
<br />
<nominativo><dipartimento><nominativo><edificio><nazione>Quando il campo<i> </i><nazione><i>[Nazione] </i>conterrà il testo “ITALIA” il paragrafo , ergo la riga anche in questo caso, non verrà stampata. </nazione></nazione></edificio></nominativo></dipartimento></nominativo><br />
<br />
<h3>
<nominativo><dipartimento><nominativo><edificio><nazione>...il bug dell'ultimo minuto</nazione></edificio></nominativo></dipartimento></nominativo></h3>
<nominativo><dipartimento><nominativo><edificio><nazione>Quando ho stampato le pagine* mi sono accorto che Libreoffice, dopo ogni pagina, mi stampava anche una pagina bianca!!! </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione>Non è un vero bug, almeno non dovrebbe esserlo da quello che si legge in Rete, la colpa è di una maledettissima opzione per la quale non si conosce il senso della sua esistenza ma che ce la ritroviamo impostata di default. </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione>Per risolvere questa noia è sufficiente andare nel menu: </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione><span style="color: magenta;">Strumenti</span> → <span style="color: magenta;">Opzioni...</span> → <span style="color: magenta;">Libre Office Writer</span> → <span style="color: magenta;">Stampa</span> </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione>e togliere il segno di spunta dalla voce “<span style="color: magenta;">Stampa pagine vuote inserite automaticamente</span>” </nazione></edificio></nominativo></dipartimento></nominativo><br />
<br />
<nominativo><dipartimento><nominativo><edificio><nazione> <span style="font-size: x-small;">*per fare le prove rispettando la natura e i nostri soldi vi consiglio vivamente di stampare su file .pdf anziché direttamente sulla stampante, fino a quando non otterrete il risultato sperato. </span></nazione></edificio></nominativo></dipartimento></nominativo><br />
<br />
<h3>
<nominativo><dipartimento><nominativo><edificio><nazione>E per cambiare? </nazione></edificio></nominativo></dipartimento></nominativo></h3>
<nominativo><dipartimento><nominativo><edificio><nazione>Una volta salvato il documento come template, è possibile caricare differenti file (nome e/o path) contenenti gli indirizzi, purché rimangano invariati i titoli dei campi e il nome del foglio (sheet), semplicemente aprendo il template e cliccando su</nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione> <span style="color: magenta;">
Modifica</span> → <span style="color: magenta;">Scambia database...</span> </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione>e poi </nazione></edificio></nominativo></dipartimento></nominativo><br />
<nominativo><dipartimento><nominativo><edificio><nazione><span style="color: magenta;"> Strumenti</span> → <span style="color: magenta;">Aggiorna</span> → <span style="color: magenta;">Aggiorna tutto</span> </nazione></edificio></nominativo></dipartimento></nominativo><br />
<br />
<h3>
<nominativo><dipartimento><nominativo><edificio><nazione>Info</nazione></edificio></nominativo></dipartimento></nominativo></h3>
<a href="http://www.libreoffice.org/"><nominativo><dipartimento><nominativo><edificio><nazione>Sito ufficiale di Libreoffice </nazione></edificio></nominativo></dipartimento></nominativo></a><br />
<a href="http://help.libreoffice.org/Writer/Defining_Conditions/it%20"><nominativo><dipartimento><nominativo><edificio><nazione>Definire le condizioni in Libreoffice</nazione></edificio></nominativo></dipartimento></nominativo></a><br />
<nominativo><dipartimento><nominativo><edificio><nazione><a href="http://www.capre.it/">Un portale dedicato alle capre</a> ...utile per chi usa i software :-)</nazione></edificio></nominativo></dipartimento></nominativo>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com3tag:blogger.com,1999:blog-6964936517594052608.post-34682131250364416592012-11-02T14:48:00.000-07:002012-11-07T16:01:27.158-08:00La cicala e la formica nell'anno della recessione: CKEditor vs TinyMCE<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKcWE8lwkWpATM1hT9pAU1FnkqRwIS8QswZ5933Q_LZjQO9uizeIf9RRnvKlQAXX7O0CHJMv2cn3YGvqQBwOoWY5c-z6Mjn_mKHP1gJXAUHNUSPz4KdbNMj-jzoW3w3UEv2J-6eKh07Lo/s1600/CicalaFormica.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="287" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKcWE8lwkWpATM1hT9pAU1FnkqRwIS8QswZ5933Q_LZjQO9uizeIf9RRnvKlQAXX7O0CHJMv2cn3YGvqQBwOoWY5c-z6Mjn_mKHP1gJXAUHNUSPz4KdbNMj-jzoW3w3UEv2J-6eKh07Lo/s400/CicalaFormica.png" width="400" /></a></div>
<br />
Più di un anno fa parlai di loro, adesso, nell'anno della <strike>recessione</strike> recensione, non posso esimermi dal tornare a sparlare di loro.<br />
<br />
<a name='more'></a><br />
Ovviamente ho scelto il momento sbagliato per fare un veritiero e corretto confronto tra i due più blasonati javascript WYSIWYG Editor disponibili gratuitamente, perché la “cicala” (<a href="http://ckeditor.com/">CKEditor</a>) sta scrivendo un nuovo canto che potrebbe scalare la Hit con la prossima <a href="http://ckeditor.com/ckeditor-4-beta">release 4.0</a>, ma essendo una versione beta, non ancora affinata per l'utilizzatore finale, il confronto con il lavoro della formica (<a href="http://www.tinymce.com/">TinyMCE</a>) è assolutamente a suo svantaggio.<br />
<br />
<h3>
Confronto a suon di byte </h3>
Vi ricordate del mio <a href="http://programmatorepercaso.blogspot.it/2011/04/la-cicala-e-la-formica-ckeditor-vs.html">vecchio articolo</a>?<br />
Ebbene, nell'anno della Spending Review, direi che la formica ha messo un po' di ciccia ai fianchi ingrossando il codice (in relazione alla mia pagina di test) di un buon 32,99%<br />
<br />
arrivando quindi a <b>328,9 Kb</b> (non compressi)<br />
<br />
Mentre la cicala, che non si è mai curata della linea, ha semplicemente divorato il formicaio con tutta la sua riserva invernale, crescendo di un 258,51%<br />
<br />
toccando, così, un'obesità di <b>1487,1 Kb</b>* (non compressi)<br />
<br />
con 199 HTTP request contro le 12 di TinyMCE.<br />
<br />
<span style="font-size: x-small;">Note: </span><br />
<span style="font-size: x-small;">*l'esagerata size di CKEditor è sicuramente una condizione provvisoria dovuta al fatto che allo stato attuale di sviluppo la versione 53dff67 della 4.0 beta, scaricata direttamente da <a href="https://github.com/ckeditor">GitHub</a>, non è ottimizzata tant'è che nella mia pagina di test vengono caricati 169 file JS separati </span><br />
<br />
<h3>
La versione <strike>Fat</strike> Four </h3>
Ma che novità porta la prossima release di CKEditor che tanto mi ha spinto a riscrivere ancora un articolo di confronto con TinyMCE?<br />
<br />
Semplicemente gli sviluppatori di CKEditor hanno letto il mio <a href="http://programmatorepercaso.blogspot.it/2011/04/la-cicala-e-la-formica-ckeditor-vs.html">vecchio articolo</a>, ma per farlo hanno usato un tool di traduzione online: l'unica cosa che hanno compreso è che la loro cicala-vanitosa indossava un abito che non era tagliato da un sarto professionista.<br />
Così hanno indetto uno <a href="http://ckeditor.com/blog/ckeditor-4-skin-contest">Skin Contest</a><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOtDvz4xEmJQ3DWuthsQnHpLgJ6U_rqY8HbmXEIb5p6uot2dON1gqYExbHIDYO4QfvUOf2oawVoExm0bScLsHqlgzrot6sgn__WSpqxQJmXeRaPbLNKWTTfJmLLKP1bMjWLERik12m98k/s1600/ckeditor_4_skin.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="111" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOtDvz4xEmJQ3DWuthsQnHpLgJ6U_rqY8HbmXEIb5p6uot2dON1gqYExbHIDYO4QfvUOf2oawVoExm0bScLsHqlgzrot6sgn__WSpqxQJmXeRaPbLNKWTTfJmLLKP1bMjWLERik12m98k/s320/ckeditor_4_skin.jpg" width="320" /></a></div>
<br />
<br />
e con questa mossa il costume della formichina sembra la mutanda usata di un dinosauro.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDyPZa6TLyRm343P6LINn9D4znEXqmz0E6XUM9DXaO42WPo16rJkvy9LUhw4OdvJUI6unCxrtB61VQ3zLYGvfH8ZO85FyA7bXfnBp4k892O6Dpu7bsJbnfpwHSmHVN9EOQoLgP6BAQGyg/s1600/prima3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="272" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDyPZa6TLyRm343P6LINn9D4znEXqmz0E6XUM9DXaO42WPo16rJkvy9LUhw4OdvJUI6unCxrtB61VQ3zLYGvfH8ZO85FyA7bXfnBp4k892O6Dpu7bsJbnfpwHSmHVN9EOQoLgP6BAQGyg/s320/prima3.jpg" width="320" /></a></div>
<br />
<br />
<br />
<h3>
Ma oltre all'abito c'è anche il monaco (o qualcosa del genere)</h3>
La versione four della cicala più paparazzata e sexy del web mostra di avere anche un grasso e grosso lato B da far fischiare tutti i maschietti:<a href="http://nightly-v4.ckeditor.com/3716/samples/inlineall.html"> inline editing</a>.<br />
Sfoggiato con questo slogan:<br />
<div style="font-family: "Trebuchet MS",sans-serif;">
<i>WYSIWYG - What You See is really What You Get! </i></div>
<div style="font-family: "Trebuchet MS",sans-serif;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQmeFv6lpFAsylNmNx3fimW8GmDj45-y0uZNsDa5evpujxa_bxWRkZzhon5JaAxdTAQjcPyZmRzauYbkonrTDDAHmhPtN7l3BYozggOYYpF2ThoinuMzWse6esTrTmKXXUlkh4Q35ciEQ/s1600/CK_inlineEditing.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="272" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQmeFv6lpFAsylNmNx3fimW8GmDj45-y0uZNsDa5evpujxa_bxWRkZzhon5JaAxdTAQjcPyZmRzauYbkonrTDDAHmhPtN7l3BYozggOYYpF2ThoinuMzWse6esTrTmKXXUlkh4Q35ciEQ/s400/CK_inlineEditing.jpg" width="400" /></a></div>
<div style="font-family: "Trebuchet MS",sans-serif;">
<br /></div>
<div style="font-family: "Trebuchet MS",sans-serif;">
<br /></div>
Eh, già, una gran bella cosa, però cicala-fanfarona se usi quello slogan come cavallo di battaglia non sarebbe il caso di incominciare a migliorare quello che si ottiene (<i>What You Get</i>)?<br />
<br />
Come nel <a href="http://programmatorepercaso.blogspot.it/2011/04/la-cicala-e-la-formica-ckeditor-vs.html">precedente articolo</a>, ho eseguito nuovamente la prova di digitare un semplice testo formattato con Writer di <a href="http://www.libreoffice.org/">Libreoffice</a>, come questo:<br />
<br />
<blockquote>
<span style="font-weight: normal;">normale</span><br />
<b>bold</b><br />
<i><span style="font-weight: normal;">corsivo</span></i><br />
<span style="font-family: 'URW Bookman L';"><span style="font-size: small;"><span style="font-weight: normal;">font</span></span></span><span style="text-decoration: underline;"><span style="font-weight: normal;"></span></span></blockquote>
<span style="text-decoration: underline;"><span style="font-weight: normal;">sottolineato</span></span><br />
<span style="color: red;"><span style="font-weight: normal;">colore</span></span><br />
<br />
<ol>
<li><span style="font-weight: normal;">punto elenco</span></li>
</ol>
<br />
<br />
Poi l'ho copiato nell'editor online, dopo di che ho fatto analizzare l'output html dell'editor da <a href="http://html5.validator.nu/">validator HTML5</a>, ed ecco il risultato della cicala-velina:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhs66Pr9WLy-1zJXgxOmNY_g_1QtzDBkeDoSa5ShazvBJxqwM5_BOjxPzFwjiZJojbV7ELAS9U69CBxOOy0U9fHa43MJQOrWvMhn8yJcSWBY6CtiRhuE0VJsGWffRxmB36Z2V6c_XaDlIE/s1600/validateoutput_ckeditor_4.0.b.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="168" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhs66Pr9WLy-1zJXgxOmNY_g_1QtzDBkeDoSa5ShazvBJxqwM5_BOjxPzFwjiZJojbV7ELAS9U69CBxOOy0U9fHa43MJQOrWvMhn8yJcSWBY6CtiRhuE0VJsGWffRxmB36Z2V6c_XaDlIE/s400/validateoutput_ckeditor_4.0.b.jpg" width="400" /></a></div>
<br />
<br />
Mentre la formica (TinyMCE) vive ancora bene con il suo minuzioso e accurato lavoro che ha accumulato negli anni:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguYuSItbwkZer4LYz7X6XhF4d35ytNUA4P6LjWXok8c5CVXU0QYMeCRfHImfPYtjjPxe_buWe-Z67nZ3w71mGDK70tLtARga8gTyY0BNP2obQPbILIE9OENh6o4KYhv0UWNC1l95m3dnU/s1600/validateoutput_tinymce_3.5.7.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="22" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguYuSItbwkZer4LYz7X6XhF4d35ytNUA4P6LjWXok8c5CVXU0QYMeCRfHImfPYtjjPxe_buWe-Z67nZ3w71mGDK70tLtARga8gTyY0BNP2obQPbILIE9OENh6o4KYhv0UWNC1l95m3dnU/s400/validateoutput_tinymce_3.5.7.jpg" width="400" /></a></div>
<br />
<br />
<br />
<br />
<h3>
Conclusione</h3>
Non nascondo che il grosso e grasso lato B del nuovo CKEditor mi ha stuzzicato delle intime fantasie da Programmatore 2.0 e, finalmente, trovo che la nuova grafica possa donare un'immagine professionale alle applicazioni/siti che utilizzeranno questo fantastico editor ..ancora qualche nuova release e poi, forse, mi deciderò a utilizzarlo veramente.<br />
Spero soltanto che l'altro grande editor, TinyMCE, non resti solo a guardare, anch'esso avrebbe bisogno di una "svecchiata" (...chissà come lo tradurrà il tool di traduzione online ;-) )<br />
<br />
<br />
<br />
Infine, vi ricordo che di javascript WYSIWYG Editor in rete se ne trovano tanti e per tutti i gusti.<br />
E per chi, in questo momento, non digerisse l'abbondanza e sperpero [<i>ndr. in alcune applicazioni potrebbero risultarlo</i>] potrebbe optare per soluzioni più in linea con una "spending review" del codice, ad esempio:<br />
<ul>
<li><a href="http://nicedit.com/demos.php">NicEdit</a></li>
<li><a href="http://pietschsoft.com/demo/jHtmlArea/">jHtmlArea</a></li>
<li><a href="http://premiumsoftware.net/cleditor/">CLEditor </a></li>
</ul>
<br />
<h3>
Propostone</h3>
Se con i nuovi tipi dell'elemento <a href="http://www.w3schools.com/html/html5_form_input_types.asp">INPUT</a> definiti in HTML 5, alcuni browser attuali, come <a href="https://www.google.com/intl/it/chrome/browser/">Chrome</a>/<a href="http://www.chromium.org/">Chromium</a>, hanno implementato l'utilizzo autonomo di un datepicker integrato, <a href="http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_type_date">demo</a> (solo per i browser che lo supportano), non potrebbero fare parimenti anche per le <a href="http://www.w3schools.com/tags/tag_textarea.asp">TEXTAREA</a> creando un tipo che possa utilizzare un editor implementato nel browser?<br />
<br />
Sarebbe un bel risparmio per tutti (programmatori e utenti) ;-) <br />
<br />
<br />
<br />
<ul>
</ul>
<br />
<br />
<br />
<br />
<br />More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com1tag:blogger.com,1999:blog-6964936517594052608.post-89831280746788766732012-06-14T14:55:00.001-07:002012-06-14T23:57:39.245-07:00More Mania: un TUX a radiofrequenza<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvnN_NJOHKNAn4NqIa2-tdEMgJ_WuxMouoKCDoz_lDrexcDWPWAgEfK47eSODVXOK4vS0W2eh2mc3q78_j-43UtInsZJpd21H_aMHzXzq-vHg2HrJ-dIt8P93F7RtVEcBBbnIs7NOTcgc/s1600/moreLinus.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvnN_NJOHKNAn4NqIa2-tdEMgJ_WuxMouoKCDoz_lDrexcDWPWAgEfK47eSODVXOK4vS0W2eh2mc3q78_j-43UtInsZJpd21H_aMHzXzq-vHg2HrJ-dIt8P93F7RtVEcBBbnIs7NOTcgc/s400/moreLinus.png" width="400" /></a></div>
<br />
<br />
Ebbene sì, c'è chi dice di avermi visto smanettare con un CD di Linux durante la premiazione del <a href="http://www.technologyacademy.fi/millennium-technology-prize/laureates-2012/">Millennium Technology Prize</a>. Tuttavia credo che ci sia qualche problema con i driver del controller ...o, forse, è colpa della release dell'abito?More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-51144445175646550112012-01-20T16:53:00.000-08:002012-01-20T16:55:16.895-08:00Ma cosa ci guadagnano? Economia individuale del Free Software<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxQMT7jOsI13r1ki2pGM7ftkXULTY4ONexjgYALM9R1kX-2_Ks0m6tyOw5-MqRUlvg96b5uShcKop8BtXt1Qm2Pplohg_sHEG62Jib8F4-sjbL_M2hOl21jPv71SZPMw32klJVx3kTdFI/s1600/donate.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxQMT7jOsI13r1ki2pGM7ftkXULTY4ONexjgYALM9R1kX-2_Ks0m6tyOw5-MqRUlvg96b5uShcKop8BtXt1Qm2Pplohg_sHEG62Jib8F4-sjbL_M2hOl21jPv71SZPMw32klJVx3kTdFI/s320/donate.jpg" width="320" /></a></div>
<br />
Benché, ai tempi, mi fossi prodigato
nello <a href="http://programmatorepercaso.blogspot.com/2010/05/il-didietro-del-free-software.html">coinvolgere</a> una figura di riferimento per fugare ogni vostro
dubbio circa la questione economica individuale di un Programmatore
Free Software,
questa domanda torna, periodicamente, a ronzare intorno alle mie
orecchie.<br />
<br />
<a name='more'></a><br />
Adesso, che <i>per caso</i> mi annoverò anch'io nella fulgida white list di Programmatori Free Software, posso affrontare direttamente il tema con una matura consapevolezza sperando di mettere a tacere definitivamente questo assillante cicaleggio che mi viene rivolto.<br />
<br />
<h3>
Requisiti minimi <span style="font-size: x-small;">del lettore (tu)</span></h3>
<ul>
<li>Richiesta la consapevolezza della distinzione tra software gratuito e <a href="http://www.gnu.org/philosophy/free-sw.html">Free Software</a>. </li>
<li>Una visione olistica.</li>
<li>Una bassa propensione a diventare Programmatore.</li>
<li>...e del tempo da perdere per leggere il resto.
</li>
</ul>
<br />
<h3>
Algoritmo per affrontare la domanda</h3>
Nulla vieta che un Free Software (software libero) possa essere venduto,<br />
ma la libertà della sua licenza implica che esso possa essere liberamente diffuso da chiunque ne venga in possesso,<br />
alla fine, l'equazione, per un Free Software di massa, è che tanto sarà più diffuso tanto meno probabile sarà non trovarlo in forma gratuita.<br />
<br />
<br />
<h3>
Ma un Programmatore cosa guadagna a rilasciare il proprio Free Software gratuitamente?</h3>
<ol>
<li>Niente, ma quando pubblica una nuova release del software si sente illibato come una percoca prima di finire sulla bancarella del fruttivendolo.</li>
<li>Niente, ma tanto non aveva una bega da fare.</li>
<li>Niente, ma non sa fare altro ed è convinto che l'umanità abbia bisogno delle sue doti.</li>
<li>Niente, ma con un sorrissino il fruttivendolo si è interessato alla roadmap delle prossime release.</li>
<li>Niente, ma dicono che faccia curriculum.</li>
<li>Niente, ma cerca uno scopo per continuare a programmare.</li>
<li>Niente, ma la programmazione crea dipendenza.</li>
<li>Niente, ma cerca uno scopo per non stare con la moglie.</li>
<li>Niente, ma la mamma ne va fiera (la moglie no!)</li>
<li>Niente, così forse trova qualcuno che usa il suo software.</li>
<li>Niente, ma magari qualcuno lo aiuta a tappezzare le falle del suo codice.</li>
<li>Niente, ma ebbe conosciuto uno che gli aveva riempito la testa dei concetti di libertà del software.</li>
<li>Niente, ma rincontrò il tizio dei concetti di libertà in manette che gli disse “Non capisco perché scrivi ancora del codice quando puoi scaricare tutto il software piratato che vuoi”</li>
<li>Niente, ma da allora ha le idee confuse e rilascia molte più minor release delle major.</li>
<li>Niente, ma sta valutando se cambiare la licenza del software in una che possa essere piratata in modo da aumentarne la diffusione (???).</li>
<li>Niente, ma ormai ha trovato un posto di lavoro retribuito grazie al suo curriculum.</li>
<li>Niente, è rimasto solo un vizio, ma prima o poi smette.</li>
<li>Qualcosa, forse, ma è stato tanto tempo fa.</li>
<li>Qualcosa, qualcuno deve aver sbagliato versando un credito sulla sua PayPal.</li>
<li>Qualcosa, sono i suoi familiari che lo sostengono con delle donazioni.</li>
<li>Un'esagerazione, una grande multinazionale ha deciso di donargli ingenti somme di denaro.</li>
<li>Un'esagerazione, peccato che l'FBI l'ha indagato per riciclaggio di denaro.</li>
<li>Un'esagerazione, peccato che per pagare gli avvocati, fare il rientro dei capitali, dichiarare al Fisco il suo reddito fortuito e rifondere il supporto economico dei suoi familiari, abbia dovuto pubblicare nuovamente il banner “<i>Donate a beer</i>”.</li>
<li>Un'esagerazione, ma ormai è alcolizzato.</li>
<li>Niente, alla fine il Programmatore duro e puro non è un Business man.</li>
</ol>
<br />
<br />
<br />
<span style="font-size: xx-small;">PS: ma ti sembro il tipo a cui rivolgere seriamente una domanda simile?</span><br />
<ol>
</ol>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com2tag:blogger.com,1999:blog-6964936517594052608.post-4443325383999961962011-10-27T02:21:00.000-07:002012-06-14T14:43:01.260-07:00MoreMania: uno sguardo e - ZACK - amore a prima vista<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiotozGAlPpJ0HVuYIqjeY2ZtF5Y_ONmVU5AmopknR0186i3rnbHhZ-NwiS_hREVZtEDQHB-f8q5oU33R4w8NYt6s0bXx8Q6z8MYUifsikAcxY6-0U9RcMWAFhv239haWU2NiV2s8Wr6F4/s1600/moreZack_seppia.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="265" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiotozGAlPpJ0HVuYIqjeY2ZtF5Y_ONmVU5AmopknR0186i3rnbHhZ-NwiS_hREVZtEDQHB-f8q5oU33R4w8NYt6s0bXx8Q6z8MYUifsikAcxY6-0U9RcMWAFhv239haWU2NiV2s8Wr6F4/s400/moreZack_seppia.jpeg" width="400" /></a></div>
<br />
C'è chi dice di avermi visto a <a href="http://parma.linux.it/news/2011/09/gnulinux-day-2011">Linux Day 2011 di Parma</a> abbracciato a <i>- <a href="http://upsilon.cc/%7Ezack/">ZACK</a> - amore a prima vista</i>, c'è da crederci?<br />
<br />
<a name='more'></a>Allora, perché non analizzare se la foto (in fondo), che mi è stata inviata dal mondo là fuori dal mio Salottino, è un falso oppure no?<br />
In vostro aiuto, potete usare strumenti come <a href="http://errorlevelanalysis.com/">http://errorlevelanalysis.com</a>*<br />
<br />
Ovviamente ci sono anche Geek poco avvezzi agli strumenti informatici, e a questi scrivo il permalink all'analisi dell'immagine: <a href="http://errorlevelanalysis.com/permalink/d67fdf0/">questo è il risultato dell'analisi della foto (devi cliccarci sopra)</a>.<br />
<br />
<br />
[UPDATE] Leggendo i commenti, evinco che Zack si mostra solo seppiato o con inquadrature "spigolose" (???), cercherò di rimediare pubblicandolo, in apertura, nella versione "brodo di seppia", mentre qui sotto trovate la foto originale che mi è stata inviata:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlalK1DkhxD4a_vyXs08mnh1OGQFUg_wR8sCzM0g9pFa8rN9KOYSaxLNAZweqFi0y-VM9rw6oLRlnzdZA-wuXSexJPgURXAix5lF3e2aGIsr4A1MVuA5Ptc0qUhXSaSs6viE1ZWE5xJ9k/s1600/moreZack_def.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlalK1DkhxD4a_vyXs08mnh1OGQFUg_wR8sCzM0g9pFa8rN9KOYSaxLNAZweqFi0y-VM9rw6oLRlnzdZA-wuXSexJPgURXAix5lF3e2aGIsr4A1MVuA5Ptc0qUhXSaSs6viE1ZWE5xJ9k/s320/moreZack_def.jpeg" width="320" /></a></div>
<br />
<br />
<span style="font-size: x-small;"> *Se riuscite a interpretare (a capire) l'immagine ELA, vincete la possibilità di poter succhiarvi lo stecchino di plastica del caffè nel mio Salottino</span>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com7tag:blogger.com,1999:blog-6964936517594052608.post-893103808957798672011-09-28T13:24:00.000-07:002011-09-28T13:51:17.118-07:00Pace ai dinosauri tecnologici: JustPrintFax<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1RI-LtTFX7-3V_V9UaNzCJ8nbM3nOG-EXkvW-B_hwOcJCq7Fzy_1xfp7w0tC60gsYpYrSRnHl0TvHn6xa_Rng2UmLXlhOaToC5O8jARanfV9MLeYR3glHj2Zr3B6ypMJNqdM35N3l8wU/s1600/fax.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="267" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1RI-LtTFX7-3V_V9UaNzCJ8nbM3nOG-EXkvW-B_hwOcJCq7Fzy_1xfp7w0tC60gsYpYrSRnHl0TvHn6xa_Rng2UmLXlhOaToC5O8jARanfV9MLeYR3glHj2Zr3B6ypMJNqdM35N3l8wU/s400/fax.jpg" width="400" /></a></div><br />
Dato che il “coso” è ancora lì, vicino all’armadio del server mail, credevo che almeno si fosse estinta la domanda “Che cos’è un fax?”. E, invece, ecco che le nuove generazioni (<i>Hi-Generation</i> o, se vogliamo essere più attuali: <i>iGeneration</i>) mi pongono quella domanda quando odono lo stridulo mantra di beep del modem che si collega alla linea telefonica. Prima, però, mi chiedono: “Ma quel coso sta per tirare le cuoia?”<br />
<br />
<a name='more'></a><br />
Loro non sanno che un Fax non è solo un apparecchio elettronico per inviare copie di documenti ma è un laborioso rituale aziendale:<br />
Alla mia postazione scrivo un documento, lo giro per email alla ragazza più vicina al Fax con preghiera di spedirmelo subito. Lei stampa il documento, si alza, va alla stampante, prende il foglio e si volta per inserirlo nella presa carta del Fax. <br />
Ma, davanti al parallelepipedo elettronico, si accorge che c’è un’allarmante spia rossa accesa: il toner è in esaurimento, però spiegarle che non blocca l’invio è più faticoso che farle fare le scale. Allora scende al piano di sotto per recarsi all’altro apparecchio. Passando davanti alla macchinetta del caffè, si ferma per due chiacchiere, un sorso e altre due chiacchiere; in seguito raggiunge il Fax, controlla se sul retro del foglio ha segnato con la matita il numero di telefono a cui spedirlo, inserisce il documento nella presa carta, digita il numero e pigia il tasto Invio. Una sequela di beep infuriati e, infine, quel “coso” si aggancia a un altro “coso” da qualche parte nel mondo, ma sempre vicino a una macchinetta del caffè. Terminati i fischi digitali, risale e mi porta un foglio A4, che sembra più una tela del minimalismo, con una minuscola e arida scritta stampata: “Fax inviato il xxxx a xxxx pagine xx”.<br />
Appena finisco di archiviare il report di invio, squilla il telefono e dall’altra parte un tizio mi dice di aver ricevuto via Fax una pagina interamente bianca con il suo numero di telefono annotato in matita e una piccola macchia di caffè. “Rimanga in linea un attimo, per favore; ... <span style="font-size: large;">Carlaaa, quante volte ti devo dire che i fogli vanno inseriti nel Fax a faccia in su?</span>… mi scusi, so che mi ha dato il suo numero di fax, ma non ci sarebbe la possibilità di inoltrarle il documento per email?” <br />
<br />
<br />
<span style="color: #666666; font-size: x-small;">Credit: se leggete questo articolo su una rivista cartacea e porta la mia firma estesa non preoccupatevi: sono io... o forse dovreste preoccuparvi ;-)</span><br />
<br />
<h3>La meteora: JustPrintFax</h3>Ebbene, i fax si inviano e si ricevono ancora oggi; forse questo i programmatori non lo sanno, lo ignorano o pensano di poter deviare questo ancestrale corso.<br />
Quando soppesai la scelta del DE da installare in azienda, il dettaglio del FAX fu determinante; <a href="http://www.kde.org/">KDE</a> 3.x aveva a suo favore il stupendo KDEprintFax: una stampante virtuale che permetteva di inviare come fax, al mio server Hylafax, il documento da un qualsiasi programma, senza la preoccupazione di dover convertire il file nel formato Post Script.<br />
<br />
Ebbene, il nuovo <a href="http://forum.kde.org/viewtopic.php?f=20&t=84561">KDE 4.x non ha più implementato KDEprintFax</a> nel Desktop Environment e sembra che nessun sviluppatore sia interessato a riportarlo in vita. <br />
Dall'altra parte, <a href="http://www.gnome.org/">Gnome</a>, ha l'obeso <a href="http://www.cowlug.org/gfax/">Gfax</a> non più aggiornato dal 2009, che utilizza <a href="http://www.mono-project.com/">Mono</a>, fa tante belle cose che non mi servono, bisogna sudare sette camice per installare la sua stampante virtuale (un giorno vi spiegherò come si fa) e questa funziona unicamente se Gfax è stato avviato... ergo nell'Autostart bisogna caricare anche l'obeso e poco utile Gfax.<br />
<br />
E proprio questa situazione penosa e deprimente mi ha spinto a cercare della alternative, Pyla4Cups, Fax4Cups, ecc.. (<a href="http://www.hylafax.org/content/Desktop_Client_Software">http://www.hylafax.org/content/Desktop_Client_Software</a>) che funzionino semplicemente come delle stampanti.<br />
Alla fine ho optato per chinare la testa sulla tastiera e realizzare <b>JustPrintFax</b>:<br />
<a href="https://sourceforge.net/p/justprintfax/">https://sourceforge.net/p/justprintfax/</a><br />
<br />
Attualmente, la release 0.5 BETA, usa <a href="http://library.gnome.org/users/zenity/stable/">Zenity</a> come UI per visualizzare la dialog* con cui chiedere il numero di fax; ovviamente, stavo già lavorando alla prossima versione per utilizzare anche <a href="http://techbase.kde.org/Development/Tutorials/Shell_Scripting_with_KDE_Dialogs">Kdialog</a> per gli ambienti Qt, ma, un raggio di sole, mi ha indirizzato a realizzare una UI con Python per arricchire con funzionalità aggiuntive il driver... vedremo!<br />
<br />
<i>Stay tuned</i><br />
<span style="font-size: x-small;"><br />
</span><br />
<span style="font-size: x-small;">* Maledetto GDM3, mi ha fatto imprecare non poco. <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586685">http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586685</a> (ovviamente ho risolto l'arcano con <a href="http://it.wikipedia.org/wiki/Sudo">Sudo</a> e sudore vero)</span><br />
<br />
<span style="font-size: x-small;">PS: Sono ben accolte le segnalazione dei beta tester volontari</span>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com2tag:blogger.com,1999:blog-6964936517594052608.post-61546827960292474272011-06-13T13:44:00.000-07:002011-06-13T13:44:32.730-07:00QR che? QR code!<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvU6-EzSv2xVtu9AuuEapaZuOtl8tqE05FefC5iJ1pZsAX_f3q70R1zkvKURJ44EAK7LDyZTP_JcDSJVDQn4cO-MlrsLKzeF6h2Wx3jvcU2AHGLTXdNYfShTHnDvQObNL3ye-KA7I14ms/s1600/QRcode.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="308" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvU6-EzSv2xVtu9AuuEapaZuOtl8tqE05FefC5iJ1pZsAX_f3q70R1zkvKURJ44EAK7LDyZTP_JcDSJVDQn4cO-MlrsLKzeF6h2Wx3jvcU2AHGLTXdNYfShTHnDvQObNL3ye-KA7I14ms/s320/QRcode.jpg" width="320" /></a></div><br />
Una volta scrivevo tracciando con la biro delle belle lettere; poi sono passato a scrivere pigiando su delle organizzate <a href="http://it.wikipedia.org/wiki/QWERTY#QWERTY">QWERTY</a> lettere; adesso mi ritrovo a scrivere quadratini dentro a dei quadrati: sì, avete capito bene, pitto dei <a href="http://it.wikipedia.org/wiki/QR_Code">QR code</a>!<br />
<br />
<a name='more'></a><br />
<br />
Per captatio benevolentiæ di tutti i device muniti di un'ottica (smartphone, webcam...) i QR code sono, o saranno, eletti come “la forma di comunicazione interattiva semplice e immediata”, alla faccia del loro aspetto illeggibile e quasi inguardabile (dimmi cosa vedi in quella macchia) per l'occhio umano.<br />
<br />
Per farla breve, devo trovare il modo più veloce per “leggere” e “scrivere” a quadratini senza dover far ricorso a china, squadre e riga.<br />
<br />
<br />
<h3>Far quadrare un messaggio: scrivere QR code</h3>Per gli “amanti occasionali” esistono dei comodissimi servizi online, tra i quali vi cito:<br />
<a href="http://www.codmmunicator.com/">www.codmmunicator.com</a><br />
<a href="http://qrcode.kaywa.com/">qrcode.kaywa.com</a><br />
<br />
Ma per tutti quelli come me, che hanno la necessità di portarsi sempre appresso lo scribacchino dei quadratini e il controllo assoluto sulla release in uso, ho trovato, nel calderone di migliaia di software o app (che fa più IN) della mia Linux box (Debian), la “app” giusta:<br />
<br />
<a href="http://packages.debian.org/squeeze/qrencode">qrencode</a><br />
<br />
<br />
L'utilizzo è semplice, basta leggersi il manuale (man qrencode) ;-)<br />
Va bene, qualcosina ve la dico; si usa da shell e si digita un comando grossomodo così:<br />
<blockquote><span style="color: #274e13;">qrencode -l M -s 6 -o il_mio_qrcode.png 'Qui scrivo il messaggio'</span></blockquote><br />
Qual è la comodità più lapalissiana? Farsi un veloce script che esegua il comando e ci chieda tramite una GUI, ad esempio Zenity o Kdialog, il messaggio da codificare. <br />
Banalmente, uno script del genere fa il suo (minimo) dovere:<br />
<br />
<blockquote><span style="color: #274e13;">#!/bin/bash -x </span></blockquote><blockquote><span style="color: #274e13;">msg=`zenity --entry --title "Ti creo il QR code" --text "Scrivi il messaggio da codificare" --entry-text="" `</span></blockquote><blockquote><span style="color: #274e13;">qrencode -l M -s 6 -o il_mio_qrcode.png "$msg"</span></blockquote><br />
Lascio a voi il brivido di implementarlo in modo più evoluto, perché da programmatore pigro 2.0 ho scaricato dalla rete un valido front-end per qrencode: <a href="http://code.google.com/p/qtqr/">Qtqr</a> (previo installazione di qrencode, python-zbar e python-qt4).<br />
<br />
<h3>Qualcosa non quadra? Leggere un QR code</h3>Ma cosa c'è di più importate dello scrivere un QR code? Leggerlo! Già, se non si riesce a leggere un QR code, esso diventa più inutile di un francobollo usato.<br />
<br />
Il mio cellulare me lo diede un garibaldino prima che si imbarcasse con gli altri 999, per cui, come potreste intuire, non ho alcuna possibilità di usarlo per decodificare i QR code.<br />
<br />
Mentre con gli occhi scorro sulle scrivanie di tutti i miei colleghi a caccia di uno smartphone, il monitor del mio portatile mi oscura la vista illuminandomi la vita: la webcam!!<br />
Matematicamente mi rendo consapevole che ho tutto l'hardware necessario per la lettura dei QR code, devo soltanto trovare un “app”: zbarcam, presente nel pacchetto zbar-tools di Debian, trasforma la propria webcam in un scarso (scarsissimo) lettore di codici, a tal proposito non invito nessuno a usare questi strumenti come cassa automatica del negozio.<br />
<br />
Ma, se avete installato Qtqr, avrete già scoperto che esso ha una più comoda interfaccia che usa le zbar librerie.<br />
<br />
<h3>Maggiori informazioni</h3>QR code è uno standard ISO: <a href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=43655">ISO/IEC 18004:2006</a><br />
<br />
Strumento online per decodificare immagini QR code <a href="http://www.onlinebarcodereader.com/">www.onlinebarcodereader.com</a>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-46730205069994828712011-04-29T18:16:00.000-07:002011-05-03T01:58:30.536-07:00La cicala e la formica: CKeditor vs TinyMCE<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKcWE8lwkWpATM1hT9pAU1FnkqRwIS8QswZ5933Q_LZjQO9uizeIf9RRnvKlQAXX7O0CHJMv2cn3YGvqQBwOoWY5c-z6Mjn_mKHP1gJXAUHNUSPz4KdbNMj-jzoW3w3UEv2J-6eKh07Lo/s1600/CicalaFormica.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKcWE8lwkWpATM1hT9pAU1FnkqRwIS8QswZ5933Q_LZjQO9uizeIf9RRnvKlQAXX7O0CHJMv2cn3YGvqQBwOoWY5c-z6Mjn_mKHP1gJXAUHNUSPz4KdbNMj-jzoW3w3UEv2J-6eKh07Lo/s1600/CicalaFormica.png" /></a></div><br />
Rammentate la favola de “la cicala e la formica” di Esopo? Forse ricordate quella adattata da <a href="http://it.wikipedia.org/wiki/Jean_de_La_Fontaine">Jean de La Fontaine</a>, ma sicuramente non conoscete la variante 2.0.<br />
<br />
<a name='more'></a><br />
<br />
C'era una cicala che cantava:<br />
<blockquote><i>It's fast! Faster than ever!</i><br />
<i>Since the very beginning, we always have considered performance as the basis for our development. The final results are amazing, bringing yet another unique feature that you'll find only with CKEditor.</i></blockquote><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj296aWUmpl5FMEjillRZh_fSbeQ6AP0_AZItJJWqJ63_5B3AJgtfFdbwUTl4PQH8Xo60bdvl886mu7gKiLNoejr_-_aMU6MjzBOlztpwAvbvRRwxuK0Sghm0zQYbMshE92Sxh0lyCQ_r8/s1600/ck_cicala.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="166" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj296aWUmpl5FMEjillRZh_fSbeQ6AP0_AZItJJWqJ63_5B3AJgtfFdbwUTl4PQH8Xo60bdvl886mu7gKiLNoejr_-_aMU6MjzBOlztpwAvbvRRwxuK0Sghm0zQYbMshE92Sxh0lyCQ_r8/s400/ck_cicala.png" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;"><br />
</div>...e una formica che raccoglieva mattoni per l'inverno.<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjECno4n59gSKRTzgzerbHMPGDJjwo2hwFnjLL28hqueIBhYN8Bt9Jn6ZAelcqr6eCoCME3DptCYrGWQGHisMPMeOaBY_9yMCy1upMuDMuV8IgfUjH1PuMwGgVl1wupbI2vqSqErGo3a8/s1600/Tiny_formica.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="166" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjECno4n59gSKRTzgzerbHMPGDJjwo2hwFnjLL28hqueIBhYN8Bt9Jn6ZAelcqr6eCoCME3DptCYrGWQGHisMPMeOaBY_9yMCy1upMuDMuV8IgfUjH1PuMwGgVl1wupbI2vqSqErGo3a8/s400/Tiny_formica.png" width="400" /></a></div><br />
<br />
Un bel giorno...<br />
<br />
<h3>L'inverno arrivò: Benchmark di comparazione tra CKeditor e TinyMCE</h3>Raccogliete tutta la legna da ardere, i flame zampillano.<br />
<br />
Per questo tecnicissimo benchmark ho utilizzato le ultime release disponibili dei due famosi Javascript WYSIWYG Editor:<br />
<a href="http://tinymce.moxiecode.com/download/download.php">TinyMCE</a> - release 3.4.2 <br />
<a href="http://ckeditor.com/download">CKeditor</a> - release 3.5.3<br />
<br />
NOTE: Per entrambi non ho utilizzato tool aggiuntivi di compressione, framework javascript (jquery), classi PHP per istanziare gli oggetti, ecc... insomma li ho presi così come papà li ha fatti, e ho caricato gli editor JS in un'identica pagina HTML personalizzando la toolbar in modo da renderli, a livello funzionale, identici.<br />
<br />
<br />
<h4>Prima le conclusioni</h4>Ecco i miei personalissimi giudizi elaborati dal benchmark:<br />
<table border="1" cellpadding="4" style="border: 1px; padding: 4px;"><tbody>
<tr> <td></td><td><b>CKeditor</b></td><td><b>TinyMCE</b></td> </tr>
<tr> <td>Spazio su disco</td><td>0</td><td>1</td> </tr>
<tr> <td>Installazione</td><td>1 </td><td>0</td> </tr>
<tr> <td>Aspetto</td><td>1</td><td>0</td> </tr>
<tr> <td>Velocità</td><td>0 </td><td>1</td> </tr>
<tr> <td>Output </td><td>0</td><td>1</td> </tr>
<tr> <td><b>Totale AND</b></td><td><b>0</b></td><td><b> 0</b></td> </tr>
<tr> <td><b>Totale OR</b></td><td><b>1</b></td><td><b> 1</b></td> </tr>
<tr> </tr>
</tbody></table><span style="font-size: xx-small;">Totali calcolati secondo una logica binaria, per un'altra logica fate vobis ;-)</span><br />
<br />
..volete continuare a leggere?<br />
<br />
<h4>Spazio disco: quando lo spazio non basta mai</h4>Soprattutto quando tale spazio ci viene centellinato da un servizio di hosting. I sorgenti salvati sul disco dicono che i due editor vestono taglie differenti:<br />
<br />
<b>TinyMCE</b>: 2.1 Mb (samples esclusi)<br />
<b>CKeditor</b>: 6.3 Mb (samples esclusi)<br />
<br />
Spezzando una lancia in favore a CKeditor, possiamo dire che esso offre la comodità di includere “on the box” il supporto per tutte le lingue, mentre il suo rivale TinyMCE ha optato per una soluzione più snella includendo soltanto la lingua inglese e dando l'opportunità, attraverso un pratico <a href="http://tinymce.moxiecode.com/i18n/index.php?ctrl=lang&act=index&pr_id=7">servizio online</a>, di scaricare le ulteriori ed eventuali lingue di cui potremmo aver bisogno.<br />
<br />
Tuttavia, pur rimuovendo dal calcolo dello spazio il supporto a tutte le lingue, la prova bikini per CKeditor rimane comunque deludente:<br />
<br />
<b>TinyMCE</b>: 2 Mb (samples e languages esclusi)<br />
<b>CKeditor</b>: 4 Mb (samples e languages esclusi)<br />
<br />
<h4>Installazione: il fai-da-te del webmaster</h4>L'obeso CKeditor si prende una piccola rivincita, per personalizzare la toolbar dell'editor nella pagina HTML di test, esso si dimostra più leggero, intuitivo e a prova di <a href="http://it.wikipedia.org/wiki/RTFM">RTFM</a> ("Leggiti il fottuto manuale”). Già, TinyMCE, per quanto concerne la personalizzazione della toolbar, ha una sintassi opulenta e meno flessibile, infatti prima o poi ci si scorna con il fatto che per visualizzare alcuni pulsanti bisogna configurare anche il plugin relativo... ed eccoci a spulciare la ricca documentazione per scoprire il nome dell'oscuro plugin da scrivere.<br />
<br />
<u>Righe del codice di test per l'init di</u><u> TinyMCE:</u><br />
<blockquote><span style="font-size: x-small;"><span style="color: #4c1130;">tinyMCE.init({</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> mode : "textareas",</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme : 'advanced', </span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme_advanced_toolbar_location : 'top', </span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme_advanced_toolbar_align : 'left', </span><br style="color: #4c1130;" /><span style="color: #4c1130;"> plugins : 'paste,table,searchreplace',</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme_advanced_buttons1 : 'code,pastetext,|,undo,redo,|,bold,italic,strike,sub,sup,|,bullist,numlist,|,charmap',</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme_advanced_buttons2 : 'search,replace,|,blockquote,link,unlink,tablecontrols',</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme_advanced_buttons3 : 'formatselect,anchor,hr,image',</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme_advanced_statusbar_location : "bottom",</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> theme_advanced_resizing : true</span><br style="color: #4c1130;" /><span style="color: #4c1130;"> });</span></span></blockquote><br />
<u>Righe del codice di test per l'init di CKeditor: </u><br />
<blockquote style="color: #274e13;"><span style="font-size: x-small;"> CKEDITOR.replace( 'Editor',<br />
{<br />
fullPage : false,<br />
toolbar :<br />
[<br />
['Source','PasteText'],<br />
['Undo','Redo','-', 'Bold', 'Italic', '-', 'BulletedList', 'NumberedList', '-', 'SpecialChar' ],<br />
'/',<br />
['Find','Replace','-','Blockquote','-','Link','Unlink','Anchor', '-','Table'],<br />
'/',<br />
['Format', 'HorizontalRule', 'Image'],<br />
]<br />
});</span></blockquote><br />
<br />
Per le pagine test che ho realizzato, il peso dell'inizializzazione dei due editor è così ripartito (uhè, son briciole ;-) )<br />
<br />
<b>TinyMCE</b>: 543 byte (inline)<br />
<b>CKeditor</b>: 343 byte (inline)<br />
<br />
<h4>Aspetto: l'abito non fa il monaco?</h4>Non ho mai sentito parlare di un benchmark che prende in esame l'aspetto di un software, bene, ecco perché sento il dovere tecnico di considerare anche questo punto. Ovviamente non è un'analisi oggettiva e ci sarà chi dirà “basta installare un tema differente”... già.<br />
L'adiposo CKeditor ha un aspetto paffuto e morbido, mentre il suo rivale è noiosamente piatto e asciutto. <br />
<br />
Nel contempo, il paffuto CKeditor porta in seno delle icone a "dente di sega" mentre l'asciutto TinyMCE nutre meglio la definizione delle sue icone.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZUVgbaHu05uGur7epNPe_cGYHNJ9-nIqDXvDjhAhNfDlfRC1PRfXXXNM0LDRklhZ6O4LkKWBsXLp2YsJyx0c-ahSeYMF05yO3ADDqbyURrodTYy-MfMLGzmKnMDpGdgsj-ZzXrWnMioc/s1600/aspetto.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="365" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZUVgbaHu05uGur7epNPe_cGYHNJ9-nIqDXvDjhAhNfDlfRC1PRfXXXNM0LDRklhZ6O4LkKWBsXLp2YsJyx0c-ahSeYMF05yO3ADDqbyURrodTYy-MfMLGzmKnMDpGdgsj-ZzXrWnMioc/s400/aspetto.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-size: xx-small;">(Clicca per ingrandire)</span></td></tr>
</tbody></table>Infine, la dialog che si apre premendo il pulsante “link”, spezza il mio indugio a favore di CKeditor.<br />
CKeditor utilizza una "finestra" disegnata con una div sovrapposta all'interno della pagina html, risultato così più ordinata e funzionale (non si perde nella barra delle applicazioni aperte) rispetto l'antica soluzione del pop-up utilizzata da TinyMCE; inoltre il contenuto della dialog per l'inserimento del link di CKeditor è più chiaro e completo del suo rivale.<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWuvHALjQYcN3z2yorGmGS9yI41JxbSWv5SkjeTw1Rl559Dq9rev587Mh8Lte9xdF3Mj8_vxlhY-R4N5RTFVlvZK7ysFVXjNCQboS6hrr10NmWTwbqdU27wnY_VEr0ws3NlChOwSJ3FZw/s1600/dialog.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="195" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWuvHALjQYcN3z2yorGmGS9yI41JxbSWv5SkjeTw1Rl559Dq9rev587Mh8Lte9xdF3Mj8_vxlhY-R4N5RTFVlvZK7ysFVXjNCQboS6hrr10NmWTwbqdU27wnY_VEr0ws3NlChOwSJ3FZw/s400/dialog.png" width="400" /></a></div><br />
<br />
La sensazione di “paffuto” trasmessa da CKeditor, di fatto risulta essere anche un gonfiore reale: il peso dei CSS e relative immagini che il mio browser si è dovuto succhiare dalla pagina test è:<br />
<br />
<b>TinyMCE</b>: 29,6 Kb<br />
<b>CKeditor</b>: 44,7 Kb<br />
<br />
<h4>Veloce? Ascoltiamo la banda municipale</h4>La velocità di caricamento di una pagina remota dipende essenzialmente dal binomio: quanti chili pesa la pagina e quanti chili l'utente scarica al secondo. Dato che il secondo parametro è relativo e vincolato per ciascun navigatore, il webmaster può soltanto (o quasi, l'equazione non è così lineare) agire sul peso della pagina remota per influire sulle velocità di caricamento. Pertanto possiamo semplificare affermando che più una pagina è leggera più essa sarà veloce ad essere caricata, nelle medesime condizioni, sul browser dell'utente.<br />
<br />
<br />
Ebbene, taccio il mio cicaleccio e vi lascio questa esplicativa e silenziosa carrellata di screenshot comparativi dei report di Yslow sulla pagina test:<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdCVgK3Ygf306hJyzxtWvIO6MHjY3SdnWL6jZRc6QTBlB95-lginkMhPXbr29KrRZXwi6s9DJCxsHSzcgx2EMJS_Nb6QzVX2RxBK5fRckytLBfOs6krvJUFhICcvO_7lgi_y3w4Vbd7fo/s1600/CK_peso.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="338" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdCVgK3Ygf306hJyzxtWvIO6MHjY3SdnWL6jZRc6QTBlB95-lginkMhPXbr29KrRZXwi6s9DJCxsHSzcgx2EMJS_Nb6QzVX2RxBK5fRckytLBfOs6krvJUFhICcvO_7lgi_y3w4Vbd7fo/s400/CK_peso.png" width="400" /> </a> </div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: x-small;">In queste statistiche sono stati considerati i componenti compressi (GZip) in quanto il mio server web ha quest'opzione predefinita</span></div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj229_IH2Imt55h0l2_p3uo2Stgee7ivZ7woT4lkP9NVpacrOXI8-uhhXF6JOeSOC4kWYIBLA1cSV3TZsJum9ySOU373WO0wYJrQylgnCwMbXoiOCnW-Zr6SW1Aw7R5JENLK17H1YIKMKQ/s1600/CK_peso2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj229_IH2Imt55h0l2_p3uo2Stgee7ivZ7woT4lkP9NVpacrOXI8-uhhXF6JOeSOC4kWYIBLA1cSV3TZsJum9ySOU373WO0wYJrQylgnCwMbXoiOCnW-Zr6SW1Aw7R5JENLK17H1YIKMKQ/s400/CK_peso2.png" width="385" /> </a></div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: x-small;">In questa tabella la lista dei file e i loro pesi per i due editor, notare il peso nel caso in cui non si usasse la compressione GZip</span></div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;">Con quest'ultima foto vediamo il Giudizio complessivo attribuito dall'analisi di YSLOW (A: giudizio ottimo - Z: giudizio pessimo)</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCp4HJQVbI2I2o_QOuxdPlUgWGNtN2zzhzedzORDe1lGhyphenhyphenoxfrnkrb5zxDsfk299de340NwFwRUpsg421yOsW4YRLI-RkYH5Aw5g349KjCS7nRln-wG9_1hJnSiq_WVceF6fsyq6L4no4/s1600/CK_grade.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCp4HJQVbI2I2o_QOuxdPlUgWGNtN2zzhzedzORDe1lGhyphenhyphenoxfrnkrb5zxDsfk299de340NwFwRUpsg421yOsW4YRLI-RkYH5Aw5g349KjCS7nRln-wG9_1hJnSiq_WVceF6fsyq6L4no4/s400/CK_grade.png" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><br />
<h4>Output: licenza poetica o errore?</h4>Copiando velocemente un semplice testo formatto da OpenOffice sui due editor caricati con lo stesso browser (Chromium), si nota una differenza di sintassi nel codice HTML di output.<br />
<br />
Questo è il testo campione incollato nei due editor da una pagina di OpenOffice:<br />
<blockquote><span style="font-weight: normal;">normale</span><br />
<b>bold</b><br />
<i><span style="font-weight: normal;">corsivo</span></i><br />
<span style="font-family: 'URW Bookman L';"><span style="font-size: medium;"><span style="font-weight: normal;">font</span></span></span><span style="text-decoration: underline;"><span style="font-weight: normal;"></span></span></blockquote><blockquote><span style="text-decoration: underline;"><span style="font-weight: normal;">sottolineato</span></span><br />
<span style="color: red;"><span style="font-weight: normal;">colore</span></span><br />
<ol><li><br />
<span style="font-weight: normal;">punto elenco</span><br />
<br />
</li>
</ol></blockquote><br />
E questo è l'output ottenuto con CKeditor:<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEcH8f2mjidhOVBsev5SxCRIlFfGuJeAmSadvLsWFy51X4CsQqkiGl9YM_5WP69cH58HPCD2E8syiA-fcvWXxPfsIqKKkzDdW9g3ix3EXtE2lnBZFeE9G-2AQdsRUleyKvUDcvMZFSF2M/s1600/CK_code.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="198" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEcH8f2mjidhOVBsev5SxCRIlFfGuJeAmSadvLsWFy51X4CsQqkiGl9YM_5WP69cH58HPCD2E8syiA-fcvWXxPfsIqKKkzDdW9g3ix3EXtE2lnBZFeE9G-2AQdsRUleyKvUDcvMZFSF2M/s400/CK_code.png" width="400" /></a></div><br />
<br />
Mentre questo è l'output ottenuto con TinyMCE:<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcxhLcmPDdHkWg_qnY73U_03Ydp424fBbnJBJMyVOOqCXyBwuaB3-FK5C2ifkfTY1nWWkEtMsnfZsxJqAT4XCCrerNKbpyswFNHj_dkvzEl9lD8uyoJghuMYi6uZvNMNXvHukGwzaVxrA/s1600/Tiny_code.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcxhLcmPDdHkWg_qnY73U_03Ydp424fBbnJBJMyVOOqCXyBwuaB3-FK5C2ifkfTY1nWWkEtMsnfZsxJqAT4XCCrerNKbpyswFNHj_dkvzEl9lD8uyoJghuMYi6uZvNMNXvHukGwzaVxrA/s400/Tiny_code.png" width="400" /></a></div><br />
Ho evidenziato le parti del codice di output che differiscono tra i due editor.<br />
<span style="font-weight: normal;">In HTML5 non c'è alcun errore nell'utilizzare il tag B o STRONG, cambia però la <a href="http://www.gleenk.com/bold-e-italic-cosa-cambia-con-html5/">valenza del testo racchiuso</a>. Lo stesso discorso vale per i tag I e EM.<br />
<br />
</span><br />
<div style="margin-bottom: 0cm;"><span style="font-weight: normal;"><span style="font-weight: normal;">Più "poetico" ma meno corretto invece è l'utilizzo del deprecato <a href="http://www.w3schools.com/html5/tag_u.asp">tag U</a> per il sottolineato e del <a href="http://www.w3schools.com/html5/tag_font.asp">tag FONT</a> per lo stile del font.</span></span></div><span style="font-weight: normal;"><br />
Diciamo, quindi, che, dall'elaborazione di questo semplice testo formattato, TinyMCE risulta essere più attento alla sintassi del codice.</span><br />
<br />
<br />
<h4>Considerazioni riassuntive</h4>Se siete arrivati a leggere fin qui vi fate più scrupoli di quanti me ne faccio io (e son tanti), ma ricordatevi che la scelta di un Javascript WYSIWYG Editor non è una strada senza ritorno, anche se doveste scegliere un editor dal nome inquietante come <a href="http://www.siteroller.net/projects/moorte/">MooRTE</a>.<br />
<br />
<h3>Informazioni utili</h3>Non dimentichiamoci che esistono centina di Javascript WYSIWYG Editor; qui, ad esempio, trovate un ricco elenco: <a href="http://www.htmlarea.com/directory/Web_Software_Components/WYSIWYG_Editors/">www.htmlarea.com</a><br />
<br />
Eventualmente, da "very dirty developer", possiamo sempre crearcene uno noi, con pochi byte e poco sforzo: <a href="http://javascript.html.it/articoli/leggi/2269/costruire-un-web-editor-wysiwyg/">http://javascript.html.it/articoli/leggi/2269/costruire-un-web-editor-wysiwyg/</a>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-88991200157546362502011-03-10T01:20:00.000-08:002011-03-15T01:46:43.213-07:00Restyling: tossina botulinica contro le rughe<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLkXIw9Pf1OtIWPI2SDpkzAaWpXQ9i5vBp0Xi3z0LC5PDqi9hlpirdSdEdbyliP9tSDe4KEkpYhg8vb_VPJA_mP3LJXALzj6rRlHA1SUo0KA23x9euDKndjGWazTTGddLBeBVkqdSiexM/s1600/botox-treatment.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLkXIw9Pf1OtIWPI2SDpkzAaWpXQ9i5vBp0Xi3z0LC5PDqi9hlpirdSdEdbyliP9tSDe4KEkpYhg8vb_VPJA_mP3LJXALzj6rRlHA1SUo0KA23x9euDKndjGWazTTGddLBeBVkqdSiexM/s320/botox-treatment.jpg" width="320" /></a></div><br />
In quest'epoca è una prassi diffusa, anzi obbligatoria, investire delle risorse (economiche e non) per “farsi belli”, e il software non si esime da questa tendenza. A salvarci dagli effetti di tale deviazione, per fortuna, è l'indiscutibile fatto che la bellezza è soggettiva.<br />
<br />
<a name='more'></a><br />
<br />
<h3>La corrida: Windows Seven vs Mac OS X Lion vs KDE 4.6 vs Gnome 3</h3>Adesso affondiamo i nostri canini in un classico, ma non comune, confronto:<br />
<i>Windows Seven vs Mac OS X Lion vs KDE 4.6 vs Gnome 3</i><br />
come se fossero quattro diverse utilitarie esposte in una concessionaria e per le quali ci è stato chiesto di giudicarle esclusivamente guardando le foto dei depliant. <br />
<br />
<br />
<br />
<h4>KDE 4.6</h4><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQhKTrLkBMiQMVxwDUH4qgEZ1NIzJB1oACTkfo05yfFnkVzNUQRstZj2qlXmgX5uJ8F60PAFSpKknrB1n6fQpmeD7QPfzl3Jv1fxrGIafz8AazFsiX1ToxcmVEQYx9p0LYxFnpdMr1Y5U/s1600/similitudineKDE.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQhKTrLkBMiQMVxwDUH4qgEZ1NIzJB1oACTkfo05yfFnkVzNUQRstZj2qlXmgX5uJ8F60PAFSpKknrB1n6fQpmeD7QPfzl3Jv1fxrGIafz8AazFsiX1ToxcmVEQYx9p0LYxFnpdMr1Y5U/s320/similitudineKDE.jpg" width="320" /></a></div><div><br />
</div>KDE segue la rotta de “<i>Il moderno tamarro</i>”, purtroppo quei tocchi moderni stanno diventando prepotentemente aggressivi nei confronti di una più essenziale e beata eleganza che si intravede tra le righe.<br />
Una modernità tradotta in trasparenze, ombre e luci effetto neon ricorda un futuro vecchio. Chi di noi, guardando un vecchio film ambientato nel futuro, non si è trattenuto dal pensare: “come avevano immaginato vecchio il futuro”. Ebbene, gli screenshot di KDE 4.6 mi ricordano l'opera di quei registi che eccedevano con l'evocazione di elementi che, per loro, erano rappresentativi del futuro.<br />
<br />
<br />
<h4>Windows Seven</h4><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvi8BcwuJFB5O_wHhyx2Y2tXClHJo0vZharCgtCgzWplPP-N4yrdMM1WWxqmyf57UAsixyex6BFveXC_fBVWRYwbwQpMM0ig7TgnSsHPZsMqg8lPPV6l6kTry9ZhLb_K9AKO9dGpEBcYo/s1600/similitudineWindows.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvi8BcwuJFB5O_wHhyx2Y2tXClHJo0vZharCgtCgzWplPP-N4yrdMM1WWxqmyf57UAsixyex6BFveXC_fBVWRYwbwQpMM0ig7TgnSsHPZsMqg8lPPV6l6kTry9ZhLb_K9AKO9dGpEBcYo/s320/similitudineWindows.jpg" width="320" /></a></div><div><br />
</div>Windows Seven segue la rotta del “<i>Prodotto Bio con ingredienti OGM</i>”. Un prodotto di uso e consumo di massa snellito per ridurre l'impatto negativo con l'utente ma, nel contempo, utilizzando, in quella miscela, ologrammi tattoo e una vecchia argenteria lucidata a nuovo (pulsanti).<br />
<br />
<br />
<h4>Mac OS X Lion</h4><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQQRnyYpP8G_MQDBkZGxxq0QLdM-bss3WfWsl5RTXj78R8iRZgXQDbO42utyhlhevgt5Rd1GMwMebzQZaoX0REosMYuzwUf6R-Id8Bzju2qUUgct7SwfAQg0Bgzz2B_tvEBRYQ8i7CClM/s1600/similitudineMAC.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQQRnyYpP8G_MQDBkZGxxq0QLdM-bss3WfWsl5RTXj78R8iRZgXQDbO42utyhlhevgt5Rd1GMwMebzQZaoX0REosMYuzwUf6R-Id8Bzju2qUUgct7SwfAQg0Bgzz2B_tvEBRYQ8i7CClM/s320/similitudineMAC.jpg" width="320" /></a></div><div><br />
</div>Mac OS X Lion segue la rotta del “<i>I miei occhi hanno visto cose che voi umani non potreste mai immaginare</i>”. L'uso della “profonda” tridimensionalità della dock, che sembrerebbe rimanere anche in questa prossima versione, è paragonabile alla spada laser dei Cavalieri Jedi di Guerre Stellari in una sparatoria nelle strade di New York: attrae solo i “Jedi”.<br />
<br />
<br />
<h4>Gnome 3</h4><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJZ3bkC_mfq-_jlxRHWW97B_9tal1_VKxKzvZbSQStAOt8CetwV30hkFecUTOV36SIWhgWoByCD01THWDeDs5B7fyWqPrfjFMXFHIczShNmmUCm0pQ7h16LSWxbnoCprwVhi4bLr7N_68/s1600/similitudineGnome.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJZ3bkC_mfq-_jlxRHWW97B_9tal1_VKxKzvZbSQStAOt8CetwV30hkFecUTOV36SIWhgWoByCD01THWDeDs5B7fyWqPrfjFMXFHIczShNmmUCm0pQ7h16LSWxbnoCprwVhi4bLr7N_68/s320/similitudineGnome.jpg" width="320" /></a></div><div><br />
</div>Gnome 3 segue la rotta del “<i>I bisogni dovrebbero essere minimal</i>”. L'aspetto dell'atteso Gnome 3 è un minimal look elegante e sobrio, ma, forse per far fede al concetto di <i>minimal</i>, risulta essere un minimal restyling, infatti, per essere una major release, si porta appresso ancora troppi elementi “vecchi” della versione precedente.<br />
<br />
<br />
<h3>Fatti non foste a viver come bruti</h3>Orbene, il bruto che è in me è andato a caccia del brutto in loro. Una breve carrellata su alcuni dettagli del futuro (niente di nuovo) disegnato nei nuovissimi Desktop Environment:<br />
<br />
<h4>I Window Buttons</h4><b><br />
</b><br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhf1GBnyttI07kCDRG7ej4H9wzwm8x8izGZ6UINlbIRCEmDdWvn-YG8UwN9ynEEbqdcXxFYjI8-aulURJQ6nCY2z0zz5_De9pzwKDc-YAzctp3yIj078Ul3BmxwKVI9siYUfsS-bitmh-0/s1600/KDE_Buttons.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhf1GBnyttI07kCDRG7ej4H9wzwm8x8izGZ6UINlbIRCEmDdWvn-YG8UwN9ynEEbqdcXxFYjI8-aulURJQ6nCY2z0zz5_De9pzwKDc-YAzctp3yIj078Ul3BmxwKVI9siYUfsS-bitmh-0/s1600/KDE_Buttons.png" /></a><b>KDE 4.6</b> ritiene che l'utente sia un abile arciere, con questa convinzione ha pensato, in un'ottica errata di essenzialità e pulizia, di minimizzare gli usatissimi pulsanti (Iconizza, Massimizza e Chiudi) in tre piccoli testicoli di topo.<br />
<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjd0y2aZiIPXswkv4HR3u7OFh_JSYTbNGP6DBxNtpQD__A_yEmgwigB-3qr7pwLmDHXQv8KXE7e-3-EFuG6a6srSkQ8qmgZQCiVJEQV2rJeVvIzIUbrMbqSXj-UKkKG_UNKGBjxaJ0HbHU/s1600/mac3_buttons.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjd0y2aZiIPXswkv4HR3u7OFh_JSYTbNGP6DBxNtpQD__A_yEmgwigB-3qr7pwLmDHXQv8KXE7e-3-EFuG6a6srSkQ8qmgZQCiVJEQV2rJeVvIzIUbrMbqSXj-UKkKG_UNKGBjxaJ0HbHU/s1600/mac3_buttons.png" /></a><b>Mac OS X Lion </b>viaggia su tutt'altra sponda: le palle devono stare a sinistra. Pur sempre rimangono piccole palle di topo. La sua (e dei suoi predecessori) brillante idea di accessibilità è stata quella di rimuovere i simboli e colorarle come un semaforo da balera degli anni '80, ma ahimè tale concetto di accessibilità si scontra con le realtà tipo il daltonismo e i device monocromatici.<br />
<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgr4NcOIZCtxGb14iTkaRJTBwMl-SPtWcbOSBVCGTNk3amgvyKJaIh4EFEqy-fJPy9nn0NsignyCc-ypdBxj-Ox8vWRfggAKxJfbuFc6UkmhKp75ZNOhJ7km-vcCgcjMvrmIxPsM2yF4AA/s1600/Windows_buttons.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgr4NcOIZCtxGb14iTkaRJTBwMl-SPtWcbOSBVCGTNk3amgvyKJaIh4EFEqy-fJPy9nn0NsignyCc-ypdBxj-Ox8vWRfggAKxJfbuFc6UkmhKp75ZNOhJ7km-vcCgcjMvrmIxPsM2yF4AA/s1600/Windows_buttons.jpg" /></a><b>Windows Seven</b> identifica bene i pulsanti, dando maggiore risalto a quello più strategico (il Chiudi). Purtroppo, il look di quei pulsanti risulta una lucidatura di un oggetto vecchio. L'effetto glass, l'illusione del rilievo e il doppio contorno iniziano a soffrire dell'olezzo di una stantia modernità; inoltre il loro aspetto nell'immagine complessiva della finestra è troppo enfatizzato, tanto da invitare prepotentemente l'utente a chiudere la finestra appena aperta!<br />
<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmk0kF3lcdCrBRq7Vf0gdYpKSBa9OkEb1ifRs5Pq_tOzbATPuYMbhdsiwNqrQwAnYf1hKOfDNOFSjp8j7XD4X5DOZ5ynF2D2KGdPr4Np2aaEuVZ9ABbRJqqRbgGlt3gteW9niZ1ZC51Ms/s1600/Gnome_Buttons.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmk0kF3lcdCrBRq7Vf0gdYpKSBa9OkEb1ifRs5Pq_tOzbATPuYMbhdsiwNqrQwAnYf1hKOfDNOFSjp8j7XD4X5DOZ5ynF2D2KGdPr4Np2aaEuVZ9ABbRJqqRbgGlt3gteW9niZ1ZC51Ms/s1600/Gnome_Buttons.png" /></a><b>Gnome 3</b> pondera meglio la comodità d'uso (un'area cliccabile grande) con un aspetto sobrio, elegante e uniforme alla finestra. Per aggiudicargli un voto più alto, mi aspetto però che quando il cursore si posizioni sopra i pulsanti questi vengano evidenziati con dei forti e significati colori, come il rosso per il chiudi e così via ...ma dallo screenshot questo non si può sapere.<br />
(AGGIORNAMENTO: l'odierno freeze dell'interfaccia grafica, conferma, a differenze dell'immagine riportata qui, l'assenza dei pulsanti Minimizza e Massimizza. Sarò tradizionalista, ma questo concetto di Minimal sta divento troppo estremo per i miei gusti, ed ecco un hack che dovrebbe dar pace ai tradizionalisti come me: lanciando questo comando da shell dovrebbero ricomparire i tasti:<br />
<br />
<pre><span class="Apple-style-span" style="color: #274e13;">gconftool-2 --set "/apps/metacity/general/button_layout" --type string ":minimize,maximize,close"</span> )</pre><br />
<br />
<br />
<h4>La system tray</h4>Per la system tray le differenze tra i vari DE si stanno appianando, sembrerebbe che i vari programmatori condividano la medesima tendenza a una grafica più discreta, essenziale e meno invasiva. Il trend sembra essere ormai segnato, giudicate voi:<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisLoeE0kgmvSXFSFiq3LmtY1JeBnwp6fBxFUhposHqqRxX4M-8OLuYNJGMhoePOcpoPa4ocEcPTayCVXk_HyR85HFtWFu1AkG4R7c1Jhe0wAV4jzucB-0_hyY96Sr8dXZM72CVWcVHPaY/s1600/Mac_Tray.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="28" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisLoeE0kgmvSXFSFiq3LmtY1JeBnwp6fBxFUhposHqqRxX4M-8OLuYNJGMhoePOcpoPa4ocEcPTayCVXk_HyR85HFtWFu1AkG4R7c1Jhe0wAV4jzucB-0_hyY96Sr8dXZM72CVWcVHPaY/s320/Mac_Tray.jpg" width="320" /></a></div><br />
<b>Mac OS X Lion</b> continua ad adottare le icone monocromatiche minimal style e ben definite.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYdQpC6l5Qp-Kb2xIP5VkGj-gSjYYinKhu1dL1gCHTU5k3_UuO76cx3ighTAcvXc-hsdz8u-oDC_VBcsk0CxdmE3omKHrF_0Ysu_u3tK47jvOu5lSYos4YAt1WqgRFYbteE7YJn3hgPkY/s1600/Gnome_Tray.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="43" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYdQpC6l5Qp-Kb2xIP5VkGj-gSjYYinKhu1dL1gCHTU5k3_UuO76cx3ighTAcvXc-hsdz8u-oDC_VBcsk0CxdmE3omKHrF_0Ysu_u3tK47jvOu5lSYos4YAt1WqgRFYbteE7YJn3hgPkY/s320/Gnome_Tray.png" width="320" /></a></div><br />
<b>Gnome 3</b> ricalca lo stile minimalista di Mac OS X scegliendo però una cromia piatta in negativo.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0FIcNc-XfOIY7K56KAVrVWXdfziqbw02H_IIjFCRMWXYwR600k3ypIT-PMosmdJ-1xegA3WBNPxnVyYbtMy-a4Wg3kD8y7oKDEJ7yjCQSffwypRREJPmE_k4XDUn0-pRKzEHV-sB99ug/s1600/Windows_Tray.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="35" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0FIcNc-XfOIY7K56KAVrVWXdfziqbw02H_IIjFCRMWXYwR600k3ypIT-PMosmdJ-1xegA3WBNPxnVyYbtMy-a4Wg3kD8y7oKDEJ7yjCQSffwypRREJPmE_k4XDUn0-pRKzEHV-sB99ug/s320/Windows_Tray.png" width="320" /></a></div><br />
<b>Windows Seven</b> segue la stessa tendenza dei suoi concorrenti.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXFQ5UmZ7MxJdv9hP2BQwxfCd8ZyVz7U-kG9qrZFufst7lerXdzPR4BqOltUuqCgb9HoRLWDtbB6gYR4P-jtBZFMFXrJ7TLTVf7Q7EdPpd7LyGhuVpf8keAsYTcnbA-MiVkjCHO6lYIUo/s1600/KDE_Tray.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXFQ5UmZ7MxJdv9hP2BQwxfCd8ZyVz7U-kG9qrZFufst7lerXdzPR4BqOltUuqCgb9HoRLWDtbB6gYR4P-jtBZFMFXrJ7TLTVf7Q7EdPpd7LyGhuVpf8keAsYTcnbA-MiVkjCHO6lYIUo/s1600/KDE_Tray.png" /></a></div><br />
<b>KDE 4.6</b> ha adottato anch'esso lo stile monocromatico delle icone ma porta con sé un imprinting diverso, per via della dimensione delle icone, della loro proporzione nella barra e per quell'accennato stile Glass, tuttavia proprio ciò mi lascia un tenue retrogusto amarognolo e pesante. <br />
<br />
<b><br />
</b><br />
<br />
<br />
<h4>Le finestre</h4><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwQPkGRX4TulC-L70IW-m6kZS0t8q-1jLfmwpqe_DId2WYP1JhH8bMtVg4be7RKBSqU3UBrrH3GdHZcv1SsE4k9dkKzyGE3Jh660dnjpc5ZmLVieho-KS_fzXCITH-jrEGsvtf_nN9vcM/s1600/KDE_Window.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="250" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwQPkGRX4TulC-L70IW-m6kZS0t8q-1jLfmwpqe_DId2WYP1JhH8bMtVg4be7RKBSqU3UBrrH3GdHZcv1SsE4k9dkKzyGE3Jh660dnjpc5ZmLVieho-KS_fzXCITH-jrEGsvtf_nN9vcM/s400/KDE_Window.png" width="400" /></a></div><b><br />
</b><br />
<b>KDE 4.6</b> ha creato un'enorme superficie grigio cremazione, dove disperdere con poca armonia parole con un font anoressico, minuscoli elementi e icone True Life. Il pallino a sinistra è ridondante in un'ottica (auspicata) di minimalismo e pulizia dell'interfaccia; inoltre anteporre ad esso l'iconcina del programma è a dir poco raggelante.<br />
Non posso non aggiungere che l'inconsapevole eccessiva tendenza alle trasparenze portano a incongruenze funzionali, ad esempio guardando la foto, l'utente non riesce a capire chiaramente quale finestra abbia il focus.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD9UtiwlUuKozWPmqnb3QgWp29fROUngxAtViB_LULTm4I4yDfj4CSz1AcNBXRzMcvrTxUHz3Fr1-Lhc-ghBKG_PhoNHUYt60j3X-mKKclh1CzyhSh8f1f69JRA8RFyg-uA0ZSunYSDio/s1600/mac_Window.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="295" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD9UtiwlUuKozWPmqnb3QgWp29fROUngxAtViB_LULTm4I4yDfj4CSz1AcNBXRzMcvrTxUHz3Fr1-Lhc-ghBKG_PhoNHUYt60j3X-mKKclh1CzyhSh8f1f69JRA8RFyg-uA0ZSunYSDio/s400/mac_Window.png" width="400" /></a></div><br />
<b>Mac OS X Lion</b>, anche qui il grigio domina ma senza appesantire grazie alle tenui sfumature. L'eleganza e la raffinatezza degli elementi è impeccabile.<br />
Sinceramente, per quanto riguarda il desktop (<a href="http://images.apple.com/macosx/lion/images/overview_launchpad20110127.jpg">vedi questa foto</a>), speravo in un definitivo abbandono della dock 3D a favore di qualcosa meno keech.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhl2-k7QvMs7h82T0YXM8iLKem7CA-078_MJsB-jInyg7leiVwxBJOTAjTEd_UBVJP1pjoW9xv0BI5yOCu2WKs-G9ski9sYU-cEI-1b-r4B2lirxD7KsVAQxPCJ6yxsNQrLf2hsFbXYV3E/s1600/Windows_Window.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="270" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhl2-k7QvMs7h82T0YXM8iLKem7CA-078_MJsB-jInyg7leiVwxBJOTAjTEd_UBVJP1pjoW9xv0BI5yOCu2WKs-G9ski9sYU-cEI-1b-r4B2lirxD7KsVAQxPCJ6yxsNQrLf2hsFbXYV3E/s400/Windows_Window.jpg" width="400" /></a></div><br />
<b>Windows Seven</b> è l'unico che azzarda l'utilizzo di un colore oltre alla cromia della scala dei grigi (forte dell'esperienza con il <i>Blu nausea da mare</i> di XP). L'impatto cromatico complessivo è solare, ma i dettagli sono “adolescenti”. I pulsanti Avanti e Indietro, con effetto bassorilievo sul vetro zigrinato con ologramma che assembla la finestra, sono una rivisitazione del ricordo preistorico delle interfacce “plastiche”. <br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmj07if6zqvfg0gKMYgm7slL5ELuGMGG3fa5-zoPzqySG_FjxmfaOSxZmXriL0NN4-R-khjwRaOGlqpiNv9nr5oaAStP9DujO5HPy1Hx6eW96n7B-M91SfcxU6jFkIifRNrZNow2APojE/s1600/Gnome_Window.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="148" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmj07if6zqvfg0gKMYgm7slL5ELuGMGG3fa5-zoPzqySG_FjxmfaOSxZmXriL0NN4-R-khjwRaOGlqpiNv9nr5oaAStP9DujO5HPy1Hx6eW96n7B-M91SfcxU6jFkIifRNrZNow2APojE/s400/Gnome_Window.png" width="400" /></a></div><br />
<b>Gnome 3</b> si veste di eleganza e semplicità, purtroppo non acquista ancora quel grado di raffinatezza che lo potrebbe elevare a un giusto riconoscimento per le scelte adottate. Le icone avrebbero bisogno di assimilare maggiore qualità e infondere più professionalità pur rimanendo in un sobrio concetto di semplicità; inoltre, forse (dovrei provarlo), ritengo che Gnome 3 faccia un uso eccessivo di superficie per il titolo e i menu a discapito dei dispositivi sempre più wide.<br />
<br />
<br />
<h3>Considerazioni</h3>Il Desktop Environment perfetto e bello per tutti in modo univoco non esiste. I canoni della bellezza sono soggettivi, le capacità dei Programmatori sono limitate a quelle "umane" e gli utenti Kattivissimi come me avranno sempre occasione per criticare.<br />
<br />
<br />
<h3>Maggiori informazioni</h3><a href="http://windows.microsoft.com/it-IT/windows7/products/home">Windows Seven</a><br />
<a href="http://www.apple.com/macosx/lion/">Mac OS X Lion</a><br />
<a href="http://www.kde.org/">KDE 4.6</a><br />
<a href="http://www.gnome3.org/">Gnome 3</a>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com6tag:blogger.com,1999:blog-6964936517594052608.post-12661125746853734602011-03-09T08:34:00.000-08:002011-03-10T01:42:28.235-08:00GUI: Il buono, il brutto e il cattivo Programmatore<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHPKzOEpTNg5aJpXPjZ1jPnvJp2qE7OxfSmmPGwAO6cqCrdQxYIMdi6BPAvFkNLf-KgCuBZa6us_f5cs7ChqcWe3TKU-SAqXC7_fZBF47rB9CYQI5eSF4dh9MEwXz_sXyd0Kr2IJzw6lQ/s1600/designer.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="234" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHPKzOEpTNg5aJpXPjZ1jPnvJp2qE7OxfSmmPGwAO6cqCrdQxYIMdi6BPAvFkNLf-KgCuBZa6us_f5cs7ChqcWe3TKU-SAqXC7_fZBF47rB9CYQI5eSF4dh9MEwXz_sXyd0Kr2IJzw6lQ/s320/designer.jpg" width="320" /></a></div><br />
Oggi voglio parlare di un tema tanto odiato dai Programmatori puri e duri: le interfacce grafiche, GUI (Graphical User Interface).<br />
Per un programmatore puro e duro (il Brutto) l'interfaccia è la naturale e superflua conseguenza del suo lavoro; il codice si agglomera “da solo” in una struttura di pulsanti, menu, frame, dialog... e a lavoro concluso si da, tuttalpiù, una pennellata di colore. Purtroppo è cosa nota il pessimo gusto estetico del Programmatore, ma, invece, non è noto ai più il motivo di questa “incapacità”.<br />
<br />
<a name='more'></a><br />
<br />
Inizio con il precisare che non è un'incapacità ma è semplicemente una razionale impostazione mentale che si scontra con il buon senso estetico e funzionale.<br />
Il Programmatore ideale, puro e duro cerca l'idillio nel codice in modo più assillante di una massaia che pulisce casa. Le righe devono essere pulite, chiare, essenziali; le risorse devono essere ottimizzate, le prestazioni devono essere enfatizzate, gli errori devono essere annullati e la continua sfida con la <a href="http://it.wikipedia.org/wiki/Legge_di_Murphy">legge di Murphy</a> potrà, idealmente, esser vinta stando nell'essenziale e contenendo l'entropia. Parimenti, l'estetica del lavoro è sottoposta alle stesse regole, così la GUI più contorta e meno funzionale, per l'utilizzo dell'utente, potrebbe essere la soluzione più snella, pulita, lineare, veloce e funzionale a livello di codice.<br />
Idealmente, al Programmatore puro e duro, piacerebbe far interfacciare il proprio software con l'utente nel modo più asettico possibile, il che si traduce più o meno così: senza un'interfaccia grafica ma tramite l'invio di dati scritti dall'utente su vecchie schede preforate. Ricordatevi che, per il Programmatore, il BUG più grande e difficile da gestire è dato dall'imprevedibilità e dalle assurde realtà che riesce a compiere l'utente.<br />
<br />
Ovviamente nel corso degli anni, di fronte alla scrivania di questi Programmatori puri e duri, hanno aggiunto una sedia per il Programmatore Designer (il Buono).<br />
<br />
<blockquote><i>"The difference between a Designer and Developer, when it comes to design skills, is the difference between shooting a bullet and throwing it." - Scott Hanselman with apologies to Larry Miller</i></blockquote><br />
Il suo compito è esattamente l'opposto: deve inquinare il codice con futili, pesanti e caotiche righe per dare all'utente la sensazione contraria: elegante, veloce, moderno, funzionale... a quello che era in origine il prodotto di quel Programmatore puro e duro.<br />
Ed ecco che aggravando la CPU e l'entropia con, ad esempio, un'inutile animazione di minimizzazione della finestra, l'utente, ironia della sorte, percepisce l'esatto contrario: velocità e reattività.<br />
<br />
<br />
<br />
E alla fine, come in ogni film il buono fa la parte del bello, allo stesso modo il Programmatore Designer è diventato, da quello con le scarpe griffate che portava il caffè ai colleghi puri e duri, una figura determinante per l'esito di un software. <br />
Tanto che un Programmatore Designer può illuderci di darci un software nuovo, più moderno e più veloce, utilizzando il codice dello stesso per anni: questa è la sua abilità, ma i suoi meriti sono (dovrebbero essere) ben altri: l'ergonomia in primis!<br />
L'importante è che il Programmatore Designer non sia soltanto Designer ;-)<br />
<br />
<br />
Questo articolo è una doverosa premessa per <a href="http://programmatorepercaso.blogspot.com/2011/03/restyling-tossina-botulinica-contro-le.html">quello successivo</a>.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Ehi, vi starete chiedendo “il Cattivo chi è?”. Il Cattivo è il Programmatore come me: colui che non indossa scarpe griffate, ama criticare gli altri e persevera nelle “incapacità” appena criticate.More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-85106722460020882852011-03-04T03:27:00.000-08:002011-03-04T03:30:58.384-08:00Io Paddo 2<div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwQHNjN-evEP9twtKNzrzlt3HnN6Hsy7wiYFmhWpXnYwffe6wxv6n3T2_i7EN36emtkfW6Sy8eujniYlepaRAd2XSkgfQosj2l0WZdvafJwzybKGJq9InBeeZbNByfunVD198o-BIXTCk/s1600/ipad2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwQHNjN-evEP9twtKNzrzlt3HnN6Hsy7wiYFmhWpXnYwffe6wxv6n3T2_i7EN36emtkfW6Sy8eujniYlepaRAd2XSkgfQosj2l0WZdvafJwzybKGJq9InBeeZbNByfunVD198o-BIXTCk/s320/ipad2.jpg" width="320" /></a></div><br />
Continua la saga de “<a href="http://programmatorepercaso.blogspot.com/2011/03/tu-gurio.html">l'eccitante nero snellisce</a>”. Che dire, con la <a href="http://malditech.corriere.it/2011/03/ipad_2_le_nostre_prime_impress.html">presentazione di ieri</a> l'iPad 2 si toglie i jeans per mettersi lo smoking.<br />
<br />
<a name='more'></a><br />
<br />
Non nego di non provare molta simpatia per la politica commerciale adottata da Apple, però riconosco, oltre alle capacità di marketing, anche la lungimiranza di alcune soluzioni. L'iPad ha aperto un nuovo mercato. Vedremo se i limiti imposti da Apple decreteranno il futuro successo dei suoi futuri concorrenti.<br />
<br />
Sicuramente per i Programmatori si aprono nuove opportunità, nuovi posti di lavoro e nuove idee.<br />
<br />
<h3>Toy Story</h3><i>Storia di un giocattolo</i><br />
<br />
Tanto tempo fa c'era un colosso che costruiva computer, il quale riteneva che il dominio del mondo fosse costituito dall'hardware, snobbando l'importanza nevralgica del software e delegando così a delle micro softwarehouse quel trascurato compito.<br />
Ma a dominare il mondo fu il software (Sistema Operativo) e il colosso si ritrovò rimpicciolito in una calca di competitor che permettevano di usare lo stesso software.<br />
<blockquote>A creare la dipendenza nel mercato fu il software.</blockquote>Così un altro costruttore di hardware penso di fare un software (Sistema Operativo) vincolato al suo hardware. Creò la sua nicchia ma non riuscì a monopolizzare il mondo, perché anche ad esso sfuggì un trascurabile dettaglio: permesse alle varie softwarehouse di creare versioni dei loro programmi software per funzionare in ugual modo anche sotto altri Sistemi Operativi.<br />
<blockquote>A creare la dipendenza nel mercato sono i programmi.</blockquote>Recentemente, lo stesso costruttore pensò di vincolare l'hardware con il software e con i servizi. Quell'hardware funziona unicamente con quel software e quel software permette di fruire ai programmi unicamente tramite quei servizi. <br />
<blockquote>A creare la dipendenza saranno i servizi?</blockquote><br />
<br />
<h3>Considerazione finali</h3>Ma se un Programmatore vuole o deve creare un software per tale piattaforma software/hardware che porta nuovo patrimonio in tasca ad Apple, deve per forza comperarsi il "giocattolo" o può usufruire di un benefit dal magnanimo<span class="Apple-style-span" style="color: #0b5394;">*</span> (o magnate<span class="Apple-style-span" style="color: #0b5394;">*</span>) Steve?<br />
<br />
<br />
<br />
Note:<br />
<span class="Apple-style-span" style="color: #0b5394;">*</span> indifferentemente dalla desinenza il termine <i>magna</i> è assodato ;-)More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com2tag:blogger.com,1999:blog-6964936517594052608.post-23834613741349063452011-03-03T08:59:00.000-08:002011-03-03T09:20:56.854-08:00Tu Gur'io<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXbD9rpsXSFVF_iWUynvRLF60xe5Wyj04lob_Zg37PQX2CPlr871bDmCWcAGi42u4Ieq28ZE_g9dCJto2pFw56_CKDWEmB2rEEI3LGz0X747vqY_OOTRGVJLlUm7tDhet3OXc2lkBvwFY/s1600/Schermata.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="229" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXbD9rpsXSFVF_iWUynvRLF60xe5Wyj04lob_Zg37PQX2CPlr871bDmCWcAGi42u4Ieq28ZE_g9dCJto2pFw56_CKDWEmB2rEEI3LGz0X747vqY_OOTRGVJLlUm7tDhet3OXc2lkBvwFY/s320/Schermata.png" width="320" /></a></div><br />
Confesso di essermi eccitato, il nero snellisce. Solo una parola: <i>Tugurio</i>. No, non è quello che leggete sul dizionario ma è uno slang zippato che ho coniato per questo fondamentale articolo.<br />
Un paio di giorni fa, sono venuto a conoscenza dell'ipotetica possibilità di diventare un Adobe Guru. Tu [<i>ndr</i>. Adobe] fai di me un Guru: <i>TuGurIo</i>. <br />
Affascinante, vero? Soprattutto dopo aver visitato lo stiloso sito <a href="http://www.adobeguru.com/">www.adobeguru.com</a> per abbeverarmi di tutte le informazioni che la mia sete mi chiedeva.<br />
<br />
<a name='more'></a><br />
<br />
<h3>Adobe Guru, what?</h3>Ma cos'è questo criptico, misterioso, stiloso ed eccitate status di Adobe Guru?<br />
<ol><li>La prima regola di Adobe Guru è che non si parla di Adobe Guru<span class="Apple-style-span" style="color: #0b5394;">*</span>.</li>
<li>La seconda regola di Adobe Guru è che non puoi scegliere di diventarlo ma sarai scelto per esserlo</li>
<li>La terza regola di Adobe Guru è che devi aver superato la seconda regola per sapere questa</li>
<li>La quarta regola di Adobe Guru è che per il principio della prima regola non verrai mai a conoscenza delle altre regole</li>
</ol><br />
<br />
In soldoni, sminuendo il fascino e ridimensionando il mistero, Adobe Guru è un gruppo elitario di esperti, selezionati da Adobe e chiamati in occasione di convegni, seminari e consulenze.<br />
<br />
<h3>La favola di Adobe</h3>C'era una volta Adobe il colosso, e, come ogni colosso americano, sapeva fare bene il marketing (oltre a saper fare soldi).<br />
Normalmente le classiche aziende cresciute sullo Stivale pagano per selezionare degli esperti, pagano per formarle, pagano per far testare i propri prodotti, e, infine, per un malcontento comune, pagano per licenziare e ricominciare a cercare nuovi esperti... <br />
Adobe inventò l'inversione dei ruoli: le persone pagano per formarsi, le persone pagano il loro impegno... infine, Adobe sceglie i migliori e tutti "vissero felici e contenti".<br />
<br />
<h3>TuGurio anche tu?</h3>Ebbene, se sei stato contagiato dalla voglia di diventare un Adobe Guru, sappi che devi dare il massimo, superare regolarmente gli esami di certificazione Adobe Certified Expert, metterti in mostra, saper parlare al pubblico, studiare e studiare ancor di più, dire qualche preghiera, sperare che Adobe abbia aperto la selezione (e non usare software piratato!!!) ... e comunque non avrai nessuna certezza di poter essere tra quelli scelti.<br />
<br />
<br />
<i>La magia di Adobe è grande<br />
che la Forza sia con voi</i><br />
<br />
<br />
<br />
<h3>Maggiori informazioni</h3>Il mistico tugurio di <a href="http://www.adobeguru.com/">Adobe Guru</a><br />
Da qui si parte: <a href="http://www.adobe.com/it/support/certification/community.html">Adobe Comunità</a><br />
Evvai di esami: <a href="http://www.adobe.com/it/support/certification/ace.html">Adobe certificazioni</a><br />
<br />
<br />
<br />
Note:<br />
<span class="Apple-style-span" style="color: #0b5394;">*</span>ricalca la citazione di un noto filmMore+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-69175738531914785462011-01-12T09:04:00.000-08:002011-01-12T09:05:58.260-08:00Il saggio è soltanto colui che cerca di non essere stolto<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv_L6cICD-2laGrH1iug1juhTBc3TT2exrxnIoeMRcHrHetMSKU4wYOrVrrR5CkHPvsPdvyKv2BxrY8M31sH5xbHFKlGHPnLYf0Rp_sUq7N3PmM3UngpFIiMxsElBdDcT9orIZtgkn2Ig/s1600/stolto.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="251" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv_L6cICD-2laGrH1iug1juhTBc3TT2exrxnIoeMRcHrHetMSKU4wYOrVrrR5CkHPvsPdvyKv2BxrY8M31sH5xbHFKlGHPnLYf0Rp_sUq7N3PmM3UngpFIiMxsElBdDcT9orIZtgkn2Ig/s320/stolto.jpg" width="320" /></a></div><br />
La prima cosa che imparai il giorno prima di <i>diventare</i> Programmatore fu: "quando credi di aver appreso tutto il conoscibile di un linguaggio di programmazione ti volti da quell'altezza e scopri che quel linguaggio non è usato più da nessuno".<br />
<br />
<a name='more'></a><br />
<br />
Colui che me lo disse era disperato, dopo anni e anni di impegno la sua quotazione nel mercato del lavoro si era sciolta in un nulla.<br />
Ed ecco gli appunti della mia prima lezione di vita che scrissi in copertina: <i>Non bisogna studiare con la testa e gli occhi persi dentro un libro perché la fuori il mondo cambia senza che ce ne accorgiamo</i>.<br />
<br />
<br />
<b>Tirando fuori il dito dal naso</b><br />
Oggi <sup>(ho alzato la testa dal libro)</sup> ho scoperto che la mia scelta di imparare Python è stata una scelta azzeccata: <a href="http://www.ossblog.it/post/7284/tiobe-incorona-python-come-linguaggio-del-2010">http://www.ossblog.it/post/7284/tiobe-incorona-python-come-linguaggio-del-2010</a><br />
<br />
<br />
E' anche vero che si potrebbe ribaltare la prospettiva: è stato Python a beneficiare del mio contributo (<a href="http://mail-it.sourceforge.net/">Mail-it</a>) diventando così il linguaggio di programmazione del 2010. ;-)More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-65417139166851149442010-12-31T05:03:00.000-08:002011-01-12T00:19:04.917-08:00Mail-it: do you speak Python?<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkRNnfulPs8AL4pgPA_7kv4Qjw1NZYhY985iqdKgxDUSJRr0___lEYM-PB012vio0hba2jBDOFDkcn4Wepq2XJtzV5ITTT8xvE_Izd1NS-MHdya3JpId9IDBkMvTM-UMjrXOmFxyTpjf4/s1600/logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkRNnfulPs8AL4pgPA_7kv4Qjw1NZYhY985iqdKgxDUSJRr0___lEYM-PB012vio0hba2jBDOFDkcn4Wepq2XJtzV5ITTT8xvE_Izd1NS-MHdya3JpId9IDBkMvTM-UMjrXOmFxyTpjf4/s1600/logo.png" /></a></div><br />
La cosa più difficile per un Programmatore è “parlare” un linguaggio diverso. La cosa più stimolante è poter dire di saper “parlare” tante lingue (poco importa se si ha la destrezza linguistica di un apprendista venditore di cocco). Ma l'unica cosa intelligente per un Programmatore è scegliere un linguaggio in funzione del contesto; beh, non crederete che sia raro sentire un Programmatore italiano parlare in tedesco quando è in vacanza nel Mar Rosso?<br />
<br />
<a name='more'></a><br />
<br />
Nella mia vita da Programmatore posso dire di essere poliglotto: Basic, Visual Basic, Assembler, C, C++, Visual C, ASP, PHP, HTML, CSS, BASH, SQL e vari dialetti; ma ho la tendenza a centrifugare il tutto per masticare una sbobba incomprensibile e informaticamente “non funzionante”. Ed ecco che, da <i>Strong Guru Informatico</i>, mi viene in aiuto la mia memoria selettiva, deprecata e scarsa che mi fa precocemente dimenticare tutti gli altri linguaggi.<br />
<br />
Ebbene da inevitabile Programmatore Intelligente ho pensato bene di non parlare in tedesco ma di imparare a parlare il “Mar Rossonese” per le mie future vacanze che non so quando le potrò fare!<br />
Fuor di metafora, ho deciso di imparare un nuovo linguaggio per la creazione di un “desktop banal program” in ambiente Linux. La scelta del linguaggio è scivolata su <a href="http://www.python.it/">Python</a>.<br />
<br />
<br />
<h3>Mail-it: un cuore tenero nato dagli "Hello world"</h3>Il Programmatore rude impara un nuovo linguaggio senza manuali, senza istruttori e senza un Flow Sheet, in quanto è una necessità che stimola un bisogno il quale spinge il Programmatore a realizzare un software nel linguaggio che ha in testa di voler, prima o poi, imparare; o perlomeno questo è stato il mio percorso formativo.<br />
<br />
<b>La necessità</b><br />
Un mio collega trascorre alcune ore al mese per prendere delle immagini, aprire <a href="http://www.gimp.org/">GIMP</a> per ridurle e ritagliarle alla dimensione necessaria, salvarle in JPEG ottimizzandole per il web, aprire un complesso documento HTML con <a href="http://kate-editor.org/">Kate</a>, cercare il punto dove scrivere delle notizie, scriverle, stando attento a non rovinare il codice del layout e copiando e incollando delle formattazioni a lui poco compressibili (HTML tags), aprire il file con un browser web, <a href="http://it.wikipedia.org/wiki/IceWeasel">IceWeasel</a>, per verificare tutti gli errori che ha commesso senza poter vedere le immagini che sono ancora sul suo disco locale, aprire un oscuro client FTP, <a href="http://filezilla-project.org/">Filezilla</a>, per fare l'upload del documento HTML e di tutte le immagini nella cartella giusta, verificare che la versione online funzioni e, infine, aprire <a href="http://www.mozillaitalia.org/thunderbird/">Icedove</a> e copiare il documento HTML per inviare quella sudata newsmail ad una mailing list.<br />
<br />
<b>La soluzione</b><br />
Da fervido Programmatore ho pensato che fosse arrivato il momento di snellirgli quelle routinarie, e potenzialmente pericolose, operazioni creandogli un'interfaccia che automatizzasse alcuni processi del suo compito per farlo concentrare unicamente sulla sua vera mansione: scrivere le notizie!<br />
Soluzioni come <a href="http://www.phplist.com/">PHPlist</a> si concentramento principalmente sul meccanismo di invio della mailing, mentre al mio collega serviva principalmente una guida che lo aiutasse a caricare correttamente e sporadicamente le notizie e le relative immagini all'interno di un template HTML (creato ad arte da uno specialista) per comporre una newsmail.<br />
E, a lavoro esaurito, fare l'upload online della pubblicazione e inviare la mailing.<br />
<br />
<b>La creazione</b><br />
Python l'ho appreso guardando in Rete il codice degli esempi, i famosi "<a href="http://programmatorepercaso.blogspot.com/2010/04/hello-world.html">Hello World</a>". Sbircia qui e sbircia lì, il codice si è accatastato in una forma funzionante di programma. Software che alla versione 0.9 vede il suo rilascio, con licenza GPL, su <a href="http://sourceforge.net/projects/mail-it/">SourceForge</a> sotto il nome di <a href="http://mail-it.sourceforge.net/">Mail-it</a>.<br />
<br />
Adesso il mio collega intravede all'orizzonte molte ore di lavoro risparmiate ..che potrebbe tranquillamente investire in lauti e abbondanti caffè da offrirmi mentre mi culla con idratanti complimenti.<br />
<br />
Eccovi uno screenshot:<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjG53NeNd2epN38G38pMYYi7oL2-gRMeFpALfkWHT99yIA-YyJlMbiwEoK-c_HDRByI8AMxlSv2nvCQIMFYgs0cqZzt4rn4J7l5kBNBK7sWG-HQe53K7ETHgnxG5tRlUfotiVSe204rAbI/s1600/mail-it-editor_1.2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="301" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjG53NeNd2epN38G38pMYYi7oL2-gRMeFpALfkWHT99yIA-YyJlMbiwEoK-c_HDRByI8AMxlSv2nvCQIMFYgs0cqZzt4rn4J7l5kBNBK7sWG-HQe53K7ETHgnxG5tRlUfotiVSe204rAbI/s400/mail-it-editor_1.2.jpg" width="400" /></a></div><br />
<br />
<br />
<br />
Ebbene, adesso posso dire di parlare pynthonese come un apprendista venditore di cocco su quelle spiagge del Mar Rosso dove il mio collega trascorrerà le sue vacanze alla faccia mia.<br />
<i>Enjoy Python</i><br />
<i><br />
</i><br />
PS: però il mio collega, che sta preparando le valigie, non sa che non ho ancora creato il modulo per gestire l'invio della newsmail ;-)<br />
<br />
<br />
<h3>Per Maggiori Informazioni</h3>Per conoscere, scaricare, usare e implementare mail.it: <a href="http://mail-it.sourceforge.net/">mail-it.sourceforge.net</a><br />
<br />
Se qualcuno volesse segnalarli bug o contribuire allo sviluppo e/o migliorare la traduzione (adesso è solo italiano e inglese)... <a href="http://programmatorepercaso.blogspot.com/p/chi-sono.html">scrivetemi</a> (da qualche parte ci dovrebbe essere il mio indirizzo email)<br />
<br />
Se qualcuno volesse creare un logo più carino di quello che ho scopiazzo dalle icone <a href="http://www.oxygen-icons.org/">Oxygen</a> può inviarmi i suoi contributi in formato SVG<br />
<br />
Se qualcuno volesse offrirmi un caffè... beh, mi venga a trovare, qui ci sono dei validi bar ;-)More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com8tag:blogger.com,1999:blog-6964936517594052608.post-79186935867855481112010-12-15T02:28:00.000-08:002010-12-23T23:52:28.193-08:00Un'installazione di ordinaria follia: Internet Explorer 6.0 per Linux<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9j_tci0RGVfR-icedxoM0yxUXAwwh3wThFvPZ_qFU-hq2sFF90V1NcqJ_R5rk1_mBis40kRiHY6j-NsOIEQD1WGWOz2dZvBjIkLbpagpIyWmEP3GUtbCXLax6D3tBL68rJuO0Q6OexTw/s1600/plugin-internet-explorer.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9j_tci0RGVfR-icedxoM0yxUXAwwh3wThFvPZ_qFU-hq2sFF90V1NcqJ_R5rk1_mBis40kRiHY6j-NsOIEQD1WGWOz2dZvBjIkLbpagpIyWmEP3GUtbCXLax6D3tBL68rJuO0Q6OexTw/s320/plugin-internet-explorer.jpg" width="241" /></a></div><br />
Ci sono cose nella vita che vanno ben oltre il traffico in tangenziale; una di queste è la necessità di far funzionare un obsoleto software proprietario su un sistema operativo fuori dal suo raggio di azione.<br />
<br />
<a name='more'></a><br />
Il perché di questa necessità anacronistica bisognerebbe chiederlo a quei Programmatori che hanno creato soluzioni informatiche accessibili unicamente da un browser proprietario, limitato ed esclusivo a un solo sistema operativo e assolutamente non conforme agli standard.<br />
<br />
Se non vi volete far del male e potete superare gli ostacoli di quegli obsoleti Programmatori, vi invito a non continuare la lettura, ricordandovi che esistono moltissimi browser web per Linux (e non), ecco un ventaglio di proposte:<br />
<br />
<ul><li><a href="http://www.mozilla-europe.org/it/firefox/">Firefox</a></li>
<li><a href="http://www.seamonkey-project.org/">Seamonkey</a></li>
<li><a href="http://www.chromium.org/Home">Chromium</a></li>
<li><a href="http://www.google.com/chrome">Chrome</a></li>
<li><a href="http://www.opera.com/">Opera</a></li>
<li><a href="http://www.konqueror.org/">Konqueror</a></li>
<li><a href="http://projects.gnome.org/epiphany/">Epiphany</a></li>
<li><a href="http://galeon.sourceforge.net/">Galeon</a></li>
<li><a href="http://code.google.com/p/arora/">Arora</a></li>
<li><a href="http://kazehakase.sourceforge.jp/">Kazehakase</a></li>
</ul><br />
<br />
<br />
<h3>La soluzione sbagliata</h3>Se non vi siete fermati a uno dei link sopra citati significa che siete disperatamente schiacciati dal potere di vecchie soluzioni gestite da ottusi amministratori incompetenti; a tal demerito accetto la vostra compagnia in questo cammino lungo una selva oscura<span class="Apple-style-span" style="color: #0b5394; font-size: x-small;">*</span>.<br />
<br />
<br />
Se cercate in Internet una soluzione per installare Internet Explorer 6.0 sotto Linux, troverete sicuramente la soluzione che ci ha guidato per anni: <a href="http://www.tatanka.com.br/">IE4Linux</a>.<br />
Purtroppo non si sono più visti aggiornamenti dal 2008 e, anche se l'installazione va a buon fine, capita che un demone, <i>wineserver</i>, impazzisce bruciando tutte le risorse della CPU e obbligandoci infine a riavviare la macchina<span class="Apple-style-span" style="color: #0b5394; font-size: x-small;">**</span>.<br />
<br />
Qualora si chiedessero spiegazioni per quest'anomalia ai Programmatori di <a href="http://www.winehq.org/">Wine</a>, il motore che permette questa magia nera, si riceverà la giusta ma insipita risposta:<br />
<blockquote>“IE4Linux non è una soluzione supportata da Wine”</blockquote><br />
<h3>La soluzione sbagliata e funzionante</h3>Dopo che le braccia di Morfeo mi hanno stretto (troppo!) per tutta la notte, al mattino, dolente come un maglione di lana centrifugato, trovo la via “giusta”: <a href="http://wiki.winehq.org/winetricks">winetricks</a>.<br />
<br />
<br />
Eccovi il mostro in esecuzione sul mio desktop KDE Linux:<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFXZG6eDpj0EL9RVxkab63V8cyTZix8Qb8Fwl3_4102M8sZ8_XONtR0uEOGio4nRfHOOP4IJ-NyzztS3IRUuVhqc_ZI5tE93nQWkjSqvmadcXb-Hribdv6V9f254-FBdiryYi5Ai3KGXM/s1600/IE_KDE4.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFXZG6eDpj0EL9RVxkab63V8cyTZix8Qb8Fwl3_4102M8sZ8_XONtR0uEOGio4nRfHOOP4IJ-NyzztS3IRUuVhqc_ZI5tE93nQWkjSqvmadcXb-Hribdv6V9f254-FBdiryYi5Ai3KGXM/s400/IE_KDE4.jpeg" width="400" /></a></div><br />
<br />
<b>Con una stretta al cuore, vi spiego l'installazione</b><br />
<i>Note: Testata su Debian Squeeze (sia a 32bit che a 64 bit)</i><br />
<br />
Come utente root dovete aggiungere il seguente repository per installare la versione aggiornata di wine.<br />
Aprite il file dei repositoruy con il vostro editor preferito (io uso VI, voi fate come VI pare):<br />
> <span class="Apple-style-span" style="color: blue;">vi /etc/apt/sources.list</span><br />
<br />
Aggiungete le seguenti righe:<br />
<span class="Apple-style-span" style="color: #274e13;">#wine</span><br />
<span class="Apple-style-span" style="color: #274e13;">deb http://wine.sourceforge.net/apt/ binary/</span><br />
<br />
In seguito installare i seguenti pacchetti<br />
> <span class="Apple-style-span" style="color: blue;">aptitude install wine cabextract libxxf86dga1 libxxf86vm1</span><br />
<br />
Esclusivamente per i sistemi a 64 bit è necessario installare anche il seguente pacchetto:<br />
> <span class="Apple-style-span" style="color: blue;">aptitude install lib32nss-mdns</span><br />
<br />
In seguito loggarsi come normale utente che userà l'applicativo e dalla home eseguire i seguenti comandi:<br />
<br />
IMPORTANTE: Dai programmi (<i>sistema->Wine Configurazione</i>) eseguire <i>Wine configuration</i> e nella scheda <i>Drive</i> cliccare sul pulsante <i>Rileva automaticamente</i>. Salvare e uscire.<br />
<br />
#scarico l'ultima versione dello script winetricks<br />
> <span class="Apple-style-span" style="color: blue;">wget http://www.kegel.com/wine/winetricks</span><br />
#assegno gli attributi di esecuzione allo script<br />
> <span class="Apple-style-span" style="color: blue;">chmod +x winetricks</span><br />
#procedo con l'installazione di Internet Explorer 6 (è possibile installare anche altre versione del noto browser ...vedi la documentazione del <a href="http://wiki.winehq.org/winetricks">sito</a>)<br />
> <span class="Apple-style-span" style="color: blue;">sh winetricks ie6_full</span><br />
<br />
<br />
Finita l'operazione si può procedere con l'installazione del plugin Flash Player per il browser:<br />
> <span class="Apple-style-span" style="color: blue;">sh winetricks flash</span><br />
<br />
Infine per lanciare Internet Explorer 6 eseguire il comando:<br />
> <span class="Apple-style-span" style="color: blue;">wine c:\\Programmi\\Internet\ Explorer\\IEXPLORE.EXE</span><br />
<br />
<br />
Se a voi non dovesse funzionare i casi sono tre:<br />
<br />
<ol><li>siete tra quelli che copiano e incollano i comandi senza leggere attentamente</li>
<li>Qualcuno da lassù vi sta guardando e vi vuol guidare sulla via corretta (lascia perdere IE6)</li>
<li>ritenta tutti i passaggi: forse sarai tra gli sfortunati che vedranno la schermata di accettazione della licenza di Microsoft Internet Explorer</li>
</ol><br />
<br />
<br />
<br />
<br />
<br />
<span class="Apple-style-span" style="font-size: x-small;">Note:</span><br />
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="color: #0b5394;">*</span> Il riferimento (per chi ha letto Dante) lascia intendere la destinazione ultima dell'installazione</span><br />
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="color: #0b5394;">**</span>quella in garage, per andare a farci un giro lontano dal computer e nel traffico della città per maledirci della nostra stoltezza: Internet Explorer 6 sotto Linux ….brrr!!</span>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com1tag:blogger.com,1999:blog-6964936517594052608.post-54159801796815411362010-11-30T02:24:00.000-08:002010-11-30T07:03:21.105-08:00Quando è il cestino ad essere immondizia<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgARXIKBE8kUuo8DEIfOXgXp7ppddNTmbksP5CbhwDPgIhX5wWI5pflW0zAa1cgkivVBXJjxT0XC3sMSf54tESTixS1Q7hQTAzQM1ME9D6xM-7Ug15TG936IttTnD0awC1tMqmGmgKN_8c/s1600/trash.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="319" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgARXIKBE8kUuo8DEIfOXgXp7ppddNTmbksP5CbhwDPgIhX5wWI5pflW0zAa1cgkivVBXJjxT0XC3sMSf54tESTixS1Q7hQTAzQM1ME9D6xM-7Ug15TG936IttTnD0awC1tMqmGmgKN_8c/s320/trash.jpg" width="320" /></a></div><br />
Informaticamente parlando in tono informale, vi confesso che il Cestino è una funzionalità etichettata<span class="Apple-style-span" style="color: #0b5394; font-size: x-small;"><sup>1</sup></span> con 3 i: <b>i</b>nutile, <b>i</b>gnorata e <b>i</b>gnobile.<br />
Diciamocelo pure che il suo omologo reale, la pattumiera di casa, è soltanto un transito per finire nella discarica, e a nessuno verrebbe in mente di utilizzarlo come contenitore per dare la possibilità di recuperare del pattume dopo un ripensamento.<br />
<br />
<a name='more'></a><br />
<br />
Ma quel trash informatico ha acquisito da subito un importantissimo effetto placebo: ci fa sentire sicuri e rilassati durante l'utilizzo del computer. Ed ecco perché è stata etichettata con le 3 i: a livello di programmazione è sufficiente impegnarsi a mostrare una “sciccosa” pattumiera iconizzata sul desktop o dock.<br />
<br />
<b>Però...</b><br />
Io sono una persona sicura di sé, quando elimino i file uso la scomoda combinazioni di tasti, Maiusc+CANC, per gettarli direttamente nella discarica (l'oblio dei byte /dev/null)... ma con il tempo mi sono rammollito e il mio cestino si sta gonfiando per la decomposizione di giga stoccati dietro un'icona che potrebbe essere rappresentativa della nostra epoca.<br />
I terabyte del mio computer, che ben riflettono l'opulenza di questa era, mi fa sembrare un'inutile sforzo cercare l'opzione <i>svuota cestino</i>, così la montagna artificiale di “monnezza” si alza di giorno in giorno, fino a quando, un giorno, ci verrà a trovare <a href="http://it.wikipedia.org/wiki/Caronte_%28mitologia%29">Caronte</a> per traghettarci laggiù.<br />
<br />
Quel giorno, per me, è arrivato; con il file manager aperto su una cascata di directory, <i>SitoA</i>, <i>SitoB</i>, <i>SitoC</i>, <i>SitoD</i>..., scopro di aver cancellato erroneamente il file <i>index.html </i>sbagliato.<br />
Caronte è arrivato con un traghetto a vapore<span class="Apple-style-span" style="color: #0b5394; font-size: x-small;"><sup>2</sup></span>.<br />
La traversata dell'<a href="http://it.wikipedia.org/wiki/Acheronte">Acheronte</a> è un viaggio di riflessione; i miei pensieri, all'ombra dell'immensa montagna che si staglia all'orizzonte, vanno alla ricerca dell'ultima volta che ho svuotato il cestino: mai.<br />
Do una generosa mancia a Caronte mentre gli dico: «Caro<span class="Apple-style-span" style="color: #0b5394; font-size: x-small;"><sup>3</sup></span> aspettami per il viaggio di ritorno. Vado e torno!», ma il suo buio sguardo non mi rassicura.<br />
Scalo la montagna di rifiuti ordinata in ordine alfabetico crescente e quando giungo all'altezza della<i> ind..</i> trovo, ovviamente, 52 file con il medesimo nome.<br />
E qui scopro il peso delle 3 i: i programmatori del mio <a href="http://it.wikipedia.org/wiki/Desktop_environment">Desktop Environment</a> hanno trascurato, ignorato e snobbato l'utilità del cestino e si sono palesemente affidati al mero effetto placebo tanto da non sviluppare alcunché dentro quella tolla<span class="Apple-style-span" style="color: #0b5394; font-size: x-small;"><sup>4</sup></span> disegnata con un'impegnativa abilità grafica.<br />
Mi si fa chiara l'ombra dello sguardo di Caronte: nulla qui mi aiuta, non c'è segnata alcuna data di cancellazione, il percorso originario del file... non c'è nessun suggerimento per capire quale file dovrei ripristinare. Per fortuna, la disperazione che rimbalza nella mia scatola cranica, scopre il ricordo riposto di aver conservato un vecchio backup nel server. Corro lontano da quella montagna, non prima di aver incendiato quell'inutile ammasso di byte, e mi rifugio nelle braccia del mio backup.<br />
<br />
<br />
<b>Cosa mi fa arrabbiare?</b><br />
KDE 4 sta giocando con i <a href="http://it.wikipedia.org/wiki/Plasma_(KDE)">plasmoidi</a> trascurando i servizi base.<br />
Gnome 2.32, dopo 14 anni, <a href="http://library.gnome.org/misc/release-notes/2.32/#rnusers.nautilus">annuncia</a>, come se fosse una novità del secondo millennio, che:<br />
<blockquote><i>Quando si visualizza il contenuto del cestino è presente un nuovo pulsante nella barra di informazioni che consente di ripristinare i file selezionati. Nel cestino sono inoltre indicate la posizione originale del file cancellato e la data in cui è stato cancellato</i>.</blockquote><br />
Ehi, dove sono le novità e i servizi utili che trasformerebbe il cestino in qualcosa di utile?<br />
Io non voglio un elenco arido di tonnellate di file, vorrei poter visualizzare/cercare i file cancellati in base a dei criteri logici (cronologia di cancellazione, tipologia di file,...), delle funzionalità che mi aiutino a gestire quella discarica, come potrebbero essere, ad esempio: svuota i file più vecchi di XXX, svuota i file più vecchi di XXX automaticamente, recupera i file (selezionati, o conformi ai criteri di una ricerca) in una cartella di destinazione specificata, ecc...<br />
<br />
<br />
<b>Sono esigente? </b><br />
Sono figlio del 2.0, dove quel 2 sta a indicare che i ruoli <u>sono cambiati</u>: non è più l'utente che deve capire e adattarsi al computer.<br />
<br />
<br />
<br />
<span class="Apple-style-span" style="font-size: x-small;">Note</span><br />
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="color: #0b5394;"><sup>1</sup></span> nella guida Gambero Rosso dei programmatori</span><br />
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="color: #0b5394; font-size: x-small;"><sup>2</sup></span> anche lì i tempi cambiano</span><br />
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="color: #0b5394; font-size: x-small;"><sup>3</sup></span> Caro, diminutivo di Caronte</span><br />
<span class="Apple-style-span" style="font-size: x-small;"><span class="Apple-style-span" style="color: #0b5394; font-size: x-small;"><sup>4</sup></span> è una forma espressiva per indicare una latta, barattolo metallico...</span>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-75014376111941789362010-11-11T05:57:00.000-08:002010-11-11T07:25:44.517-08:00Espressamente per voi le Espressioni regolari for dummy<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj17zL11EF-rFDtfS81vnffkz3bSPjNiiYGIdvFezh3bxk3tZiGYxYcw1P3ReSIzbGDc7s5duzG5oQLw6kSNpdCoL1H6UXbfJHkE4AfqlXYgFbFPThXS73Mt3v4-3gxYBfTRwofNyuHGRw/s1600/EspressioniRegolari.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj17zL11EF-rFDtfS81vnffkz3bSPjNiiYGIdvFezh3bxk3tZiGYxYcw1P3ReSIzbGDc7s5duzG5oQLw6kSNpdCoL1H6UXbfJHkE4AfqlXYgFbFPThXS73Mt3v4-3gxYBfTRwofNyuHGRw/s320/EspressioniRegolari.jpg" width="316" /></a></div><br />
Se a voi le <a href="http://it.wikipedia.org/wiki/Espressione_regolare"><i>espressioni regolari</i></a> potrebbero apparire un gergo per definire quei dialoghi nati per essere detti ma non per essere ascoltati: “Ehi, come va?” “Non c'è male, e tu?”, forse dovreste rivedere la vostra definizione quando avrete difronte un Programmatore che vi annienta con lo sguardo mentre vi dice, con tono astioso, che quelle sono <i>scialbe ciance routinarie</i>.<br />
<br />
<a name='more'></a><br />
<br />
Per farvi comprendere l'astio del Programmatore nei vostri confronti, pensate all'armonia che percepite quando potete dire “ho l'intestino <i>regolare</i>” e adesso, dopo esser entrati in questo stato armonioso, pensate alla sensazione di potenza che cogliete dall'<i>espressione</i> dell'interlocutore dopo avergli detto “Ho fatto il passo dello Stelvio in bicicletta”, ebbene se sommate le due sensazioni potreste avere una vaga idea del pathos che vive il Programmatore nei confronti delle <i>espressioni regolari</i> e del suo odio nei vostri riguardi per il fatto che non partecipiate alla stessa emozione e idolatria su tanta magnificenza.<br />
<br />
Già, il Programmatore quando sente l'espressione <i>espressioni regolari</i> inevitabilmente ed estasiaticamente vede scorrere davanti agli occhi il superlativo potere di stringhe parimenti a questa:<br />
<blockquote style="color: #38761d;">'/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/'</blockquote><blockquote><span style="font-size: xx-small;"><i><a href="http://danieleproietti.blogspot.com/2007/10/php-espressioni-regolari-esempi-pratici.html">fonte</a></i></span></blockquote><br />
<br />
Come avrete capito dalla stringa sopra citata, le <i>espressioni regolari </i>rappresentano il più potente e veloce modo per fare un'analisi lessicale di un testo.<br />
<br />
<br />
Se a questo punto siete ancora nell'oblio del <i>che sta a dì???</i> evidentemente non avete minimamente colto l'opportunità di poter <b>lavorare meno</b> ...e meglio (ma quest'ultimo aspetto forse interessa a molti meno). <br />
<br />
<br />
<h3>La fatica ai muli</h3>Vi sarà sicuramente capitato di soffrire per un vostro collega, o per voi stessi, quando lo vedete ridotto a un mulo automa, ad esempio, mentre corregge manualmente la punteggiatura di un elenco con centinaia di voci.<br />
<br />
Non so a voi, ma a me capita spesso di dover correggere la punteggiatura errata dei punti elenco (ma io non soffro), già perché sovente gli autori dimenticano che un punto elenco dovrebbe avere un'adeguata punteggiatura: ogni voce termina con il punto e virgola tranne l'ultima che termina con il punto.<br />
<br />
<br />
<b>Un esempio per tutti</b><br />
Moltissimi editor di testi offrono appunto l'utilizzo delle espressioni regolari, ad esempio se con Writer di <a href="http://www.openoffice.org/">OpenOffice</a> dobbiamo provvedere a inserire la punteggiatura dimenticata (il punto e virgola alla fine della voce) in un mastodontico elenco, invece di chinare la testa e digitare a mo' di uomo robotizzato i punti e virgola per ogni voce per le prossime ore possiamo semplicemente e velocemente selezionare l'intero elenco, tranne l'ultima voce (dove metterete il punto), e dal menu <span style="color: magenta;"> Modifica</span> scegliere il comando <span style="color: magenta;">Cerca e sostituisci</span>.<br />
Nella finestra che comparirà dovrete cliccare sul pulsante in basso<span style="color: magenta;"> Altre Opzioni</span> e mettere il segno di spunta a:<br />
<ul><li><i>Solo nella selezione</i>;</li>
<li><i>Espressione regolare</i>.</li>
</ul><br />
Adesso, avendo abilitato le <i>espressioni regolari</i>, potete sbizzarrirvi con le regole di analisi lessicale.<br />
Nel nostro caso, nel campo <span style="color: magenta;">Cerca</span> avremo la necessità di dirgli di cercare ogni fine riga, per fare ciò digiteremo semplicemente il carattere <span style="color: #6aa84f;">$</span> che sta a indicare la fine riga.<br />
Poi, nel campo <span style="color: magenta;">Sostituisci con</span>, dovremo dirgli di mettere il punto e virgola, ma, importante, dobbiamo anche dirgli di non rimuovere la fine riga, pertanto digiteremo la seguente combinazione di caratteri:<br />
<div style="background-color: white; color: #38761d;">;\n</div>dove <span style="color: #38761d;">; </span>è il carattere che verrà inserito (sostituisce) a ciascuna fine riga, e i caratteri<span style="color: #38761d;"> \n</span> specificano di mantenere (o rimettere) la fine riga in modo da mantenere la struttura verticale dell'elenco (altrimenti ci ritroveremmo tutte le voci in un'unica riga orizzontale).<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0P-M_QmQLujhPOcjeQ6IEVHGDAjuDr5TeeXNkqqCeF8inPmItX7jxjttGZT6zN2JIG6NOjfg1bRLnNFKrt-GkzZPtmiRM1bYRlM7d0ltZ0A2ab3Y1jwYRsX3Qb5j1zH5j0ijXdmZRvx4/s1600/CercaESostituisci.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0P-M_QmQLujhPOcjeQ6IEVHGDAjuDr5TeeXNkqqCeF8inPmItX7jxjttGZT6zN2JIG6NOjfg1bRLnNFKrt-GkzZPtmiRM1bYRlM7d0ltZ0A2ab3Y1jwYRsX3Qb5j1zH5j0ijXdmZRvx4/s320/CercaESostituisci.jpeg" width="308" /></a></div><br />
<br />
<br />
<br />
<b>E se...</b><br />
<br />
E se l'autore pivello di turno del testo da correggere avesse inserito manualmente la numerazione davanti alla voce del punto elenco, come rimuoverla per lasciare (o inserire) unicamente la formattazione a punto elenco dell'editor?<br />
Semplice: usando le <i>espressioni regolari</i>!<br />
<br />
Compiendo le operazione poc'anzi menzionate, nel campo <span style="color: magenta;">Cerca</span> scriveremo:<br />
<div style="color: #38761d;">^[:digit:]. </div>Mentre il campo <span style="color: magenta;">Sostituisci con</span> lo lasceremo vuoto.<br />
Ehi, non dimenticarti infine di cliccare sul pulsante <span style="color: magenta;">Sostituisci tutto</span>!! <br />
<br />
<span style="font-size: x-small;"><i>Take</i> It <i>Easy</i></span><br />
<br />
<h3>Quando la pigrizia ti impedisce di leggerti l'help</h3>Ti riporto la pagina di OpenOffice che spiega i caratteri usati per scrivere le <i>espressioni regolari</i> in Writer (ma impara a leggerti gli help):<br />
<br />
<table border="1" cellpadding="4" cellspacing="0"><tbody>
<tr><td class="Tabella1_A1" style="-moz-background-clip: border; -moz-background-inline-policy: continuous; -moz-background-origin: padding; background: rgb(204, 204, 204) none repeat scroll 0% 0%; text-align: left;"><div style="font-weight: bold;">Carattere</div></td><td style="-moz-background-clip: border; -moz-background-inline-policy: continuous; -moz-background-origin: padding; background: rgb(204, 204, 204) none repeat scroll 0% 0%; text-align: left;"><div style="font-weight: bold;">Effetto/uso</div></td></tr>
<tr><td style="text-align: left;">Qualsiasi carattere</td><td style="text-align: left;">Rappresenta il carattere dato se non diversamente specificato.</td></tr>
<tr><td style="text-align: left;">..</td><td style="text-align: left;">Rappresenta qualsiasi carattere singolo, ad eccezione dei caratteri di interruzione riga o interruzione di paragrafo. Ad esempio, la ricerca di "R.ssi" restituisce sia "Rossi" che "Russi".</td></tr>
<tr><td style="text-align: left;">^</td><td style="text-align: left;">Trova il termine ricercato solo se appare all'inizio di un paragrafo. Eventuali oggetti speciali (come campi vuoti o cornici ancorate a caratteri) all'inizio di un paragrafo vengono ignorati. Esempio: "^Mario".</td></tr>
<tr><td style="text-align: left;">$</td><td style="text-align: left;">Trova il termine ricercato solo se appare alla fine di un paragrafo. Eventuali oggetti speciali (come campi vuoti o cornici ancorate a caratteri) alla fine di un paragrafo vengono ignorati. Esempio: "Mario$".</td></tr>
<tr><td style="text-align: left;">*</td><td style="text-align: left;">Identifica l'assenza o la presenza di uno o più dei caratteri che precedono "*". Ad esempio, "Ab*c" trova "Ac", "Abc", "Abbc", "Abbbc" e così via.</td></tr>
<tr><td style="text-align: left;">+</td><td style="text-align: left;">Identifica uno o più caratteri che precedono "+". Ad esempio, "AX.+4" trova "AXx4", ma non "AX4".<br />
Viene sempre trovata la stringa più lunga corrispondente al modello di ricerca in un paragrafo. Se il paragrafo contiene la stringa "AX 4 AX4", viene evidenziato l'intero passaggio.</td></tr>
<tr><td style="text-align: left;">?</td><td style="text-align: left;">Identifica l'assenza o una singola occorrenza dei caratteri che precedono "?". Ad esempio, "Testi?" restituisce "Test" e "Testi", mentre "x(ab|c)?y" restituisce "xy", "xaby" o "xcy".</td></tr>
<tr><td style="text-align: left;">\</td><td style="text-align: left;">La ricerca interpreta il carattere speciale che segue "\" come un carattere normale e non come un'espressione regolare (ad eccezione delle combinazioni \n, \t, \> e \<). Ad esempio, "figli\." trova "figli.", non "figlio" o "figlia".</td></tr>
<tr><td style="text-align: left;">\n</td><td style="text-align: left;">Rappresenta un'interruzione di riga inserita con la combinazione di tasti Maiusc+Invio. Per trasformare l'interruzione di riga in un'interruzione di paragrafo, inserite <span style="font-weight: bold;">\n</span> nelle caselle <span style="font-weight: bold;">Cerca</span> e <span style="font-weight: bold;">Sostituisci con</span>, quindi eseguite un'operazione di ricerca e sostituzione.<br />
\n nella casella di testo <span style="font-weight: bold;">Cerca</span> rappresenta un'interruzione di riga inserita con la combinazione di tasti Maiusc+Invio.<br />
\n nella casella di testo <span style="font-weight: bold;">Sostituisci con</span> rappresenta un'interruzione di paragrafo che può essere inserita col tasto Invio.</td></tr>
<tr><td style="text-align: left;">\t</td><td style="text-align: left;">Rappresenta una tabulazione. Potete utilizzare questa espressione anche nella casella <span style="font-weight: bold;">Sostituisci con</span>.</td></tr>
<tr><td style="text-align: left;">\></td><td style="text-align: left;">Trova il termine ricercato solo se appare alla fine di una parola. Ad esempio, "ami\>" trova "rami", ma non "amici".</td></tr>
<tr><td style="text-align: left;">\<</td><td style="text-align: left;">Trova il termine ricercato solo se appare all'inizio di una parola. Ad esempio, "\<ami" trova "amici", ma non "rami".</td></tr>
<tr><td style="text-align: left;">^$</td><td style="text-align: left;">Individua un paragrafo vuoto.</td></tr>
<tr><td style="text-align: left;">^.</td><td style="text-align: left;">Ricerca il primo carattere di un paragrafo.</td></tr>
<tr><td style="text-align: left;">& o $0</td><td style="text-align: left;">Quando effettuate una sostituzione, aggiunge la stringa individuata dai criteri di ricerca della casella <span style="font-weight: bold;">Cerca</span> al termine che compare nella casella <span style="font-weight: bold;">Sostituisci con</span>.<br />
Ad esempio, se inserite "cornice" nella casella <span style="font-weight: bold;">Cerca</span> e "&finestra" nella casella <span style="font-weight: bold;">Sostituisci con</span>, la parola "cornice" viene sostituita con "cornicefinestra".<br />
Immettendo il carattere "&" nella casella <span style="font-weight: bold;">Sostituisci con</span> potete modificare gli <span style="font-weight: bold;">Attributi</span> o il <span style="font-weight: bold;">Formato</span> della stringa individuata dai criteri di ricerca.</td></tr>
<tr><td style="text-align: left;">[abc123]</td><td style="text-align: left;">Rappresenta uno dei caratteri compresi tra parentesi.</td></tr>
<tr><td style="text-align: left;">[a-e]</td><td style="text-align: left;">Rappresenta i caratteri compresi tra le lettere "a" ed "e".</td></tr>
<tr><td style="text-align: left;">[a-eh-x]</td><td style="text-align: left;">Rappresenta i caratteri compresi tra le lettere "a" ed "e" e tra le lettere "h" e "x".</td></tr>
<tr><td style="text-align: left;">[^a-s]</td><td style="text-align: left;">Rappresenta i caratteri non compresi tra "a" e "s".</td></tr>
<tr><td style="text-align: left;">\xXXXX</td><td style="text-align: left;">Rappresenta un carattere speciale in base al relativo codice esadecimale a quattro cifre (XXXX).<br />
Il codice per il carattere speciale dipende dal tipo di carattere utilizzato. Per visualizzare i codici, scegliete <span style="font-weight: bold;">Inserisci - Carattere speciale</span>.</td></tr>
<tr><td style="text-align: left;">questo|quello</td><td style="text-align: left;">Trova i termini che compaiono prima e dopo "|". Ad esempio, il criterio "questo|quello" trova sia "questo" che "quello".</td></tr>
<tr><td style="text-align: left;">{2}</td><td style="text-align: left;">Definisce il numero di ripetizioni del carattere che precede la parentesi graffa aperta. Ad esempio, "mol{2}e" trova "molle".</td></tr>
<tr><td style="text-align: left;">{1,2}</td><td style="text-align: left;">Definisce quante volte può ripetersi il carattere che precede la parentesi graffa aperta. Ad esempio, "mol{1,2}e" trova "mole" e "molle".</td></tr>
<tr><td style="text-align: left;">{1,}</td><td style="text-align: left;">Definisce il numero minimo di volte che il carattere che precede la parentesi graffa aperta può ripetersi. Ad esempio, "mol{2}e" trova "molle", "mollle" e "mollllle".</td></tr>
<tr><td style="text-align: left;">( )</td><td style="text-align: left;">Nella casella <span style="font-weight: bold;">Cerca</span>:<br />
Definisce i caratteri tra parentesi come riferimento. Potete quindi fare riferimento al primo riferimento nell'espressione attiva con "\1", al secondo con "\2" e così via.<br />
Ad esempio, se il vostro testo contiene il numero 13487889 ed eseguite una ricerca utilizzando l'espressione regolare (8)7\1\1, viene trovato "8788".<br />
Per raggruppare i termini potete utilizzare anche (), ad esempio, "a(bc)?d" trova "ad" o "abcd".<br />
Nella casella <span style="font-weight: bold;">Sostituisci con</span>:<br />
Usate il simbolo $ (dollaro) anziché \ (doppia barra rovesciata) per sostituire riferimenti. Usate $0 per sostituire l'intera stringa trovata.</td></tr>
<tr><td style="text-align: left;">[:alpha:]</td><td style="text-align: left;">Rappresenta un carattere alfabetico. Per cercarne uno usate [:alpha:]+.</td></tr>
<tr><td style="text-align: left;">[:digit:]</td><td style="text-align: left;">Rappresenta una cifra decimale. Per cercarne una usate [:digit:]+.</td></tr>
<tr><td style="text-align: left;">[:alnum:]</td><td style="text-align: left;">Rappresenta un carattere alfanumerico ([:alpha:] e [:digit:]).</td></tr>
<tr><td style="text-align: left;">[:space:]</td><td style="text-align: left;">Rappresenta un carattere di spazio singolo (ma non altri caratteri di spaziatura).</td></tr>
<tr><td style="text-align: left;">[:print:]</td><td style="text-align: left;">Rappresenta qualsiasi carattere stampabile.</td></tr>
<tr><td style="text-align: left;">[:cntrl:]</td><td style="text-align: left;">Rappresenta qualsiasi carattere non stampabile.</td></tr>
<tr><td style="text-align: left;">[:lower:]</td><td style="text-align: left;">Rappresenta un carattere minuscolo se avete selezionato <span style="font-weight: bold;">Ricerca esatta</span> nell'area <span style="font-weight: bold;">Opzioni</span>.</td></tr>
<tr><td style="text-align: left;">[:upper:]</td><td style="text-align: left;">Rappresenta un carattere maiuscolo se avete selezionato <span style="font-weight: bold;">Ricerca esatta</span> nell'area <span style="font-weight: bold;">Opzioni</span>.</td></tr>
</tbody></table>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0tag:blogger.com,1999:blog-6964936517594052608.post-16867124804327684552010-11-03T09:49:00.000-07:002010-11-03T09:49:34.777-07:00La preistoria che non si è estinta: i FileManager<div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8tq4KHTSjYtoLqD2vqn4kRNc4iMuyUdX-5-OWlbfSQr_BcE6DRtFrmH4Xuxvc6x4uAyokD9SV1QTkZlpGXznsg9ERDx0niQppVwsi1C0Z3NtNydb0s-Q7FmwHfVvE-ooCGhF90Rkd1ZU/s1600/dinosauro.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8tq4KHTSjYtoLqD2vqn4kRNc4iMuyUdX-5-OWlbfSQr_BcE6DRtFrmH4Xuxvc6x4uAyokD9SV1QTkZlpGXznsg9ERDx0niQppVwsi1C0Z3NtNydb0s-Q7FmwHfVvE-ooCGhF90Rkd1ZU/s320/dinosauro.jpg" width="306" /></a></div><br />
Una notte ho svegliato mia moglie per dirle che la concezione di File Manager è un errore che ci fa vivere ancora in mezzo ai dinosauri e quella notte mi sono ritrovato a dormire fuori al freddo, probabilmente, in compagnia dei dinosauri non estinti.<br />
Possibile che un'idea sbagliata stia mantenendo in vita la florida cultura della “clava” come arnese tecnologico più utilizzato nel ventunesimo secolo? E che mia moglie non comprenda la gravità di tale rivelazione notturna?<br />
<br />
<a name='more'></a><br />
<br />
Ricordo ancora le parole del mio professore: “L'HardDisk è come un armadio, se hai tanta roba da riporre devi imparare a essere ordinato” ...altrimenti non troverai più niente: era il tacito monito finale che sentivo nei lontani anni '90 (e l'HardDisk era di 40 Mb).<br />
<br />
<br />
<br />
<h3>Case History 1: quando la memoria tradisce</h3>Ho ripreso il computer in mano dopo una settimana di malattia, perché dovevo inviare una slide a un cliente che avevo preparato quell'ultimo giorno in ufficio con la testa infilata nel cappio dell'influenza. Ebbene, non mi ricordavo il nome del file e sopratutto in quale delle ennesime directory/sottodirectory che edificano la metropoli digitale del mio HardDisk lo avevo salvato.<br />
Niente di grave, è sufficiente affidarsi al preziosissimo strumento di ricerca <i>Trova File...</i> del proprio File Manager.<br />
Non sapendo dove cercare e nemmeno il nome e l'estensione del file (non mi ricordo se l'avevo salvato in pdf, ppt o odp), ho fatto una ricerca semplice e mirata:<br />
<ul><li>cerca tutti i file modificati tra il 23 al 25 Ottobre 2010</li>
<li>presenti esclusivamente nella directory <i>Home</i> comprensivo delle sottodirectory</li>
<li>e l'autore sono IO (informazione aggiunta per mero scrupolo)</li>
</ul><br />
Sotto l'effetto dell'influenza, in quei tre giorni lavorativi avrò al massimo manipolato una trentina di file, pertanto i parametri di ricerca mi sembravano più che adeguati per trovare velocemente il file in questione.<br />
Invece no! Lo stolto FileManager mi risponde con un incredibile e disumano elenco di <b>69'844</b> file trovati!!!!<br />
Perché? Perché è stupido, il File Manager ha processato la richiesta in modo elementare, matematico, fisico ma non “umano”. Nella sua ricerca ha considerato anche tutti i file modificati/creati dal sistema a mio nome tramite servizi e programmi vari (es: i file temporanei, i backup, i cookie, le impostazioni...); come una mia cara conoscente direbbe: <i>tanta foffa della quale ignoriamo l'esistenza</i>!<br />
<br />
<h3>Case History 2: labili certezze</h3>E' venerdì sera, completata la presentazione che terrà la mattina seguente il mio collega la invio per email e scappo a casa.<br />
Sabato mattina ricevo una telefonata sudata che vibra di queste parole “il file allegato è corrotto!!”<br />
Strano, controllo l'allegato dell'email e la reinoltro. Dopo poco, una nuova telefonata ancora più bagnata gronda con queste parole “Il file allegato è corrotto!!!”. <br />
Incapsulo il file in un archivio 7zip e lo reinoltro. Poco dopo stessa telefonata: “il file allegato è corrotto!!”. Appoggio il file sul server e glielo faccio scaricare tramite FTP, ed ecco la sua preoccupatissima voce: “Il file allegato è corrotto!!!”. <br />
Qualcosa ci sfugge, e gli chiedo lumi sulle sue uniche parole: “Il file allegato è corrotto!!!”. Scopro allora che il suo FileManager (non faccio nomi) non riconosce il tipo di file pertanto si ritrova incapace di eseguire l'applicativo corretto per aprirlo. Infatti, nel nome del file, mancava (per mia distratta omissione) l'estensione: quella vecchia, canuta e labile modalità per identificare i file attraverso i nomi.<br />
Dovete sapere che i FileManager più <i>seri</i> riconosco il tipo di file semplicemente analizzando la prima riga contenuta in esso, ma.... quante brutte abitudine sono dure a morire e pesano sull'utente ignaro!<br />
<br />
<br />
<h3>Case History 3: nomi a fantasia sequenziale</h3>Trovo un piccolo ritaglio di tempo per manipolare le foto del compleanno di mio figlio. Salvo la prima e il programma mi chiede il nome del file. Digito “Compleanno di Mario”. Salvo la seconda è mi chiede il nome, il soggetto è sempre il medesimo ergo gli attribuisco lo stesso nome “Compleanno di Mario”, ed ecco impuntito il geniale File Manager mi avvisa solerte di un conflitto con un altro file che ha nome uguale.<br />
Purtroppo non si può dialogare con il File Manager, altrimenti gli avrei cercato di far capire che si tratta di un'immagine con il medesimo soggetto, e se lui si confonde non si deve preoccupare perché io le saprò distinguere tramite l'anteprima d'immagine. Ma niente da fare, mi sono piegato alla fantasia sequenziale dei nome (pippo1, pippo2, pippo3... ) che mi ha caldamente suggerito il File Manager in quanto <i>evoluto</i>.<br />
<br />
<br />
<br />
<h3>File Manager: il vetusto armadio</h3>Se vi chiedessi qual è l'applicativo che usate di più sapreste rispondere realmente? Editor di testi, programmi di grafica, browser web, client email.... no! è sicuramente l'innominato <a href="http://it.wikipedia.org/wiki/File_manager">File Manager </a>(Explorer, Finder, Dolphin, Nautilus... tanto per citarne i più famosi). <br />
Esso dovrebbe essere un software studiato appositamente per mediare i compiti del FileSystem (colui che gestisce fisicamente i dati sull'HardDisk) con le esigenze dell'utente al fine di facilitare le comuni operazioni sui file.<br />
<br />
Vi voglio mostrare una carrellata di screenshot di alcuni dei più famosi e attuali File Manager:<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGz2heQX42-Zxxs3Pbm_FOjs7unFpH_XEQ996wr2bS7nfaC-P0vW2hzsC8lZRMPs25HuTOYQFvSuIBufjn3Pjk4yQmV9RBKrQldlz78BHMIrQVADu2pg9EUDkSrmTy1oDpz_Lb5busLms/s1600/GridExplorers.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="220" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGz2heQX42-Zxxs3Pbm_FOjs7unFpH_XEQ996wr2bS7nfaC-P0vW2hzsC8lZRMPs25HuTOYQFvSuIBufjn3Pjk4yQmV9RBKrQldlz78BHMIrQVADu2pg9EUDkSrmTy1oDpz_Lb5busLms/s320/GridExplorers.jpg" width="320" /></a></div><br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX3CUtu1FR02QFrjBX7T6ankeNt3sr6WA-Yc2jYaGq6MTzh9o5J6frvic_Jah0VPOqOyRW6UQni1BRY8agFqeoCi8xV-aDuP_lRz0SOC8LdVhfJW582jJtabug7aiLpJ09gYdNeQq47LE/s1600/Mac-Finder-Terminal.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="202" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX3CUtu1FR02QFrjBX7T6ankeNt3sr6WA-Yc2jYaGq6MTzh9o5J6frvic_Jah0VPOqOyRW6UQni1BRY8agFqeoCi8xV-aDuP_lRz0SOC8LdVhfJW582jJtabug7aiLpJ09gYdNeQq47LE/s320/Mac-Finder-Terminal.png" width="320" /></a></div><br />
<br />
<br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOLv8itEq8WVhejesddYvMsWIeEIKg-mc1zNX7fpg3ZR1eFWr_SxUsUMbScfgqr-wEmk5P1J1IMzOIxhBTk3F96kegRCMi0CnHnB6Sxea-oZY1pnNtw0CpL8WFcPFUktl72CVVrBJy5UU/s1600/nautilus.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="279" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOLv8itEq8WVhejesddYvMsWIeEIKg-mc1zNX7fpg3ZR1eFWr_SxUsUMbScfgqr-wEmk5P1J1IMzOIxhBTk3F96kegRCMi0CnHnB6Sxea-oZY1pnNtw0CpL8WFcPFUktl72CVVrBJy5UU/s320/nautilus.png" width="320" /></a></div><br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5IH0C5tGi2ihnJ0y7nuvup5oXyE8RSFfNtzqwM3KRWIlyJZ2xH5Zca6iTbU0bAT1ir0bghZqMzqbuE9rnixjvT44t8kA_UObUsP39d13w8nllMVxGopEPZkoKTqkjDU__v62tLzxJc9g/s1600/oxdolphin.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="197" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5IH0C5tGi2ihnJ0y7nuvup5oXyE8RSFfNtzqwM3KRWIlyJZ2xH5Zca6iTbU0bAT1ir0bghZqMzqbuE9rnixjvT44t8kA_UObUsP39d13w8nllMVxGopEPZkoKTqkjDU__v62tLzxJc9g/s320/oxdolphin.png" width="320" /></a></div><br />
<br />
<br />
Cambiano i nomi, i Sistemi Operativi, i computer, ma direi che c'è poca fantasia, sembrano tutti prodotti dallo stesso concetto di “interfaccia per la gestione dei file” .<br />
Adesso vi faccio fare un salto nel passato, ecco il File Manager predefinito nel primo ambiente visuale di Microsoft: Windows 1.01:<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiq7m8oflI65WvJeh6lS3RGz4g5_-cJ2bcWQTtpQR8rsAnTTLs0BgrL1E6lDoRvdwlOLelYWmweNhis3TxQsq7eBta7LqqvTz32QfPl0DqF4vTtvX9uY2NPDTXjxG-dKjv0WendxZsljX8/s1600/Explorer_win101.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="158" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiq7m8oflI65WvJeh6lS3RGz4g5_-cJ2bcWQTtpQR8rsAnTTLs0BgrL1E6lDoRvdwlOLelYWmweNhis3TxQsq7eBta7LqqvTz32QfPl0DqF4vTtvX9uY2NPDTXjxG-dKjv0WendxZsljX8/s320/Explorer_win101.png" width="320" /></a></div><br />
<br />
Sono trascorsi 25 anni, eppure, come si può intuire dalle immagini, l'evoluzione di questo fondamentale software, il File System, è ridotto a delle mere emozioni grafiche come i colori, le icone, le trasparenze... fino alle folcloristiche gestioni in 3D come questo:<br />
<br />
<object height="385" width="480"><param name="movie" value="http://www.youtube.com/v/53UK6Zctazk?fs=1&hl=it_IT"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/53UK6Zctazk?fs=1&hl=it_IT" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object><br />
<br />
<br />
<h3>File Manager: da armadio a ..comò?</h3><br />
Quel vetusto software (il File Manager) è nato stanco e vecchio, il suo ruolo di mediatore è scialbo e pigro. E' inaudito pensare a un software che per funzionare debba usare, oltre alle risorse del computer, anche le risorse dell'utente: la memoria, la capacità di organizzazione...(a oggi, senza la mia memoria non ritroverei alcun file nell'obeso HardDisk).<br />
Se un File Manager moderno non mi aiuta a svincolarmi dalla mia memoria, dalla mia capacità di organizzare e strutturare il mio HardDisk (l'armadio) in cassetti e cassettoni per archiviare la mia esagerata mole di file e non riesce nemmeno ad aiutarmi a cercare quello che potrei perdere nella vastità dei Gigabyte, ritengo che esso sia anacronistico e fonte di ostacolo per i neofiti.<br />
<br />
A mio giudizio l'utente si deve dimenticare di “file e cartelle”, non dovrà più farsi carico di assegnare nomi univoci e creare dedali di sottodirectory. Sarà il software (finalmente) a recuperare e archiviare tutte le informazioni per permettere di reperire facilmente il file tramite un File Manager che diverrà sempre più simile a un <i>motore di ricerca</i> e il Filesystem a un <i>database engine</i>.<br />
Infine, forse, la sua interfaccia finalmente gli farà vestire il ruolo di mediatore tra l'utente e il filesystem. Che so... dimenticando l'arcaica navigazione per directory, distinguendo in primis i file reali dell'utente da tutti gli altri, mostrando i file recenti, una classificazione per attività (dove lo stesso file potrebbe comparire sotto più attività senza fare quegli odiati/incompresi “collegamenti”), una classificazione cronologica per tipo di file, e una bella textbox per comporre delle facili e funzionanti interrogazioni...<br />
<br />
insomma, qualcosa così (cogliate la provocazione):<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj14clF2JRH8C2vzWZS-HbChmKo-rUvzfTfW9tKZYMtbWXImubMxvBnX97zO3f89PDqaVd28pvy-fR7tuK8cCR_zHNRlYwfSEl7PY6qWHeBnld-TR4wT099rKoTWaVFdSc0UpKRZAfDyuA/s1600/altavista.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj14clF2JRH8C2vzWZS-HbChmKo-rUvzfTfW9tKZYMtbWXImubMxvBnX97zO3f89PDqaVd28pvy-fR7tuK8cCR_zHNRlYwfSEl7PY6qWHeBnld-TR4wT099rKoTWaVFdSc0UpKRZAfDyuA/s320/altavista.jpeg" width="320" /></a></div><br />
<br />
<br />
Software, idee e prototipi ce ne sono in giro tanti ..ma manca il Programmatore che metta insieme tutta questa roba per rivedere e rifondare il concetto e l'utilizzo del File Manager.More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com2tag:blogger.com,1999:blog-6964936517594052608.post-18944517996732618802010-10-11T09:53:00.000-07:002010-10-12T02:01:57.506-07:00L'arido 2.0: quando la comunicazione inficia sul comunicare<div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhntq8lY7heNyJnuVlKmGDVmx2uD7ou4sFJ6NOd9742QOtxdGtwuVVQTmNQGgyZEPAVm43uDums-Yvz5TRO6P1Tgn6mtj4ES46MEw7DJ4IHaklQ2wXgOBtjkk1xwEgZqgtoLsnCeL9-jOA/s1600/More_WordSex.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="224" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhntq8lY7heNyJnuVlKmGDVmx2uD7ou4sFJ6NOd9742QOtxdGtwuVVQTmNQGgyZEPAVm43uDums-Yvz5TRO6P1Tgn6mtj4ES46MEw7DJ4IHaklQ2wXgOBtjkk1xwEgZqgtoLsnCeL9-jOA/s320/More_WordSex.jpg" width="320" /></a></div><br />
La comunicazione paffuta dalla guance rubiconde e i seni fieri è là, nel deposito degli oggetti smarriti della vecchia stazione dei mezzi antiquati. <br />
Tutti noi abbiamo avuto modo di leggere le passionali e adorne elucubrazioni lessicali di D'Annunzio, le ricche e interminabili descrizioni di Eco, le strazianti emozioni intarsiate nelle parole di Dostoevskij... Tutti noi abbiamo letto più parole di quante siano nel nostro bagaglio lessicale; abbiamo fluttuato in astrazioni verbali arricchendoci di un immaginario cintato da metafore e similitudini e ci siamo dissetati a delle ricche sorgenti.<br />
Ma, soltanto adesso, sto iniziando a focalizzare l'idea che, noi infelici Utenti, viviamo in una nuova era contrassegnata da quel arido <b>2</b> (web 2.0, anno 2000...) e tutto quello che poc'anzi vi ho detto dimenticatevelo nel deposito degli oggetti smarriti della vecchia stazione dei mezzi antiquati.<br />
<br />
<a name='more'></a><br />
<br />
<br />
<h3>La comunicazione 2.0</h3>Quel arido 2.0 è un segno non tangibile ma concreto che <i>qualcuno</i> ha fatto un upgrade di release a quest'epoca. Ma chi è quel <i>qualcuno</i>?<br />
Siamo io<span class="Apple-style-span" style="color: #0b5394;"><sup><span class="Apple-style-span" style="font-size: small;">1</span></sup></span>! Siamo noi Programmatori che animiamo una tecnologia impalpabile, invisibile, inodore e in-<i>PerTuttiGliAltriDeiCinqueSens</i>i. <br />
<br />
Il software è il fautore di quel<b> 2</b>.<br />
<br />
Software che ci limitano il numero di parole, software che ci spingono ad abbreviare, condensare e impoverire il testo, software che traducono i testi in un italiano “a mattonelle”, software che indicizzano i testi sbriciolando i contenuti in vuote parole, software che “tirano ad indovinare”, software che acquisiscono l'arroganza della ragione...<br />
<br />
É inevitabile, il software ci sta facendo modificare la comunicazione.<br />
<br />
<br />
Avevo letto, da qualche parte, che chi scrive (alias <i>Scrittore</i>) non dovrebbe piegarsi alle regole dei software (semantica per il web, condensazione di parole chiave nei titoli, <i>short link</i> & <i>long title</i> , analisi statistica delle parole ricercate...), ma dovrebbe continuare a educare le persone a un'armoniosa costruzione lessicale, invece di impoverire le forme a favore delle nuove e aride tecnologie (--> masticare bene il testo per fare un bolo digeribile da uno stupido software).<br />
<br />
Come avrete capito, non ho mai avuto il vezzo di modellare i miei testi per farli diventare succosi, farciti, masticati e pieni di saliva agli occhi di un presuntuoso <a href="http://it.wikipedia.org/wiki/Crawler">crawler</a>; scrivo così <i>come mamma mi ha fatto</i>. <br />
Ma forse questa mia ostinata prosa economica è soltanto un inconsueto e tronfio testo che confonde anche chi, dalle ricerche che fa nel web, sembra avere le idee chiare.<br />
<br />
<b>Come sono giunto a questa conclusione?</b><br />
Ho usato un software!<br />
Sì, sembra ridicolo e lo è, ma ho usato realmente un software per capirlo, d'altronde sono un Programmatore che ha fatto buca a qualche lezione di Italiano per “studiare” i misteriosi software dei videogames a suon di monetine da 500 Lire.<br />
<br />
<b>Cosa mi ha rivelato questo software?</b> <br />
Alcune vostre curiosità che vi hanno condotto qui.<br />
Come avrete notato dall'immagine in apertura, qualcuno/a ha avuto la brillante capacità di fare una corpulenta ricerca sul web componendo (più che una frase di ricerca sembra un sonetto primaverile) queste parole:<br />
<br />
<blockquote><i>come si fa l'amore nella parte del didietro</i></blockquote><br />
<br />
Lasciando perdere un'analisi da quattro cent sull'ignaro/a<span class="Apple-style-span" style="color: #0b5394;"><sup>1</sup></span> utente, il quesito che mi sono fatto è: com'è possibile che questo blog risulti al primo posto in uno dei più importanti motori di ricerca? Prima anche di “Le FAQ : il ses**o an**le”???<br />
<br />
E, soltanto dopo, mi sono domandato: com'è possibile che una persona che faccia una simile ricerca sia tentata a cliccare sul link di questo blog per accedere alle mie parole, il quale riporta come summa descrittiva elaborata da un goliardico Software:<br />
<br />
<blockquote><i><b>More+: Il didietro di Debian - Programmatore per caso</b><br />
22 giu 2010 ... Certamente sì. Il bello è che per ora non serve farlo esplicitamente: sta ... Per loro la bellezza estetica è una parte fondamentale del marketing, ... Una comunità volontaria come Debian fa marketing con modalità ...<br />
<span class="Apple-style-span" style="font-style: normal;"><i><br />
</i></span></i></blockquote><br />
Certo le frasi come “<i>Il bello è che per ora non serve farlo esplicitamente</i>” e “<i>Una comunità volontaria</i>” potrebbero dar addito a tutt'altro ma...<br />
non mi direte che siamo già alla soglia di un altro nuovo cambio epocale: il 3.0?<br />
<br />
<h3>L'era del 3.0</h3>Sarà l'era dove gli utenti, ormai assuefatti dal modus operandi imposto dai software, elaboreranno i testi come (e peggio) dei crawler che ci hanno portato nell'epoca del 2.0!<br />
<br />
<br />
<br />
Chissà, forse agli occhi di quel ignaro internauta 3.0 quel mio articolo ha donato misteriose rivelazioni più soddisfacenti di una vetusta FAQ 2.0.<br />
<br />
<br />
<h3>Infine, dall'analisi sforno una Top More+</h3>Concludo questo post con un'inevitabile Top More+:<br />
<b>le migliori ricerche che hanno condotto assetati internauti nella cerchia dei miei lettori</b>. <br />
<br />
(Preferisco non classificare e commentare)<br />
<br />
<ul><li>intimità</li>
<li>sei un corgnuto</li>
<li>ses<span class="Apple-style-span" style="font-size: small;">**</span>o didietro donna</li>
<li>te lo voglio mettere di dietro</li>
<li>il pelo della</li>
<li>donne more con tanto pelo</li>
<li>immagini vere delle patate e te<span class="Apple-style-span" style="font-size: small;">**</span>te di donne</li>
<li>come si fa l'amore nella parte del didietro</li>
<li>donne che lo fanno di dietro</li>
<li>la mia prima volta di dietro forum al femminile</li>
</ul><br />
<br />
<br />
Prima o poi me lo direte: Questo mio blog, almeno, ha soddisfatto queste vostre inconfessabili curiosità? Vi devo spiegare qualcosa?<br />
<div><br />
</div><div><br />
</div><div><b><span class="Apple-style-span" style="font-size: small;">Note:</span></b></div><sup>1</sup> No, non è un errore, è una sorta di, passatemi la definizione, “singolare maestatis”<br />
<sup>2 </sup> Ignaro: non consapevole che qualche software potrebbe aver registrato la sua richiestaMore+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com2tag:blogger.com,1999:blog-6964936517594052608.post-57151497472149314712010-09-24T03:13:00.000-07:002010-11-15T05:10:10.476-08:00Nginx: alfabetizziamoci con un estratto omeopatico<div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizdgbgd1W7KXfcKkjtl4sqPUC28sD_yAfUwVgO6xbN3ezJpRdrYwtcp4RCHwp5NjHuHZyTWQzH53kbEUpj0U_zeSp17R22a7H6kCONZbHgt1N0HCsEGUZLSgcKtK5pygj8Hl8pihmm-TQ/s1600/nginx.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizdgbgd1W7KXfcKkjtl4sqPUC28sD_yAfUwVgO6xbN3ezJpRdrYwtcp4RCHwp5NjHuHZyTWQzH53kbEUpj0U_zeSp17R22a7H6kCONZbHgt1N0HCsEGUZLSgcKtK5pygj8Hl8pihmm-TQ/s320/nginx.jpg" width="320" /></a></div><br />
Provate a leggere ad alta voce, tre volte consecutive, la storia dei Tre Maialini mentre gli occhi cercano di spezzare quella tensione che tiene ancora sollevata la palpebra: la lingua diventa un blocchetto di porfido rosa.<br />
Quando succede ciò, ci si accorge di avere un problema da risolvere, una nuova sfida da affrontare, nel mio caso: <i>evitare di far collassare il web server, virtualizzato con 256 Mb di memoria dedicata, quando si cerca di far girare il sito dei “Tre maialini”. </i><br />
I tempi di reazione di un Programmatore 2.0 rappresentano la garanzia del suo titolo acquisito, così rimedio velocemente una cura omeopatica: <a href="http://nginx.org/">nginx</a>.<br />
Mentre la mia lingua, imbastardita dall'italiano gonfio e tronfio di vocali, si contorce nella bocca per trovare silenziosamente e timidamente la giusta forma fonetica (enghienics, nògincs, ennegienneicsete...), i sitarelli ufficiosi mi svelano che la pronuncia di quel compresso scioglilingua è un banale “engine x” ...ciò doveva illuminarmi su quello che stavo per affrontare.<br />
<br />
<a name='more'></a><br />
<br />
L'incognito motore, alias Engine X, è sfacciatamente ritenuto la “Aspirina” dei web server. Risolve qualsiasi male (può essere usato come proxy mail), è solido, robusto, snello, efficace, veloce... e soprattutto, la sua architettura è stata pensata per dare una risposta vincente a un problema che affligge l'ignara umanità internauta: <a href="http://www.kegel.com/c10k.html">C10k problem</a>.<br />
Quindi consiglio a tutti di installarlo. Non si sa mai, se cadete e vi sbucciate le ginocchia potete sempre farvi una fasciatura con delle stampe dei suoi codici sorgenti.<br />
<br />
Secondo le autorevoli <a href="http://news.netcraft.com/archives/2010/01/07/january_2010_web_server_survey.html">stime di Netcraft</a>, Nginx si è guadagnato il terzo posto (4,24% di share) in termini di diffusione (forse il tam tam in Rete dei suoi effetti curativi e placebo ha partecipato in parte a questo successo), diventando a tutti gli effetti la valida, snella e breve alternativa al blasonato “<i>Apache, figlio di Apollo; Fece una palla di pelle di pollo; Tutti i pesci vennero a galla; Per vedere la palla di pelle di pollo; Fatta da Apelle figlio di Apollo</i>”.<br />
<br />
Come avrete sicuramente notato, <a href="http://httpd.apache.org/">Apache</a> è uno scioglilingua obeso dalle vocali, non istiga alla violenza la nostra lingua, ma si muove con flatulenta prepotenza su server minidotati come il mio (server!!).<br />
<br />
Arriviamo al dunque di questo post tecnico (eureka, il primo su questo blog!!) che tutti voi bramate da un<i> Pro Pro Pro</i> <i>Pro </i>(no, non è l'audio della flatulenza di Apache sul server minidotato), <b>Pro</b>vvidenziale <b>Pro</b>grammatore <b>Pro</b>fessionista <b>Pro</b>vinciale, del mio calibro.<br />
<br />
<br />
<h3>nginx: teoria e pratica</h3>Ovviamente, per fare l'amato “uovo fuori dalla cavagna” (Di questo detto non ho mai allargato il mio bagaglio culturale cercando la definizione di “cavagna”; da una <a href="http://www.google.com/images?um=1&hl=it&client=iceweasel-a&rls=org.mozilla%3Ait%3Aunofficial&biw=1280&bih=847&tbs=isch%3A1&sa=1&q=angela+cavagna&aq=f&aqi=&aql=&oq=&gs_rfai=">veloce ricerca in Internet</a> il risultato mi lascia perplesso... ma compiaciuto.<i> Happy ignoranza</i>), ho pensato di iniziare dalla fine per rovinarvi la suspence dell'inizio.<br />
<br />
Buon inizio<br />
<br />
<blockquote>Nel mezzo del cammin di nostra vita<br />
mi ritrovai per una selva oscura<br />
ché la diritta via era smarrita.<br />
<br />
<i>(Divina Commedia)</i></blockquote><br />
<br />
<br />
<span class="Apple-style-span" style="font-weight: bold;">Premessa obbligatoria</span><br />
<span class="Apple-style-span" style="font-weight: bold;"><br />
</span><br />
Un <i>install nginx</i> sarebbe sufficiente per installare questo web server, e il post ad alto contenuto tecnico sarebbe finito, purtroppo il mio minidotato server virtuale deve interpretare le pagine PHP... e qui inizia il divertimento.<br />
<br />
La <a href="http://wiki.nginx.org/Configuration#PHP_via_FastCGI">guida ufficiale di nginx</a> si appoggia a un elenco di siti, pagine e blog di smanettoni che hanno trovato una strada funzionante; e sì, ci sono differenti metodi per far girare PHP, e ognuno si autocita dichiarandosi come “portatore di una verità assoluta”. <br />
Ebbene, la guida per l'installazione di nginx+php+mysql+phpmyadmin “assolutamente giusta, migliore ed efficace” è scritta in questo post, non credete ad altri ;-)<br />
<br />
Inizialmente volevo seguire la via “dichiarata giusta”, ma scoperto il dedalo di vie, ho pensato di impormi dei criteri per valutare il metodo di installazione da seguire:<br />
<ol><li>non compilare alcun software</li>
<li>non usare alcun software che non sia contemplato dai repository ufficiali della distro installata sul server (Debian Squeeze 64 bit)</li>
<li>cercare di fare il minor numero di hack (questo la dice lunga su nginx + php)</li>
<li>e, infine, far funzionare nginx+php+mysql+phpmyadmin sul server da 256 Mb</li>
</ol><br />
Con questi presupposti, vi scoraggio a cercare nella grande Rete e vi incoraggio a lasciar perdere; se proprio insistete continuate a leggere qui (abbiate un po' di pazienza), che è riportato l'unico, assoluto, magnifico e funzionate “how to install: nginx php5 mysql phpmyadmin”.<br />
<br />
<br />
<h4>I benchmark: conclusione dell'installazione</h4>Il sito dei “Tre maialini” sta girando sul mio server virtualizzato! Fine.<br />
<br />
Ma, adesso che tutto funziona, facciamo delle valutazioni per capire se ne è valsa la pena.<br />
Per un veloce confronto, vista la comodità e velocità di installazione di Apache2 (no comment), ho creato un'altra macchina per eseguire il medesimo compito.<br />
<br />
Con questo banale test verifico l'utilizzo <u>totale</u> della memoria consumata da tutti i servizi avviati nei rispettivi server.<br />
<i>Nota: Le impostazioni di Apache, ngnix, PHP e mysql sono state lasciate con i valori di default delle reciproche installazioni.</i><br />
<br />
1) -------------------------------<br />
Stato all'avvio delle due macchine:<br />
<br />
<span class="Apple-style-span" style="background-color: white;"><span class="Apple-style-span" style="color: purple;">Nginx: 247 Mb</span></span><br />
<span class="Apple-style-span" style="background-color: white;"><span class="Apple-style-span" style="color: purple;">Apache2: 239 Mb</span></span><br />
<br />
2) -------------------------------<br />
Visualizzazione della prima pagina, dopo il login, di PhpMyAdmin, da parte di un'unica sessione di un browser esterno.<br />
<br />
<span class="Apple-style-span" style="color: purple;">Nginx: 316 Mb</span><br />
<span class="Apple-style-span" style="color: purple;">Apache2: 306 Mb</span><br />
<br />
3) -------------------------------<br />
Navigazione tra le pagine e query di PhpMyAdmin, da parte di tre browser esterni.<br />
<br />
<span class="Apple-style-span" style="color: purple;">Nginx: 309 Mb</span><br />
Con il seguente dettaglio dei singoli servizi avviati:<br />
<br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 1 0.0 0.0 8352 808 ? Ss 10:19 0:00 init [2] </span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 212 0.0 0.1 54156 1484 ? Sl 10:19 0:00 /usr/sbin/rsyslogd -c4</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">101 223 0.0 0.0 23260 592 ? Ss 10:19 0:00 /usr/bin/dbus-daemon --system</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 229 0.0 0.1 49168 1156 ? Ss 10:19 0:00 /usr/sbin/sshd</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 254 0.0 0.0 3952 648 ? S 10:19 0:00 /bin/sh /usr/bin/mysqld_safe</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">mysql 365 0.0 2.5 236788 25952 ? Sl 10:19 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --us</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 366 0.0 0.0 3852 624 ? S 10:19 0:00 logger -t mysqld -p daemon.error</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 414 0.0 0.0 30188 956 ? Ss 10:19 0:00 nginx: master process /usr/sbin/nginx</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 415 0.0 0.2 30980 2308 ? S 10:19 0:00 nginx: worker process</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 425 0.0 0.8 131212 8436 ? Ss 10:19 0:00 /usr/bin/php5-cgi</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 435 0.0 1.6 140536 16248 ? S 10:19 0:00 /usr/bin/php5-cgi</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 436 0.0 1.6 140800 16448 ? S 10:19 0:00 /usr/bin/php5-cgi</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 437 0.0 1.6 140800 16288 ? S 10:19 0:00 /usr/bin/php5-cgi</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 438 0.0 1.4 138716 14632 ? S 10:19 0:00 /usr/bin/php5-cgi</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 439 0.0 1.5 139752 15472 ? S 10:19 0:00 /usr/bin/php5-cgi</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 440 0.0 1.6 140532 16236 ? S 10:19 0:00 /usr/bin/php5-cgi</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 484 0.0 0.0 20904 952 ? Ss 10:19 0:00 /usr/sbin/cron</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 856 0.0 0.0 18624 624 ? Ss 10:48 0:00 vzctl: pts/0 </span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 857 0.0 0.1 17688 1876 pts/0 Ss 10:48 0:00 -bash</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 864 0.0 0.1 14812 1040 pts/0 R+ 10:49 0:00 ps aux</span></span><br />
<br />
<span class="Apple-style-span" style="color: purple;">Apache2: 368 Mb</span><br />
Con il seguente dettaglio dei singoli servizi avviati:<br />
<br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 1 0.0 0.0 8352 808 ? Ss 10:19 0:00 init [2] </span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 211 0.0 0.1 119692 1496 ? Sl 10:19 0:00 /usr/sbin/rsyslogd -c4</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">101 222 0.0 0.0 23260 592 ? Ss 10:19 0:00 /usr/bin/dbus-daemon --system</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 228 0.0 0.1 49168 1136 ? Ss 10:19 0:00 /usr/sbin/sshd</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 253 0.0 0.0 3952 648 ? S 10:19 0:00 /bin/sh /usr/bin/mysqld_safe</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">mysql 364 0.0 2.5 171240 25748 ? Sl 10:19 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --us</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 365 0.0 0.0 3852 624 ? S 10:19 0:00 logger -t mysqld -p daemon.error</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 443 0.0 0.0 20904 952 ? Ss 10:19 0:00 /usr/sbin/cron</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 460 0.0 0.9 181832 9584 ? Ss 10:19 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 514 0.0 1.6 189428 16800 ? S 10:19 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 515 0.0 1.1 184652 11872 ? S 10:19 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 516 0.0 1.1 184628 11344 ? S 10:19 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 517 0.0 1.2 185656 12828 ? S 10:19 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 572 0.0 0.0 18624 620 ? Ss 10:21 0:00 vzctl: pts/0 </span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 573 0.0 0.1 17688 1876 pts/0 Ss+ 10:21 0:00 -bash</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 584 0.0 1.8 191132 18288 ? S 10:24 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 585 0.0 1.5 188788 16012 ? S 10:24 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 588 0.0 1.6 189044 16384 ? S 10:24 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 589 0.0 1.1 184628 11736 ? S 10:24 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 731 0.0 1.2 185652 12660 ? S 10:35 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 735 0.0 0.0 18624 624 ? Ss 10:38 0:00 vzctl: pts/1 </span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 736 0.0 0.1 17688 1876 pts/1 Ss 10:38 0:00 -bash</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 895 0.0 0.6 181832 6160 ? S 10:47 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 896 0.0 0.6 181832 6160 ? S 10:47 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">www-data 897 0.0 0.6 181832 6160 ? S 10:47 0:00 /usr/sbin/apache2 -k start</span></span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #274e13;">root 899 0.0 0.1 14812 1032 pts/1 R+ 10:47 0:00 ps aux</span></span><br />
<br />
<br />
<br />
La “Aspirina” (alias nginx) ha deluso le mie aspettative. Inizialmente Apache2 risulta essere più leggero, in termini di memoria occupata, rispetto al tanto esaltato nginx.<br />
Ovviamente la dieta mediterranea di nginx si inizia ad apprezzare quando più client browser si collegano contemporaneamente al server web. Ma con una buona ottimizzazione delle impostazioni di Apache2, e considerando che a questo mio minidotato server si collegheranno al massimo 10 client, esclusivamente per gestire i pannelli di controllo sul web della macchina, e che quindi non scoprirò mai cosa sia il famigerato <a href="http://www.kegel.com/c10k.html">C10k problem</a>, direi che lo sbattimento sotto riportato me lo sarei potuto tranquillamente risparmiare.<br />
<br />
<br />
<h4>Chi ce lo fa fare: conclusione dell'installazione</h4>Per chi avesse necessità di usare PHP e non avesse il timore del <a href="http://www.kegel.com/c10k.html">C10k problem</a>, ritengo che l'acquisto di un banco di RAM per soddisfare l'ipercalorico Apache2 sia la soluzione migliore. Considerando che l'architettura di Apache nella visualizzazione delle pagina dinamiche dovrebbe essere più reattiva, oltre alla facilità di installazione, ricchezza della documentazione, vaste potenzialità e facilità e sicurezza con cui è possibile installare i più svariati siti/servizi web: phpmyadmin, wordpress, joomla, drupal, ecc...<br />
<br />
Non mi rimane che dirvi: "perché state ancora continuando a leggere questo mio preziosissimo <i>Manuale per l'installazione di nginx con php, mysql e phpmyadmin</i> che segue a breve?" (abbiate ancora un po' di pazienza, il testo altamente tecnico c'è!).<br />
<br />
<blockquote><span class="Apple-style-span" style="color: purple;">ATTENZIONE: alla fine, il mio impegno nell'installare la panacea di tutti i mali (alias nginx) non mi ha permesso di superare la sfida iniziale: <i>evitare di far collassare il web server, virtualizzato con 256 Mb di memoria dedicata, quando si cerca di far girare il sito dei “Tre maialini”</i>.</span></blockquote><blockquote><span class="Apple-style-span" style="color: purple;">Ci vogliono almeno 512 Mb per far girare <a href="http://www.phpmyadmin.net/">phpmyadmin</a> (alias "Tre maialini")!!</span></blockquote><br />
<br />
<br />
<h3>How To: codesto documento ad alto contenuto tecnico tanto bramato</h3><br />
<i>NB: Installazione testata su Debian Squeeze, 64 bit</i><br />
<br />
<h4>Installazione nginx con php</h4>Installare i seguenti pacchetti per avere anche il supporto php:<br />
<span class="Apple-style-span" style="color: blue;">apt-get install nginx php5-cli php5-cgi spawn-fcgi mysql-server </span><br />
<br />
Eseguire il seguente comando:<br />
<span class="Apple-style-span" style="color: blue;"><br />
</span><br />
<span class="Apple-style-span" style="color: blue;">echo "console output" >> /etc/init.d/nginx</span><br />
<br />
<br />
Avviare il servizio di nginx:<br />
<br />
<span class="Apple-style-span" style="color: blue;">/etc/init.d/nginx start</span><br />
<br />
<br />
Creare lo script di avvio di fastcgi per eseguire PHP:<br />
<br />
<span class="Apple-style-span" style="color: blue;">vi /usr/bin/php-fastcgi</span><br />
<br />
e scrivere all'interno del file il seguente testo:<br />
<br />
<span class="Apple-style-span" style="color: #274e13;">#!/bin/sh</span><br />
<span class="Apple-style-span" style="color: #274e13;">/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 6 -u www-data -f /usr/bin/php5-cgi</span><br />
<blockquote><div style="margin-bottom: 0cm;"><em>NOTA del 15/11/10: </em><em> </em><em>l'opzione</em><em><span style="color: maroon;"> -C </span></em><em><span style="color: maroon;">6</span></em><em> </em><em>al comando sopra citato </em><em>specifica di utilizzare 6 processi figli aggiuntivi per servire le pagine PHP, quest'opzione è utile </em><em>per servire più connessioni. </em><em>Non inserendo quest'opzione non si avranno processi figli: scelta </em><em>ottimale</em><em> per risparmiare memoria al sistema </em><em>qualora le connessioni fossero ridotte.</em></div></blockquote><br />
Attribuire i corretti permessi al file creato:<br />
<span class="Apple-style-span" style="color: blue;">chmod a+x /usr/bin/php-fastcgi</span><br />
<br />
Creare lo script per la gestione automatica del servizio:<br />
<br />
<span class="Apple-style-span" style="color: blue;">vi /etc/init.d/php-fastcgi</span><br />
<br />
e scrivere all'interno del file il seguente testo:<br />
<br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">#!/bin/bash</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">### BEGIN INIT INFO</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># Provides: php-fastcgi</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># Required-Start: $all</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># Required-Stop: $all</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># Default-Start: 2 3 4 5</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># Default-Stop: 0 1 6</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># Short-Description: Start and stop php-cgi in external FASTCGI mode</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># Description: Start and stop php-cgi in external FASTCGI mode</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">### END INIT INFO</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">PHP_SCRIPT=/usr/bin/php-fastcgi</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">FASTCGI_USER=www-data</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">RETVAL=0</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">case "$1" in</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">start)</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> su - $FASTCGI_USER -c $PHP_SCRIPT</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> RETVAL=$?</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> ;;</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">stop)</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> killall -9 php5-cgi</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> RETVAL=$?</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> ;;</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">restart)</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> killall -9 php5-cgi</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> su - $FASTCGI_USER -c $PHP_SCRIPT</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> RETVAL=$?</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> ;;</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">*)</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> echo "Usage: php-fastcgi {start|stop|restart}"</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> exit 1</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> ;;</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">esac</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">exit $RETVAL</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">console output</span></span><br />
<br />
Attribuire i corretti permessi al file creato:<br />
<span class="Apple-style-span" style="color: blue;">chmod 755 /etc/init.d/php-fastcgi</span><br />
<span class="Apple-style-span" style="color: blue;"><br />
</span><br />
Permettere l'avvio automatico dello script:<br />
<span class="Apple-style-span" style="color: blue;">update-rc.d php-fastcgi defaults</span><br />
<span class="Apple-style-span" style="color: blue;"><br />
</span><br />
Avviare il servizio:<br />
<span class="Apple-style-span" style="color: blue;">/etc/init.d/php-fastcgi start</span><br />
<br />
<br />
Per permettere la lettura delle pagine php è necessario modificare le impostazioni del dominio. Nel mio caso, ospitando un solo dominio, utilizzo il file di configurazione del dominio di default.<br />
<br />
<span class="Apple-style-span" style="color: blue;">vi /etc/nginx/sites-available/default</span><br />
<br />
e aggiungere le seguenti righe:<br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"># pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">location ~ \.php$ {</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"></span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> #FIX verifico l'esistenza del file richiesto per evitare falle di sicurezza<br />
if (!-f $request_filename) {<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span> return 404;<br />
}</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> </span></span><span class="Apple-style-span" style="color: #274e13;"> root /var/www;</span><br />
<span class="Apple-style-span" style="color: #274e13;"> fastcgi_pass 127.0.0.1:9000;<br />
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;<br />
include fastcgi_params;<br />
}</span><br />
<br />
<blockquote><i>NOTA: Il FIX è stato aggiunto a causa della presenza di una falla di sicurezza in FastCGI: </i><a href="http://www.salaserver.com/10642/nginx-e-php-tramite-fastcgi-individuato-un-problema-di-sicurezza/"><span class="Apple-style-span" style="color: black;"><i>qui potete trovare maggiori informazioni</i></span></a><i> a riguardo.</i></blockquote><br />
Inoltre è possibile specificare la directory di root dei siti web e indicare le pagine index di default; ecco un esempio:<br />
<br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">location / {</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> root /var/www;</span></span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"> index index.html index.htm</span><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">;</span></span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> fastcgi_index index.php;</span><br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">}</span></span><br />
<br />
<br />
Per verificare in funzionamento creare una pagina php di prova:<br />
<span class="Apple-style-span" style="color: blue;">vi /var/www/index.php</span><br />
<br />
e scrivere dentro il seguente testo:<br />
<br />
<span class="Apple-style-span" style="color: #274e13;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"></span></span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib4pAl4ziCFrbOuziwWlKlF2sd__0WY1D_kgSeSV63wNVawzstULDmV0p_Z11IluP-Vl0jPtbJNQR6w5utRZ6tIZitXJRTdsFeSRVa8PD6EIAiwHLskaYQv7kC9dP61hRxAfdiyIeCgFQ/s1600/phpinfo1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib4pAl4ziCFrbOuziwWlKlF2sd__0WY1D_kgSeSV63wNVawzstULDmV0p_Z11IluP-Vl0jPtbJNQR6w5utRZ6tIZitXJRTdsFeSRVa8PD6EIAiwHLskaYQv7kC9dP61hRxAfdiyIeCgFQ/s1600/phpinfo1.png" /></a></div><span class="Apple-style-span" style="color: #274e13;"><br />
</span><br />
<span class="Apple-style-span" style="color: #274e13;"><br />
</span><br />
Successivamente navigare all'indirizzo del server (ES: http://indirizzoIP/index.php ) con un browser per testare se la pagina php viene letta correttamente.<br />
Dovreste visualizzare una pagina simile a questa:<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhn6cjMACJH1YZQrjdEv7ftXxaQ6cL9CYpoJsonfLdVLZQaWOWjOphtMIIC1G7AvwB4lKfgFBsEo0K3QX6QaJyA-yf0L7derIL7Q4ytl1iAf3OYxr9knFLjGZR-HyTWOx9RLYbbWklRS_4/s1600/phpinfo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhn6cjMACJH1YZQrjdEv7ftXxaQ6cL9CYpoJsonfLdVLZQaWOWjOphtMIIC1G7AvwB4lKfgFBsEo0K3QX6QaJyA-yf0L7derIL7Q4ytl1iAf3OYxr9knFLjGZR-HyTWOx9RLYbbWklRS_4/s400/phpinfo.png" width="350" /></a></div><br />
<br />
<h4>Installazione phpmyadmin</h4>Purtroppo non è stato facile capire come fare, senza caricare phpmyadmin nella document root del web. Ma è possibile seguendo questa guida:<br />
<br />
Installare il pacchetto dai repository :<br />
<span class="Apple-style-span" style="color: blue;">apt-get install phpmyadmin</span><br />
<br />
verranno fatta delle domande, nella lista dei server web non compare nginx (e te pareva!), pertanto ho selezionato casualmente apache (ma credo sia meglio non seleziona nulla).<br />
<br />
Finita l'installazione per fare funziona phpmyadmin all'indirizzo <i>http://localhost/phpmyadmin</i>, visto che non c'è l'installazione dedicata per nginx, bisogna procedere con i seguenti passi:<br />
<br />
Aprire il file di configurazione del dominio (continuo ad usare quello di default):<br />
<span class="Apple-style-span" style="color: blue;">vi /etc/nginx/sites-available/default</span><br />
<br />
e aggiungere le seguenti righe:<br />
<br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> location /phpmyadmin {</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> root /usr/share;</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> fastcgi_index index.php;</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> index index.php;</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> location ~ ^/phpmyadmin.+.php$ {</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> root /usr/share;</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> fastcgi_pass 127.0.0.1:9000;</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> include fastcgi_params;</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span class="Apple-style-span" style="color: #274e13; font-family: Arial, Helvetica, sans-serif;"><br />
</span><br />
<br />
<br />
Infine riavviate i servizi:<br />
<span class="Apple-style-span" style="color: blue;">/etc/init.d/nginx reload</span><br />
<span class="Apple-style-span" style="color: blue;">/etc/init.d/php-fastcgi restart</span><br />
<br />
e provate a collegarvi all'indirizzo <i>http://indirizzoIP/phpmyadmin</i>. Buona navigazione.<br />
<br />
<br />
<h3>Ringraziamenti</h3>Questa preziosissima guida è frutto di: un abile copia e incolla, imprecazioni (tante), prove e cocciutaggine personale.<br />
Pertanto si ringrazia tutti quelli che hanno nascosto una traccia importante nelle loro guide o quelli che avevano esigenze chiaramente diverse dalle mie... o guide per altre piattaforme.<br />
<br />
Vorrei citare tutte le possibili fonti, ma essendo troppe e di breve ispirazione cito un semplice grazie!More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com6tag:blogger.com,1999:blog-6964936517594052608.post-84036054476723695112010-09-17T09:31:00.000-07:002010-09-17T09:35:03.809-07:00Top More: nell'intimità dei programmatori<i><span class="Apple-style-span" style="color: #783f04;">Top More: la classifica delle “massime espressioni”</span></i><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHWRvhh5D0bmIoLczPHGw-s6yq_p3C9QPCvZgUKhqyLaQL8lojtvG0M360zjGFQwAgDlHlFt8bq7DDZK14IWgdKy2e_2YRIJEs5WUWXpdH2QV-v3Ol4c30RvURngbTq_baWI8PhvlZtBQ/s1600/TopMore.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHWRvhh5D0bmIoLczPHGw-s6yq_p3C9QPCvZgUKhqyLaQL8lojtvG0M360zjGFQwAgDlHlFt8bq7DDZK14IWgdKy2e_2YRIJEs5WUWXpdH2QV-v3Ol4c30RvURngbTq_baWI8PhvlZtBQ/s320/TopMore.jpg" /></a></div><br />
Oggi, Venerdì 17, mi sono infilato sotto le coperte dell'intimità dei programmatori/trici (il codice sorgente) per stilare la prima classifica di <i>Top More</i>.<br />
In questo microclima graveolente dove i corpi marcescenti di sogni depositano le intimissime fragranze, ho riscoperto le essenze umane celate dentro quei prodotti che usiamo abitualmente sui nostri computer ignari dell'olezzo interno: i software.<br />
<br />
<a name='more'></a><br />
<br />
Sul Red Carpet di quest'edizione di Top More hanno sfilato i migliori commenti scritti dai programmatori all'interno del codice sorgente dei software durante le loro sessioni creative, eccoli a voi:<br />
<br />
<br />
<span class="Apple-style-span" style="color: red;">ATTENZIONE: i testi che seguiranno potrebbero contenere linguaggio offensivo e volgarità</span><br />
<br />
<br />
<br />
<b>10° - Menzione speciale: “Ringraziamenti speciali”</b><br />
<br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">//Grazie al disegno a caz<span class="Apple-style-span" style="color: red;"><span class="Apple-style-span" style="font-size: x-small;">bip</span></span>o di cane degli headers relativi, MFC non accetta l'inclusione del file windows.h</span></blockquote>(<a href="http://www.koders.com/c/fidB1CD27B3328C9BA9427C26C8E0037B2E29571E43.aspx?s=cazzo#L4">Codice Sorgente</a>)<br />
<br />
<br />
<b> 9° - Menzione speciale: “La fiducia riposta in un software”</b><br />
<br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">//se non riesco ad aprire la tabella di origine che caz<span class="Apple-style-span" style="color: red;"><span class="Apple-style-span" style="font-size: x-small;">bip</span></span>o faccio? </span></blockquote>(<a href="http://www.krugle.org/entfiles/jedidbd/sourceforge.net/head/jedidbd/plugins/diffscript/uBParadox.pas">Codice Sorgente</a>)<br />
<br />
<br />
<b> 8° - Menzione speciale: “Corretta coerenza”</b><br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">//questa stringa fa schifo in inglese! correggo in italiano </span></blockquote><br />
(<a href="http://www.google.com/codesearch/p?hl=it#ErvFMsc8kPE/pub/GNOME/sources/gnome-utils/2.7/gnome-utils-2.7.0.tar.gz|Aud29u-F2yQ/gnome-utils-2.7.0/po/it.po&q=%22%20schifo%20%22">Codice Sorgente</a>)<br />
<br />
<b> 7° - Menzione speciale: “Software vulgaris”</b><br />
<br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">//yo, ora papaya aspetta che je aumenti er volume se no nun se sente ncaz<span class="Apple-style-span" style="color: red;"><span class="Apple-style-span" style="font-size: x-small;">bip</span></span>o</span></blockquote>(<a href="http://www.google.com/codesearch/p?hl=it#SJj3L2p8Cls/trunk/ui.c&q=cazzo&sa=N&cd=10&ct=rc">Codice Sorgente</a>)<br />
<br />
<br />
<b> 6° - Menzione speciale: “Ambiguità”</b><br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">//finche' il buco non e' chiuso o non ci sono piu' orecchie da analizzare.</span></blockquote><br />
(<a href="http://www.google.com/codesearch/p?hl=it#EcJQ7EWXqJg/trunk/merlin/vcglib/vcg/complex/trimesh/hole.h&q=%22%20buco%20%22&sa=N&cd=8&ct=rc&l=544">Codice Sorgente</a>)<br />
<br />
<br />
<b> 5° - Menzione speciale: “Determinazione”</b><br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// TODO: col caz<span class="Apple-style-span" style="color: red;"><span class="Apple-style-span" style="font-size: x-small;">bip</span></span>o! deve tornare un errore!</span></blockquote><blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">return YES;</span></blockquote><br />
(<a href="http://www.google.com/codesearch/p?hl=it#mrouQBTZ9f8/trunk/ReverserBench/MyDocument.m&q=cazzo&sa=N&cd=33&ct=rc&l=135">Codice Sorgente</a>)<br />
<br />
<br />
<b> 4° - Menzione speciale: “Quando s'ha da fa”</b><br />
<br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// buco di sicurezza, ma necessario</span></blockquote><br />
(<a href="http://www.google.com/codesearch/p?hl=it#xr5vJMGKX5o/os3/net/CTPRPCServer.py&q=%22%20buco%20%22&sa=N&cd=6&ct=rc&l=227">Codice Sorgente</a>)<br />
<br />
<br />
<br />
<br />
Ed ecco i tre vincitori:<br />
<br />
<br />
<br />
<b> 3° - Vincitore: “Rivelazioni”</b><br />
<blockquote><span class="Apple-style-span" style="font-weight: normal;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">//todo QUESTA FUNZIONE NON FUNZIONA PER UN CAZ</span></span><span class="Apple-style-span" style="color: red; font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span class="Apple-style-span" style="font-size: x-small;">bip</span></span><span class="Apple-style-span" style="font-weight: normal;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">O</span></span></blockquote>(<a href="http://www.google.com/codesearch/p?hl=it#pjKFfwNdZVY/trunk/OFAPI_PHPLibrary/shared.php&q=%22%20non%20funziona%20%22&sa=N&cd=35&ct=rc">Codice Sorgente</a>)<br />
<br />
<br />
<b> 2° - Vincitore: “Confessioni”</b><br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// Perchè arrivati a questo livello non ci sono più commenti?</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// Evidentemente cinque righe più su mi son rotto</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// il caz</span><span class="Apple-style-span" style="color: red; font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="font-size: x-small;">bip</span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">o di scrivere commenti =)</span></blockquote>(<a href="http://www.google.com/codesearch/p?hl=it#ooIkWkal6xA/compito.c&q=cazzo&sa=N&cd=22&ct=rc&l=46">Codice Sorgente</a>)<br />
<br />
<br />
<b> 1° - Vincitore: “Umiltà”</b><br />
<blockquote><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">// Non capisco ma mi adeguo...</span></blockquote>(<a href="http://www.google.com/codesearch/p?hl=it#7j7x2kcjYyU/trunk/our/gui/ourComboBox.java&q=%22non%20capisco%22&sa=N&cd=10&ct=rc">Codice Sorgente</a>)<br />
<br />
<br />
<br />
<br />
<h3>Per Maggiori Informazioni</h3><br />
Un caloroso ringraziamento va ai seguenti motori di ricerca che mi hanno aiutato a stilare questa assolutistica classifica.<br />
<br />
<a href="http://www.krugle.org/">http://www.krugle.org</a><br />
<a href="http://www.koders.com/">http://www.koders.com</a><br />
<a href="http://www.google.com/codesearch">http://www.google.com/codesearch</a>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com5tag:blogger.com,1999:blog-6964936517594052608.post-66496785412551750792010-09-16T14:56:00.000-07:002010-09-16T15:26:25.252-07:00KMAIL: Khe Magnifico Applicativo In Ludoteca<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhczgdVXAZVYO2-hilRAYCoif-AdWIR37-6xb1Thyphenhyphen6mYeASVXRIXu1OoIH0uFsvokurWOIiKxsCAJMegMeSIt8nBzuJsbg-2TaCxSbvebNejbxwKHDOb8PSI7Z0vOiOwrRWmwrq5iYvyuU/s1600/kmail_cover.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhczgdVXAZVYO2-hilRAYCoif-AdWIR37-6xb1Thyphenhyphen6mYeASVXRIXu1OoIH0uFsvokurWOIiKxsCAJMegMeSIt8nBzuJsbg-2TaCxSbvebNejbxwKHDOb8PSI7Z0vOiOwrRWmwrq5iYvyuU/s320/kmail_cover.png" /></a></div><br />
Ci sarà il calzolaio di turno che mi smentirà, ma buona parte del lavoro di molti transita attraverso strisce di bit lanciate dentro il dedalo lastricato del Web chiamate comunemente “email”.<br />
Dunque l'economia dei datori e lo stato di salute dei lavoratori è riposto principalmente nel frontend di questo globale e rapido meccanismo di comunicazione, comunemente chiamato “<a href="http://it.wikipedia.org/wiki/Client_email">client email</a>”.<br />
<br />
Come per molti gingilli elettronici, anche alcuni software hanno la tendenza a perdere di vista il loro compito principale, così ci troviamo programmatori intenti ad applicare l'effetto glow, naked, bubble... dimenticando che una sala gremita di utenti affascinati non vale nemmeno un pugno<span class="Apple-style-span" style="color: #0b5394; font-size: small;"><sup>1</sup></span> di un utente soddisfatto!<br />
<br />
<a name='more'></a><br />
<br />
Dopo anni di uso e usura del mio abituale Client email, stanco di qualche “bruttura” nel <a href="http://it.wikipedia.org/wiki/Desktop_environment">Desktop Environment</a> <a href="http://www.kde.org/">KDE</a> e bisognoso di qualche eccitante da Geek per superare la fine dell'Estate, ho avuto la brillante idea di installare il <i>maturo</i><span class="Apple-style-span" style="color: #0b5394; font-size: small;"><sup><i>2</i></sup></span> <a href="http://userbase.kde.org/Kmail">Kmail</a> (versione 1.13.5 pacchettizzato per Debian Squeeze) per dargli l'opportunità di diventare il programma più usato sul mio computer aziendale.<br />
<br />
<br />
<h3>Insert coin</h3>Dopo aver configurato i miei quattro account email <a href="http://it.wikipedia.org/wiki/IMAP">IMAP</a>, ho lanciato questo gingilloso e stiloso client email. <br />
Nella <i>cool</i> home page di benvenuto mi è balzata all'occhio una singolare frase alquanto inquietante:<br />
<blockquote><i>Speriamo che ti divertirai con Kmail</i></blockquote>Che non sia un client mail ma una nuova avventura di Super Mario Bros???<br />
<br />
Ebbene, che il “gioco” inizi!<br />
<br />
<b>Score -1 </b><br />
Come prassi aziendale, le password per gli account email non vanno memorizzate nel sistema ma devono essere sempre digitate... e ovviamente, delle quattro password, mi è capitato di sbagliare a digitarne una. Il <i>vigile</i> Kmail mi notifica la password sbagliata con una bella dialog integrata nel gestore di KDE, e, poco dopo il brivido <i>cool,</i> scopro che al <i>fetente</i> Kmail non gli passa neanche per la testa di domandarmi se voglio eventualmente inserire la password corretta, così <u>periodicamente</u> si fa beffa di me notificandomi l'errore con quella graziosa e sostenibile dialog! Alla terza notifica, rassegnato all'impossibilità di reinserire la password, riavvio il <i>beffardo</i> Kmail e mi piego all'assurdità di ridigitare nuovamente tutte e quattro le password.<br />
<br />
Ecco un esempio di notifica funzionale e umana di un client email concorrente (non faccio nomi ma potete vedere il loghino ;-) ):<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrlhs8aJ4Oue-D0YgEUEDx5LoHz2y944Q5T0sCZLoFv79SNKztdWUotaifitKpNjNzjENZDqrRIT9yv6QnoIyvrcoROM3jrWTpLndH3-VrThoXvV7PHf6jHHtcA6QALuY8sxV9fMX6CpQ/s1600/kmail_NOTIFICAOK.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrlhs8aJ4Oue-D0YgEUEDx5LoHz2y944Q5T0sCZLoFv79SNKztdWUotaifitKpNjNzjENZDqrRIT9yv6QnoIyvrcoROM3jrWTpLndH3-VrThoXvV7PHf6jHHtcA6QALuY8sxV9fMX6CpQ/s320/kmail_NOTIFICAOK.png" /></a></div><br />
<br />
<br />
<b><span class="Apple-style-span" style="font-weight: normal;"><b>Score -2</b></span></b><br />
Imposto i temi delle intestazioni e piccoli altri dettagli<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhl22n48hvapuiadMaN_oRpXB0E380PU6YtmaqA5jZWPDQAvlKxpocgnpcpo_JV1l17jYYLYhoML1Mx1SGM6wjEJJnwibBjvhmAe8zS3iBZYSnr5Y4t9IF-eXyVdYCJTTtdFnN1IpU8PYM/s1600/kmail1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="237" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhl22n48hvapuiadMaN_oRpXB0E380PU6YtmaqA5jZWPDQAvlKxpocgnpcpo_JV1l17jYYLYhoML1Mx1SGM6wjEJJnwibBjvhmAe8zS3iBZYSnr5Y4t9IF-eXyVdYCJTTtdFnN1IpU8PYM/s400/kmail1.png" width="400" /></a></div><br />
<span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #351c75;">Tema del messaggio email: "Intestazione Elegante" e la notifica della password errata in basso a destra del <i>fetente</i> Kmail</span></span></span><br />
<span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #351c75;"><br />
</span></span></span><br />
<span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #351c75;"><br />
</span></span></span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg39WUM_JFBGHUPUrmLwrUX3db52MhAJuD9SCK4djJ4U5WZcCaxQ9Yu1hmnzKoIgETEjKgW08fffYVB892fiB_-F3JCQU4UVAZd6XPLdwhqoh24cCExIaS6POigek0AB3jhjdf574R3KoY/s1600/kmail2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="230" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg39WUM_JFBGHUPUrmLwrUX3db52MhAJuD9SCK4djJ4U5WZcCaxQ9Yu1hmnzKoIgETEjKgW08fffYVB892fiB_-F3JCQU4UVAZd6XPLdwhqoh24cCExIaS6POigek0AB3jhjdf574R3KoY/s400/kmail2.png" width="400" /></a></div><br />
<span class="Apple-style-span" style="color: #351c75; font-family: Arial, Helvetica, sans-serif;">Tema del messaggio email: "Intestazione aziendale" </span><br />
<br />
Bello ...peccato che ogni tanto quelle impostazioni se le dimentica! (odore di Bug??)<br />
<br />
<b><span class="Apple-style-span" style="font-weight: normal;"><b>Score -3</b></span></b><br />
Inserisco la firma a piè pagina includendo un file html, peccato che non riconosce l'html e mi ritrovo a dover usare il compositore del <i>per non saper leggere e scrivere</i> Kmail per riscrivermi il piè email formattato in html.<br />
<br />
<b><span class="Apple-style-span" style="font-weight: normal;"><b>Score -4</b></span></b><br />
Invio un'email (per fortuna il <i>superlativo</i> Kmail riesce a inviarla) ma anziché archiviare l'email inviata nella cartella “sent” nel server IMAP del relativo account, me la parcheggia in una cartella locale (è una condizione basilare del funzionamento del <i>fan tutti così</i> Kmail???)... così mi ritrovo a dover spostare manualmente ciascuna email inviata nella corrispettiva cartella del server IMAP ..molto <a href="http://www.pc-facile.com/glossario/user-friendly/">user friendly</a>.<br />
<br />
<b><span class="Apple-style-span" style="font-weight: normal;"><b>Score -</b></span>5</b><br />
Faccio un “forward inline” di un'email di un cliente e il <i>capoccione</i> Kmail si rifiuta di includere nel corpo il testo dell'email originale.... così mi ritrovo a fare Ctrl+C e Ctrl+V del testo per fingere un classico forward??? (<a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=551552">http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=551552</a>, alla fine del post ho scritto come sistemare questa "anomala normalità")<br />
<br />
<br />
<b>Game over</b><br />
Per me la partita è finita: il <i>ludico</i> Kmail è un gran bel programma che continuerò a collezionare nel menu degli applicativi ..chissà, un giorno forse potrò anche usarlo non soltanto per "divertirmi".<br />
<br />
<br />
<br />
<h3>Quel <a href="http://it.wikipedia.org/wiki/RTFM">RTFM</a> che nessuno legge</h3>Purtroppo il <a href="http://docs.kde.org/stable/it/kdepim/kmail/intro.html">manuale di Kmail</a> l'ho letto soltanto dopo averlo installato. Vi riporto alcuni stralci che potevano essere un buon punto di partenza per soppesare l'installazione:<br />
<blockquote><i>“Il nostro obiettivo è rendere KMail bello ed intuitivo senza sacrificare potenza e flessibilità.”</i></blockquote>Pertanto il “funzionare bene” non rientra nel loro obiettivo principale.<br />
<br />
<blockquote><i>“Sebbene KMail possa essere considerato affidabile, è meglio tenere una copia di sicurezza dei messaggi”</i></blockquote>L'utilizzo del verbo “potere” induce, inevitabilmente, a dubitare della veridicità delle parole successive, e tale dubbio è rafforzato dall'averlo coniugato al <a href="http://it.wikipedia.org/wiki/Congiuntivo_presente">congiuntivo</a> tanto da darci la certezza che tra le tante possibili qualità sicuramente non spicca l'affidabilità. <br />
<br />
<br />
<br />
<h3>Perché parlo male del <i>glorioso</i> Kmail</h3>Perché è innegabilmente e maledettamente un ottimo prodotto, ma è possibile che in 10 anni, per un motivo o l'altro, non l'ho mai potuto realmente usare in azienda?!<br />
<br />
<br />
<br />
<br />
<span class="Apple-style-span" style="font-size: small;">Note:</span><br />
<span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="color: #0b5394;">1</span> il pugno non c'entra tanto ma, da nerd, ho voluto fare un implicito richiamo celebrativo al film di Sergio Leone “Per un pugno di dollari”</span><br />
<span class="Apple-style-span"><span class="Apple-style-span" style="color: #0b5394; font-size: small;">2</span> dopo 11 anni di sviluppo un client email deve pur acquistare il titolo di "maturo"</span><br />
<br />
<br />
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"> |<br />
|</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"> |</div> |<br />
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"> |</div> |<br />
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"> |</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"> |</div> V<br />
<h3>Dimenticavo: il Bug Fix per gli irriducibili</h3>Se hai ancora qualche moneta e vuoi continuare a giocare con il <i>divertente</i> Kmail, forse ti sarà utile sapere che il problema del “testo dell'email in linea” durante il forward si sistema facilmente. Vai nelle impostazioni di Kmail, seguendo questo percorso nei menu:<br />
<div style="margin-bottom: 0cm;">Configura Kmail → Compositore → Modelli standard → Inoltra messaggio</div><div style="margin-bottom: 0cm;">Sostituisci <span class="Apple-style-span" style="color: #274e13;">%BLANK </span>con il seguente testo(che puoi personalizzare a tuo piacimento):</div><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">-------- Messaggio originale --------</span></span></span></blockquote><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">Data: %ODATE %OTIMELONG</span></span></span></blockquote><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">Oggetto: %OFULLSUBJECT</span></span></span></blockquote><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">Mittente: %OFROMFNAME</span></span></span></blockquote><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">A: %OTOADDR</span></span></span></blockquote><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">CC: %OCCADDR</span></span></span></blockquote><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">-------</span></span></span></blockquote><blockquote><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #274e13;">%QUOTE</span></span></span></blockquote><div style="margin-bottom: 0cm;"><br />
</div><div style="margin-bottom: 0cm;">come illustrato in figura:</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_xZKbIrKGJuoMFIMJt6XP10zqHrE8PngvFx4obvdznCUpCieyaYN4SFmnmYwKmsmUSAb0jW62hs03YW2BVInYUdNKKu2tMvMYmGeFXNWd8Kh-CCMNqYA9bvrORFcSRMXVRH-pCMW1gnM/s1600/kmail_FIX.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="226" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_xZKbIrKGJuoMFIMJt6XP10zqHrE8PngvFx4obvdznCUpCieyaYN4SFmnmYwKmsmUSAb0jW62hs03YW2BVInYUdNKKu2tMvMYmGeFXNWd8Kh-CCMNqYA9bvrORFcSRMXVRH-pCMW1gnM/s400/kmail_FIX.png" width="400" /></a></div><div style="margin-bottom: 0cm;"><br />
</div><div style="margin-bottom: 0cm;"><br />
</div>More+http://www.blogger.com/profile/14667825027749674006noreply@blogger.com0