Il vizio di sempre

Mele e appunti

È solo una nota di colore che mi ha fatto un po’ sorridere. Stavo sistemando vecchie scartoffie e mi capita in mano una busta in cui avevo conservato tre inserti “Digidattica” della storica rivista italiana di informatica Bit, nonché un numero della rivista stessa, risalente al 1983, purtroppo senza copertina. Ho preso a sfogliarla, subito colto da tenerezza e nostalgia nel vedere le varie pubblicità di ZX Spectrum, Commodore VIC-20 e 64, ma anche Olivetti M20 e l’allora nuovissimo M10, e poi IBM, Hewlett-Packard e via dicendo.

A pagina 9, nella sezione delle News, l’occhio mi cade su un titoletto: Microsoft tenta di imporre il suo standard. Sì, sembra una notizia fresca dell’altro giorno. Ripeto, la rivista è del 1983. Riporto per curiosità l’intero trafiletto:

Forte dell’enorme successo incontrato nell’area personal computer con i suoi prodotti software a partire dal notissimo MS BASIC, un vero best seller adottato dai micro a 16 come ad 8 bit, la Microsoft per bocca del suo giovane presidente Billy H. Gates ha lanciato una stimolante sfida alla standardizzazione. Questa — che in origine corrisponde ad un concetto messo in pratica soprattutto da due case giapponesi costruttrici di hardware: la Matsushita e la NEC — va sotto la sigla MSX e fondamentalmente comprende specifiche che per il software corrispondono ad una versione avanzata del BASIC Microsoft mentre anche per l’hardware danno luogo ad indicazioni piuttosto concrete e dettagliate. Il principio ispiratore è quello, in sé sacrosanto, dell’esigenza sempre più sentita della massima trasferibilità del software, tanto di base che applicativo, con il minimo dei costi di riciclaggio nel passare da un sistema all’altro. Ci sembra fin troppo facile preconizzare un’adesione entusiasta da parte dei produttori minori, tanto di sistemi che di programmi, mentre di dubbio appare fin d’ora quella di società che hanno fondato le proprie sorti su una strategia della diversificazione.

In ogni modo l’MSX è un prodotto che, per l’hardware, comprende:

  • lo Z80 Zilog come CPU;
  • il chip 9918 di gestione video della Texas Instruments;
  • un’interfaccia per joystick;
  • cartucce ROM.

Caratterizzato anche da un marchio comune per contrassegnare i prodotti ad esso omologhi l’MSX proclama peraltro di essere un insieme di specifiche ‘aperto’, cui si può aderire pagando una tassa iniziale e royalties definite esigue, ricevendo garanzie di ricevere le specifiche aggiornate ed i diritti d’uso del BASIC Microsoft nella cui ultima versione sono comprese caratteristiche per gestire voci multiple e grafica ad elevata risoluzione. La tassa per l’MSX dà diritto a tale versione ma esclude il sorgente. Gli sviluppi futuri, che palesemente puntano ad un netto rafforzamento della leadership Microsoft, prevedono l’unificazione di altre funzioni hard/soft (quale il governo di videodischi) o l’applicazione di MSX al settore televisivo (per sistemi tipo Videotex?). Contatti intensi son in corso con società statunitensi ed europee. 

Il contesto è abbastanza lontano dalla realtà di oggi, ma gli ingredienti fondamentali dello ‘stile Microsoft’ ci sono già tutti: sfruttare la grande diffusione di un prodotto (oggi è Windows, ieri era il MS BASIC) per costruirci sopra una piattaforma proprietaria. ‘Standard’ per Microsoft ha sempre significato ‘procedura dettata da un monopolio’. I semi di questa cultura sono sempre stati presenti nell’azienda di Gates.

Il brutto quarto d'ora di Twitter

Mele e appunti

Nelle ultime ventiquattro ore Twitter è stato un caso esemplare di faux pas. Per la serie: non basta avere un servizio di grande successo, occorre saperlo gestire cercando possibilmente di non spararsi su un piede.

La cronaca degli eventi è ben riassunta da questo post su TechCrunch — e prontamente traduco (i miei commenti e chiarimenti in parentesi quadre):

Problema 1: Twitter elimina l’opzione di poter visualizzare le @risposte indirizzate a persone che non seguiamo. [Ovvero: se io seguo Pippo ma non Paperino, non vedrò le risposte che Pippo scrive a @Paperino]

Perché non è stata una buona cosa: Perché era solo un’opzione, non l’impostazione di default. Agli utenti non piace mai vedersi eliminare delle opzioni. Perché togliere quell’opzione? Ci arriviamo fra un momento.

Problema 2: Twitter scrive un post sul blog ufficiale spiegando che il cambiamento “rispecchierà in maniera migliore” come le persone utilizzano Twitter. Si dice che questa scelta è basata su pattern di utilizzo e feedback ricevuto.

Perché non è stata una buona cosa: Ma Twitter non ha imparato nulla da Facebook in questi anni? Se dovete effettuare un cambiamento, anche se siete sicuri che sia una mossa giusta, fatelo sapere all’utenza prima di renderlo effettivo. È una regola valida anche se non avete alcuna intenzione di discutere il cambiamento che state per apportare […]

Problema 3: Alcuni dipendenti di spicco di Twitter iniziano a scrivere messaggi in cui manifestano disaccordo sul cambiamento. Ciò comprende tweet di incertezza da parte del CEO Evan Williams.

Perché non è stata una buona cosa: Se state davvero facendo quella che credete sia la mossa giusta, non mostrate indecisione, né ciurlate nel manico, specialmente nel luogo che avete creato perché tutti leggano pubblicamente i vostri pensieri. Gli utenti si accorgeranno di questo atteggiamento e le cose non potranno che peggiorare.

Problema 4: Twitter scrive un post il giorno dopo, che contiene questa frase: “Il team di ingegneri mi ha ricordato che vi erano dei gravi motivi tecnici che avrebbero portato all’eliminazione di quella opzione o a una completa revisione della stessa”.

Perché non è stata una buona cosa: Queste parole avrebbero dovuto essere scritte in occasione del primo post sulla questione. Di più: avrebbe dovuto essere l’argomento principale del primo post. Adesso l’impressione è che Twitter sia stato intenzionalmente fuorviante sul motivo dell’eliminazione di quell’opzione. […] Discutendo di tale cambiamento con altre persone, tutti ci siamo trovati d’accordo sul fatto che sia dovuto a ragioni di scala [ovvero: Twitter non riesce a stare al passo con la progressiva espansione del servizio]. Se tutti ne siamo al corrente, perché un co-fondatore della compagnia deve avere qualcuno che ‘glielo ricorda’? Chiaramente non è questo il caso. E non essere aperti e onesti su questo punto fin dal principio è stato un errore.

Problema 5: Twitter è offline per un’operazione di manutenzione programmata — la seconda in una settimana, nel bel mezzo di un giorno lavorativo [leggi: di alto traffico].

Perché non è stata una buona cosa: Pessima tempistica. Gli utenti volevano discutere quel nuovo post e fornire feedback a Twitter usando Twitter, ma non hanno potuto farlo.

Problema 6: Twitter scrive un terzo post a distanza di poche ore annunciando di star tornando sui propri passi e annullando le modifiche — ma non del tutto.

Perché non è stata una buona cosa: Fare qualcosa a metà non è mai una buona idea. Se cambiate qualcosa o non cambiate nulla, ciò può irritare alcuni utenti. Ma effettuando un mezzo cambiamento si finisce con l’irritare tutti.

Problema 7: Il risultato del ‘mezzo dietro-front’ è una situazione che rende il servizio ancor più complicato. [Sì, perché ora pare che se l’Utente 1 digita espressamente @Utente 2 quando risponde a Utente 2, quella risposta sarà visibile anche a chi non segue Utente 2, mentre premendo il pulsante dell’interfaccia di Twitter per rispondere a Utente 2, o usando la funzione di risposta dei vari client di Twitter che formattano automaticamente la risposta con @ seguito dal nome dell’utente, tale risposta non sarà visibile a chi non segue l’Utente 2. L’ho detto che era complicato!]

Perché non è stata una buona cosa: Perché non segue il principio cosiddetto Keep It Simple, Stupid (ovvero l’obiettivo del design deve essere la semplicità, senza inutili complessità). Twitter è nato all’insegna della semplicità. La semplicità è alla base della crescita e dello stesso DNA di Twitter. Ora Twitter sta cercando di calmare i propri utenti attraverso ulteriori modifiche inutilmente arzigogolate, e non è una buona idea secondo me. Yoda diceva: “Provare no! Fare! O non fare. Non c’è provare!”

Problema 8: Un server è caduto, rendendo Twitter inutilizzabile per parecchie ore.

Perché non è stata una buona cosa: È la beffa dopo il danno, per così dire. 

Siamo d’accordo: non a tutti interessa Twitter e men che meno i suoi problemi, ma l’esempio rimane e va sottolineato a prescindere dai particolari. È innanzitutto un problema di design, di progettazione. Twitter toglie un’opzione che, a giudicare dalla reazione di massa, era incredibilmente utile per gli utenti. E io mi aggiungo al coro: ho potuto seguire e ‘conoscere’ persone interessanti perché ho visto il loro nome utente menzionato da persone che già seguivo. Non è forse questo uno dei capisaldi del concetto di ‘network’? Se isolo i nodi, che caspita di rete pretendo di ottenere? Twitter toglie un’opzione per un motivo preciso, che però non dichiara apertamente, o ne parla comunque in maniera goffa. Una tale gestione delle pubbliche relazioni dimostra immediatamente una cosa: dilettantismo. A prescindere che le persone coinvolte siano dilettanti o meno. Questo crea inutili sospetti e, in ultima analisi, un velo di sfiducia nel rapporto fra utente e servizio. Infine, il tornare sui propri passi a seguito della scontentezza generale è una buona cosa, ma ripristinando la situazione precedente, non inserendo un livello di complessità totalmente fuori luogo cercando di salvare capra (i limiti tecnici di Twitter) e cavoli (gli utenti furiosi). Non avvisare di queste modifiche è stato un altro passo falso abbastanza grave, a mio avviso.

Da utente di Twitter, posso dire che il cambiamento si nota: meno traffico e meno ‘conversazioni’ — o meglio, questa è la percezione in superficie. In realtà è una situazione filtrata a priori, e molti messaggi non appaiono più perché sono rivolti a persone che non seguo. La sensazione è un po’ strana e l’esperienza è diversa da prima.

Piccole applicazioni crescono (2)

Mele e appunti

Lo so, lo so, rieccomi a parlare di browser, e di Stainless in particolare. Ho scoperto questo browser nell’ottobre 2008, e mi ha subito fatto un’ottima impressione (ne parlo in questo articolo del 31/10/2008). Ne ho riparlato più di recente, in merito alle nuove funzionalità introdotte nella versione 0.5.1.

L’ho già detto: gli ingredienti di Stainless che mi hanno conquistato sono in primis le buone prestazioni (stabilità, velocità e bassi consumi — sembra di parlare di un’automobile!) e l’interfaccia grafica piacevolmente spartana. Ma mi piace anche la filosofia di procedere a piccoli passi, ottimizzando l’esistente invece di lasciarsi prendere dalla frenesia di aggiungere vagonate di funzioni che poi o non servono davvero, o non funzionano bene, o sovraccaricano il browser e lo rendono meno usabile ed efficiente, o tutte queste cose insieme.

Stainless non ha ancora dettagli che su altri browser diamo per scontati: autocompletamento dell’URL, conservazione delle password, una finestra separata per la gestione complessa dei bookmark, e via dicendo. Ma quel che ha funziona decisamente bene. Le ‘novità’ della versione 0.6 sembrano minori:

1. È stato aggiunto un pannello per la gestione della cronologia, ma lo trovo ben congegnato ed estremamente intuitivo da usare.

2. La barra dei bookmark è stata potenziata. Fino alla versione 0.5.5 l’unica cosa possibile era trascinare l’icona di un sito (favicon) nella barra laterale. Ma una gestione simile dei bookmark è piuttosto rudimentale e soggetta a trappole di usabilità. Esempio: se molti siti che aggiungo alla barra laterale non hanno una favicon particolare e usano un’icona generica, oppure si servono della medesima icona (come è il caso di svariati blog della piattaforma Blogger o WordPress), io mi ritroverò tante icone uguali e non potrò distinguere a prima vista un sito dall’altro. Adesso non solo appare il nome del sito quando passo col puntatore sopra l’icona, ma è stato anche aggiunto un menu contestuale con una funzione di configurazione che mi permette una gestione più raffinata:

stainless-bkm-conf.png

Nella figura sto editando il titolo che appare quando passo il mouse sull’icona di Gmail. Dato che Stainless memorizza il titolo che la pagina Web aveva al momento di essere inclusa fra i bookmark, ogni volta che passavo sull’icona di Gmail il testo che appariva era: Gmail — Inbox (6) — seguito dal mio indirizzo Gmail. Ora posso modificarlo e posso anche usare un’icona personalizzata nel caso voglia differenziarla da altre uguali. Anche questo particolare mi sembra implementato ottimamente, in maniera chiara, con un’interfaccia essenziale e ridotta al minimo.

3. Altro miglioramento è la gestione dei processi che non rispondono. Ricordo che Stainless, sulla scia di Google Chrome, vede ogni pannello (tab) aperto come un processo indipendente. Adesso nelle preferenze è stata aggiunta l’opzione di chiudere quei pannelli che si sono impiantati.

4. La gestione della memoria, già notevole, è migliorata ulteriormente a partire dalla versione 0.5.5. I bassi consumi di risorse CPU in Stainless 0.6 sono impressionanti. Osservate la figura, un estratto di Monitoraggio Attività:

Stainless contro Safari (Clic per ingrandire)

Stainless contro Safari (Clic per ingrandire)

Ho catturato quest’immagine per fare un confronto con Safari 4 beta. Come potete vedere, Safari 4 beta con 3 pannelli aperti (uno con contenuti Flash) consuma il 9,5% della CPU, usa 176,78 MB di memoria reale e quasi un gigabyte di memoria virtuale. Stainless 0.6, con sei pannelli aperti (uno con contenuti Flash) consuma lo 0,1% della CPU, usa 11 MB di memoria reale e 300 MB di memoria virtuale in meno rispetto a Safari. Non saranno benchmark scientifici, ma il diverso impatto dei due browser è assai notevole sul mio PowerBook G4. Il confronto con Firefox è inguardabile e non ne riporto i dati perché voglio sempre bene a Mozilla.

Stainless procede bene, insomma. È un progetto interessante e merita attenzione. I tipi di Mesa Dynamics sono cordiali e molto disponibili al feedback, specialmente via Twitter. Ascoltano e rispondono. Così si fa.

Piccole applicazioni crescono (1)

Mele e appunti

Tweetie per Mac, a una ventina di giorni dalla sua uscita, ha già visto quattro piccoli aggiornamenti (1.0.1, 1.0.2, 1.1, 1.1.1) e molte cose sono state migliorate nel salto dalla versione 1.0.2 alla 1.1. Questo l’elenco delle novità e dei fix della versione 1.1.1, la più recente al momento:

  • Preferenze per le notifiche separate per account — Come si può vedere dalla figura, adesso è possibile regolare le impostazioni per le notifiche in maniera differente a seconda dell’account. Per ogni account si può dire a Tweetie come segnalare l’arrivo di nuovi tweet / risposte / messaggi diretti, se attivare la notifica nell’icona del Dock o nell’icona nella barra dei menu, o via Growl.
  • tweetie111-1.png

     

  • Supporto di Growl.
  • Possibilità di salvare le ricerche.
  • Aggiunta del comando ‘Mark all as read’ (Contrassegna tutti i tweet come letti) — Un’aggiunta per me fondamentale, e per di più la scorciatoia da tastiera è la stessa di Twitterrific, ⌘-K. Nel mio precedente articolo su Tweetie scrivevo:

    Solo che, anche quando si sono letti tutti i messaggi nuovi, gli indicatori rimangono presenti (i pallini sulle icone e lo stato ‘blu’ dell’icona nella barra dei menu) e non si capisce bene che cosa bisogna fare affinché segnalino correttamente l’avvenuta lettura di tutti i tweet.

    Ora anche questo inconveniente sembra risolto, e una volta letti tutti i nuovi tweet, le icone spariscono o si ‘spengono’ come dovrebbero.

  • Aggiornamento automatico dei trend di Twitter.
  • Aggiunta alternativa per la sintassi dei retweet — Malgrado la stragrande maggioranza degli utenti, per citare un tweet altrui, utilizzi la sintassi RT @nomeutente: [messaggio], Tweetie aveva come unica forma di retweet automatico la sintassi [messaggio] (via @username), meno usata. Ora è possibile scegliere fra le due.
  • Migliorata la gestione degli errori.
  • Ritoccata la visualizzazione dei tweet.
  • 64 bit (ottimizzato per Snow Leopard).
  • Rilevamento dei link che iniziano con ‘www.’
  • Migliorato il supporto per i link con parentesi.
  • Sistemati i link in stile $AAPL.
  • Aggiunto il supporto dei servizi img.ly e pix.im per caricare foto.
  • Ora viene ricordata l’ultima sezione selezionata per ogni account — Ovvero: se mi trovo nell’Account 1 e faccio clic sull’icona ‘@’ per visualizzare tutte le risposte e le menzioni, e poi passo all’Account 2 e visualizzo tutti i tweet selezionando l’icona a fumetto, quando ripasso all’Account 1 ritornerò all’ultima visualizzazione precedentemente selezionata (in questo caso le risposte).
  • Aggiunto autocompletamento quando si seleziona il comando ‘Go to User’ — Per vedere rapidamente i tweet di una delle persone che seguiamo, è possibile scegliere Twitter > Go to User (⌘-U). Adesso nel campo di testo basta iniziare a scrivere le prime lettere del nome utente e Tweetie lo completerà automaticamente.
  • Migliorata l’interfaccia utente per i messaggi diretti.
  • Aggiornato per l’utilizzo delle API di Twitter più recenti.
  • Aggiunti tooltip che mostrano le scorciatoie da tastiera nella finestra di composizione messaggio — Appaiono spostando il cursore sugli elementi dell’interfaccia: i due menu a discesa e il pulsante Post per inviare il messaggio. Personalmente trovo abbastanza comoda la (nuova?) scorciatoria ⌘-↩ [Comando-Invio, se non vedete i simboli].
  • Migliorata la gestione della finestra dopo l’invio di un messaggio.
  • Aggiunta l’opzione per disabilitare l’icona nella barra dei menu — Piacerà a molti, così come il supporto per Growl.
  •  

    In più, la versione 1.1.1 incorpora i seguenti fix:

  • Sistemata la visualizzazione errata del badge nell’icona del Dock — Ora Tweetie notifica l’arrivo di nuovi tweet (se attiviamo l’opzione apposita) aggiungendo un bollino rosso (badge) nell’angolo superiore destro dell’icona dell’applicazione nel Dock. Però mi sembrerebbe opportuno che in quel bollino venisse anche specificato il numero dei tweet non letti, proprio come fa l’icona di Mail. O forse è già così e io vedo solo il bollino? Visto che l’autore menziona ‘problemi’ su certi Mac con processore PPC, chi ha Tweetie su un Mac Intel può dirmi come vede il bollino rosso? Sono curioso.
  • Sistemate le ricerche salvate che non venivano registrate per alcuni utenti.
  • Sistemati alcuni problemi su Mac con processore PPC.
  •  

    Ho acquistato Tweetie prima del 4 maggio, approfittando dello sconto promozionale, e sono molto soddisfatto dell’acquisto. Dal rapido susseguirsi di aggiornamenti e dal tipo di modifiche effettuate, è chiaro che l’autore Loren Brichter (@atebits e @Tweetie su Twitter) è molto attento al feedback degli utenti.

    Breve comunicazione di servizio

    Mele e appunti

    Sono giorni abbastanza intensi per me. Impegni familiari improvvisi e imprevisti, più la riapertura del cantiere di un piccolo progetto personale (che spero di condividere presto), più il lavoro, non mi stanno lasciando moltissimo tempo per Autoritratto con mele. Riesco ad aggiornarlo abbastanza spesso, ma ci tenevo a scusarmi con voi che mi leggete per non essere stato molto presente nell’area commenti. Sappiate però che tutti i vostri contributi e le vostre osservazioni vengono sempre ricevuti con piacere e letti con attenzione. Cercherò di scrivere le mie risposte appena possibile. Grazie della comprensione, e avanti tutta!