b0sh.net

Proudly debugging the system since 1981

Tag: informatica Pagina 1 di 2

Codemotion Milan 2014 – Secondo giorno

Appunti sugli speech del secondo giorno :

  • Why everyone is excited about Docker (and you should too…) tenuto da Carlo Bonamico : Si, Docker è veramente interessante. Permette di risolvere alcuni problemi che sono molto comuni: replicare ambienti di produzione anche complessi in locale, testare efficacemente, eseguire dei deploy sicuri. L’idea di base è avere qualcosa che assomigilia ad una virtual machine, ma è molto piu leggera ed è quindi possibile averne anche diverse decine in esecuzione su un computer desktop, ed è “stratificata” e componibile a moduli. Slides.
  • L’architettura di Stack Overflow tenuto da Marco Cecconi : come hanno risolto problemi inerenti l’elevato traffico in Stack Overflow. Da questo ho capito che .net ha grossi, grossi problemi col garbage collector. E tutto il lavoro sta nel cercare di instanziare il minor numero di oggetti possibili. Slides.
  • Evolutive experience design; o la sopravvivenza del più adatto tenuto da Luca Mascaro : l’incapacità dei programmatori di capire i babbani è una triste realtà. Più che altro per i babbani, che ogni giorno sono immersi in un mondo che non capiscono. Ma tant’è e quindi per essere un programmatore migliore ogni tanto è bene sentire uno o due speech tenuti da designer (ovvero utenti che sanno spiegare perchè non capiscono quello che per noi è ovvio). Cavolate a parte l’introduzione del concetto evoluzionistico al design è molto interessante. Non necessarimente la soluzione più raffinata è la migliore … o meglio è la migliore oggi, ma probabilmente avrà problemi ad affrontare i cambiamenti che inevitabilmente ci saranno. Due mini slide su tutte :

  • Designing for cross channel user experience tenuto da Chrissy Welsh : Sulla necessità di tenere conto che gli utenti del mobile, gli utenti desktop e gli utenti che si presentano di presona spesso (sempre?) sono le stesse persone e che bisogna offrigli la possibilità di fare ciò di cui hanno bisogno a prescindere dal canale che usano. E ovviamente non basta fare un sito responsive, come è stato fatto ripetere a tutti in coro stile alcolisti anonimi.
  • Time Series: Dalla Teoria alla Pratica con MongoDB tenuto da Massimo Brignoli, Ivan Fioravanti : l’utilizzo di mongoDB nelle sequenze temporali di dati, con alcuni trucchi per migliorare le performance in lettura e analisi. Sildes.

Repository ufficiale delle slides su slideshare .

Codemotion Milan 2014 – Primo giorno

Una volta tanto scrivo un post non automatizzato: il 28 e 29 novembre ho partecipato al codemotion 2014 a Milano e di seguito due righe sugli speech che ho seguito il primo giorno.

  • Become a Frontend Developer Ninja using HTML5, JavaScript and CSS3 tenuto da Marco Casario : Molto focalizzato sull’ottimizzazione prestazionale dell’html. Sono stati presentati alcuni strumenti di valutazione delle performance, sia interni al browser (Chrome in primis) che su siti esterni. Alcuni link che ho colto al volo sono presenti sul post di questa settimana. Sildes.
  • Recipes to develop a reactive and cloud-ready application using Scala and Akka tenuto da Roberto Bentivoglio : L’utilizzo di Akka come base per sistemi distribuiti per svolgere combiti complessi ma divisibili. Il framework astrae la complessita e lavorare con un core o 1000 non fa differenza ( qualcuno ha detto hadoop ?). Da ignorante di Akka e quasi ignorante di Scala ho faticato a seguire l’esposizione, ma l’impressione era di essere in buona compagnia. Slides.
  • Programming Motherfucker or how I rediscovered my hacker spirit tenuto da Ole Michaelis: La nascita e l’evoluzione di un pet-project. Le difficoltà (soprattutto per ottenere un design decente, grosso limite di molti programmato). Il pet-project è slidr.io e dovrebbe servire per condividere slide, ma al momento non è raggiungibile. Troppo successo? Comunque interessante e bello vedere come alti e bassi di progetti specie non pagati siano problemi che anche altri affrontano. Comunque rilasciate sempre! Edit: io non lo raggiungevo probabilmente per problemi di DNS. Le slides sono effettivamente li.
  • Fun with functional JavaScript tenuto da Kuba Waliński: L’amato (poco) e odiato (tanto) javascript sorprende come linguaggio pronto per la programmazione funzionale. Slides
  • Pragmatic Functional Refactoring with Java 8 tenuto da Raoul-Gabriel Urma : Introduzione alla programmazione funzionale con Java 8, con attenzione al’utilizzo dei Predicate e alle Lambda sulle collections per ottenere una maggiore leggibilità del codice e migliore riutilizzabilità. Interessante e comprensibile. Coautore di Java 8 in Action. Slides
  • Laziness, trampolines, monoids and other functional amenities: this is not your father’s Java tenuto da Mario Fusco: Quasi una seconda parte sulla programmazione funzionale con java 8, approfondimenti sul concetto di monoide (una volta che capisci i monoidi li vedi ovunque… sarà… ci credo per fiducia), laziness e trampolini. Interessante ma gli speech in inglese tenuti da italiani a italiani sono una forzatura che azzoppa la fruibilità e l’attenzione.  Coautore di Java 8 in Action. Slides.
  • La professione dello sviluppatore (3 anni dopo) Gabriele Lana : Scelta come “defaticamento” dopo la tripletta funzionale si è rivelato il talk più divertente della giornata, e quello che forse ha fatto riflettere di più. Tanti spunti, su come la professione del programmatore possa e debba migliorare, e se oggi è cosi è colpa in buona parte dei programmatori stessi. In poche parole ci vuole più consapevolezza del proprio valore e più etica in quello che si fà. E gli agenti per strappare contratti migliori. Si voglio decisamente un agente. Video del prequel (3 anni prima) . Per ora c’è solo qualche scatto e le slides, spero che l’organizzazione pubblichi il video integrale.

 

Lie to me

Di tutte le stranezze informatiche apparse sul piccolo e sul grande schermo questa è la prima schermata in cui appaiono mailing list di sviluppatori di componenti di linux. E il telefilm non parla neanche lontamente di informatica e tecnologia.

Preso da Lie to me, seconda stagione, episodio 9.

P.S.: Prima o poi dovrei scrivere 2 righe su questa serie. Nel frattempo la consiglio, senza scendere nel dettaglio.

Anti IF Campaign

Prima di tutto il link

ANTI IF CAMPAIGN

Poi discutiamo del fatto che l’if, come molti costrutti della programmazione imperativa, si presta all’abuso. Il software deve essere pensato per essere mantenibile e non una collezione ingestibile di pezze. Questo, come molte altre cose in informatica, si raggiunge col buon senso. Non è che sostengo, come la persona nel link qua sopra, che gli IF non vadano mai usati. Ma quando ce n’è uno lungo 780 caratteri, vuol dire che la progettazione di quel pezzo di software ha fallito. O non c’è mai stata.

L’ If è una delle strutture base, insieme al ciclo senza contatore e al GOTO ( si il dannato GOTO ). La programmazione alla fine si basa su questo. O se vogliamo ricondurla al’assembler JE o JNE … chi ha usato un disassemblatore X86 sà a cosa mi riferisco. Non si dimenticano i salti condizionati. Ma non si può esprimere concetti complessi in modo immediatamente comprensibile tramite di essi. Se ci metti 2 – 3 condizioni va bene. E’ chiaro e leggibile. Se ne metti 30 immischiate in un casino di parentesi e OR / AND  ci metto 3 ore a campire cosa significano e 5 minuti a fargli-fare-cio-che devo fare. E generalmente quest’ultimo scenario deriva da pezze attaccante di volta in volta da programmatori che per voglia o per obbligo hanno applicato la filosofia del minimo-sforzo (e risultato appena sufficiente)

Numeri pseudo-casuali

Prendendo spunto dalla discussione di oggi a pranzo, segnalo questa simpatica vicenda di numeri (forse) casuali e informatica.

Hackerare i casinò per un milione di dollari, L’arte dell’intrusione, Kevin Mitnick

Chi non ha mai sognato …

di fare una cosa del genere ?

Un informatico tiene in ostaggio San Francisco

Poi in genere interviene la ragione e non lo si fà… ma mai dire mai.

Uno dei dogmi..

della computer science è che i dati vivono piu delle applicazioni … piu dei DB server, piu degli sviluppatori, più degli analisti e sfortunatamente anche piu della documentazione. Sempre che essa sia mai esistita.

E con questo ricominicio anche io a scrivere. Ha re-iniziato il capostipite del genere, quindi, a maggior ragione, lo posso fare pure io.
In realtà lo posso fare perché, ormai da un mesetto, ho ricominciato ad occuparmi a tempo pieno di IT dopo una pausa di circa due anni in cui la mia occupazione principale era il web-marketing. Abbiate pietà di me, e sappiate che non l’ho scelto. Mi ci sono trovato.

Ritornando al tema principale, di questi giorni ho a che fare con una base di dati datata 1993. Il che è gia un record di suo. Io nel 1993 avevo ancora il mio primo computer ( un IBM PS/2 dotato del mitico 386sx 16mhz … dico sedicimegahertz ) e trovarmi a infilare le mani in una cosa cosi vecchia è, se non altro, affascinante.

Ma archeologia informatica o no 99 su cento dovrò buttare al macero 15 anni di storia equivalenti a circa 140.000 record perche ai tempi non si è voluto perdere un oretta sulla progettazione. Quanto tempo verrà perso ora a causa di tale superficialità ?

Giusto per rientrare in argomento

Qualche verità assoluta

  • Il computer non è una macchina intelligente che aiuta le persone stupide, anzi è una macchina stupida che funziona solo nelle mani delle persone intelligenti. (Umberto Eco)
  • I computer sono incredibilmente veloci, accurati e stupidi. Gli uomini sono incredibilmente lenti, inaccurati e intelligenti. Insieme sono una potenza che supera l’immaginazione. (Albert Einstein)
  • Non ho paura dei computer, ma della loro eventuale mancanza. (Isaac Asimov)

… per chiarire che questo non è un blog di design. 😉

Definizione di informatica

Sebbene successivamente ne siano state date diverse definizioni, forse si avvicina di più alla realtà quella secondo cui l’informatica è la scienza che si occupa della diffusione di video porno gratuiti.

Via Nonciclopedia

P.S. : Oggi citazioni a mille !

Leggi e spiegazioni

Le Leggi dell’Informatica.

Sommario
Legge 0° Lo sforzo per introdurre un dato è il medesimo a prescindere da quale supporto si utilizzi; ma se si usa un supporto informatico, con lo stesso sforzo, si ottengono infinite successive possibilità di aggregazione.

1° In Informatica vince chi arriva per ultimo.

2° In informatica non funziona mai nulla al primo colpo.

3° In Informatica l’eclatanza del risultato è inversamente proporzionale allo sforzo impiegato nel conseguirlo.

4°. La nota proprietà transitiva.

5° In Informatica chi utilizza non sceglie; chi sceglie non paga e chi paga non utilizza né sceglie.

6° Il Paradosso del caminetto.

7. In Informatica, quando uno dice che “E’ facile…”, cominciano i veri guai.

8. In Informatica, dopo il primo quarto d’ora, qualunque hardware è sempre troppo lento….

9. Gli errori si dimezzano con il tempo.

10: A cosa serve? Non lo so, però è bellissimo!

11° In Informatica prima si acquista un PC, poi si pensa a come utilizzarlo.

Breve digressione sui Virus.

Legge 0° Lo sforzo per introdurre un dato è il medesimo a prescindere da quale supporto si utilizzi; ma se si usa un supporto informatico, con lo stesso sforzo, si ottengono infinite successive possibilità di aggregazione.

Potremmo dire che è il break-even-point informatico: ovvero quando conviene introdurre e gestire un dato informaticamente e quando no. Prevalentemente conviene gestire informaticamente un dato quando si presume di doverlo riutilizzare in seguito, magari in un contesto diverso.

Ad esempio: potrebbe sembrare inutile o controproducente caricare la propria agendina su di un supporto informatico; però il giorno che abbiamo bisogno di effettuare un mailing con quegli indirizzi, se non li abbiamo già caricati volta per volta, dobbiamo ridigitarceli uno ad uno, con conseguente dispiego di tempo e mezzi.

Chiariamoci subito: contrariamente a ciò che si pensa, digitare un’informazione su di un supporto informatico non è assolutamente più semplice, né economico né conveniente rispetto ad altri mezzi, diciamo così, convenzionali.

Anche perché il cammino informatico è irto di difficoltà e tortuosità.

Innanzi tutto non sempre sono a disposizione gli strumenti ed i programmi atti a poter introdurre i dati. Poi, una volta caricati, spesso mancano i supporti per poter utilizzare convenientemente tutti i dati.

Infine, causa obsolescenza, spesso i dati caricati su di un vecchio sistema informatico non son più leggibili o utilizzabili da un altro sistema informatico.

Ciò accade generalmente quando ne si ha maggiormente bisogno.

1° In Informatica vince chi arriva per ultimo.

Si dice che se l’aviazione civile avesse avuto le stesse innovazioni al medesimo costo dell’informatica, adesso un Jumbo Jet costerebbe un milione di lire.

E’ vero; se pensiamo ai primi computer utilizzati per scopi di business alla fine degli anni sessanta ed i PC attuali ci accorgiamo che adesso, con un singolo PC, svolgiamo molte più operazioni di quante se ne potevano eseguire con un costosissimo e monumentale mainframe[1] dell’epoca. Questo vale sia per le dimensioni della memoria, che per la velocità e le potenzialità intrinseche della macchina.

Riesco a malapena a capire le motivazioni di tutto ciò. Innanzi tutto penso che dipenda dalla grande fame della domanda. Sin dagli esordi l’oggetto informatico ha subito trovato un terreno fertilissimo, una grande aspettativa da parte del mercato. Lo strumento informatico serviva, se ne sentiva il bisogno.

Poi vi era il fatto che solo un particolare settore dell’elettronica era messo in gioco; era così più facile concentrare la ricerca. C’era anche la possibilità di sfruttare gli immensi budget delle industrie militari ed aerospaziali americane, visto che la miniaturizzazione e trasportabilità erano prerequisiti essenziali.

Infine vi è stata anche la grandissima diffusione dei prodotti, che consentiva di poter ammortizzare rapidamente i costi degli investimenti.

Questa crescita esponenziale ha avuto l’effetto di polverizzare i tempi, con conseguenze spiacevoli. Quello che oggi è il meglio del meglio, domani verrà venduto a metà prezzo oppure avrà, allo stesso prezzo, il doppio delle prestazioni.

Inoltre ha fatto si che proliferasse una corsa alla copia ed alla concorrenza più spietata: ogni qual volta veniva venduta una novità, interi plotoni di aziende concorrenti non faceva altro che cannibalizzarla, metterne a nudo le caratteristiche intrinseche per poterla riprodurre facilmente: in pratica intere aziende parassite vivevano sulla spalle di altre, eliminando tutti i costi di ricerca: questo fa si che le aziende fornite di laboratori di ricerca debbano recuperare i costi rapidissimamente e non possano ammortizzarli nel tempo.

E’ ovvio che questa spirale di abbattimento dei prezzi non ha ancora raggiunto lo zero assoluto, cioè i PC costano ancora qualche milioncino e non vengono ancora dati di resto dal tabaccaio; però è altrettanto vero che ormai solo le novità si pagano e salate.

Inoltre, proprio per una frenesia non presente in altri campi, spesso i nuovi prodotti vengono rilasciati con difetti e tare impensabili, tanto che si possono proprio considerare sperimentali. Vedasi una per tutte la disavventura dei Pentium [2] che capitò ad INTEL subito dopo la presentazione sul mercato.

Visto poi che la frequenza degli annunci è sempre molto breve, non si giustifica mai doversi accaparrare l’ultimissima novità. Si avrebbe l’amara conseguenza di trovare, dopo poco, il nostro preziosissimo acquisto notevolmente deprezzato sul mercato.

Come si sul dire:

“L’acquisto informatico si obsolescenza dal momento dell’acquisto al momento in cui si infila la spina nella presa di casa.”[3]

Per cui la mia esperienza è tale da sconsigliare sempre chi vuol prendere gli ultimi modelli di qualunque marchingegno informatico: perché li troverebbe dopo poco più a buon mercato.

Conviene investire nella novità solo in caso di attrezzi ben specifici, indispensabili e non sostituibili con altri: ad esempio lo scanner , che può risparmiare un notevole lavoro di dattilografia.

E’ altrettanto vero che c’è da fare un distinguo tra necessità personali e professionali. Un’azienda od un professionista che utilizzano uno strumento informatico possono più facilmente ammortizzare un forte costo a fronte di una maggiore produttività.

Un altro aspetto è la sindrome dei pionieri. Non si giustifica mai dover sperimentare sulla propria pelle delle novità che possono avere dei malfunzionamenti; novità, tra l’altro, pagate a caro prezzo.

Meglio lasciarlo fare ai pionieri, più ricchi e più frettolosi di noi e beneficiare delle loro triste esperienze: in seguito troveremo sul mercato un prodotto più collaudato e meno costoso.

Per cui si può dire che in Informatica vince chi arriva per ultimo, sia per il rapporto qualità/prezzo, che per quanto riguarda la maggior qualità del prodotto, come minimo esente da macroscopici errori.

2° In informatica non funziona mai nulla al primo colpo.

Non so perché, ma è così.

Ormai ho una lunga e consolidata esperienza in tal senso, tanto da convalidare appieno la famosissima Legge di Murphy :

“Se qualcosa potrà andar male, lo farà”.[4]

Ed infatti c’è sempre qualcosa che va male; per quanti controlli, verifiche, rimuginamenti si possano fare in precedenza, all’atto della partenza salta sempre fuori qualcosa di bloccante e vincolante.

Conviene tenerlo presente e non confidare mai in risultati al primo colpo. Soprattutto quando si ha fretta.

3° In Informatica l’eclatanza del risultato è inversamente proporzionale allo sforzo impiegato nel conseguirlo.
Questo è tipico di tutte quelle cose che sono considerate abbastanza occulte, quasi esoteriche.

In soldoni vuol dire che modifiche o realizzazioni che spesso strappano cori entusiastici son costate pochissimo sforzo; d’altro canto realizzazioni faticosissime non vengono quasi nemmeno notate.

Questo ha molto a che vedere con il “Paradosso del caminetto ” (Cfr.) perché spesso l’utente informatico si sofferma solo sulla ciliegina della torta, ed ha molto a che vedere con la superficialità intrinseche di quest’epoca, chiamata anche look od immagine.

Per cui avvengono spesso episodi emblematici, in cui gli addetti ai lavori vengono osannati solo perché scoprono al primo colpo il famoso guasto bloccante… la spina da inserire nella presa.

Al contempo viene considerato catastrofico un errore di dattilografia presente in una videata, ovvero una vera e propria sciocchezza rimediabile in pochi minuti.

Spesso poi, a fronte di un piccolo errore vincolante, si è propensi a rigettare in blocco il programma, con un lapidario: “Non funziona niente”…

4°. La nota proprietà transitiva.

Essa parte da presupposti di questo genere: “Con i computer si va sulla Luna , questo è un computer, quindi andiamo sulla Luna. Quando si parte?”

E’ inutile fare sottilissimi distinguo, ovvero che tra il computer che viene utilizzato in una missione spaziale ed un normalissimo PC vi sono almeno tre zeri di differenza, almeno per quanto riguarda il prezzo di listino.

Niente!

Le aspettative (e le pretese), sono analoghe.

Ben diversi erano i discorsi all’atto dell’acquisto del computer: “… ma io non ho bisogno di tutta quella roba lì; io ho bisogno solo di una macchina piccola, che faccia poche cose… ”

Poi, appena acquistato, le pretese aumentano a dismisura, meglio dire lievitano.

E così arrivano le prime delusioni che, mal gestite, fanno completamente perdere la fiducia nel mezzo. Ovvero, visto che con questo computer non si va sulla Luna , allora è una baracca, ci hanno fregato, quindi dopo poco lo si butta nel cesso e si maledice l’informatica in generale, considerandola una truffa più o meno legalizzata.

In tutto ciò, devo ammetterlo, hanno la loro parte di colpa i vari videogame . Anche se non espressamente detto, una volta che uno vede girare sul proprio Personal Computer programmini che sfiorano la simulazione più eccelsa, è difficile credere che poi non riesca a fare cose che noi consideriamo banali o primordiali.

Poi c’è anche una buona dose di malafede, generalmente da parte dei venditori con pochi scrupoli.

Ovvero lasciare sottinteso che con il computer che si sta vendendo si può fare di tutto, compreso andare sulla Luna . E’ ovvio però che tale malafede non è sempre e comunque dalla parte dei venditori, è sempre condita da una notevole parte di pressappochismo e leggerezza dell’acquirente, che ha sempre poche idee ma molto confuse.

In pratica è una specie di incontro a mezza strada, tra un pollo e un mefistofelico ipnotizzatore. Il tutto con il sottofondo della vecchia canzoncina: “E sempre sia lodato il fesso che ha pagato…”

Non c’è che dire: fino a che l’informatica è e continuerà a rimanere una scienza novella, per lo più sconosciuta ai più, queste cose accadranno sempre.

Però non basta rammaricarsene e maledire l’ineluttabilità della sorte.

Bisogna anche ricordare che spesso, nell’ambito professionale e personale, vi sono settori in cui si investono cifre spropositate di denaro affidandosi al parere di esperti ed invece, in informatica, ciò non accade, pur rimanendo sul piatto cifre forse più sostanziose.

Praticamente si investono cifre considerevoli ascoltando solo gli sporadici pareri di praticamente illustri sconosciuti o di conoscenze occasionali.

Per esempio: quanto si investe in architetti per far arredare l’ufficio o la propria abitazione e quanto invece si investe in consulenti informatici onde riuscire a dipanarsi in quel guazzabuglio di supercazzole in cui spesso si cade quando si acquista un computer?

Chiariamoci subito; lungi da me voler demonizzare i vari architetti od arredatori; tutt’altro. Visto però che si investono cifre (neanche tanto irrilevanti) per cose importanti quali ergonomia, ottimizzazione (che in questo caso vuol dire ottenere il massimo con gli spazi a disposizione), immagine o look, e dir si voglia, perché non si investono cifre proporzionali anche per cose quali quelle informatiche che, risaputamente, alla fine non sono poi così irrilevanti e possono avere effetti notevoli, alla fine dei conti, sui nostri bilanci?

Ed invece no.

Mentre non si vedrebbe alcuno che si ostinerebbe a voler progettare un edificio interamente da solo o sentendo sporadicamente solo i pareri di vari passanti, invece vediamo chi acquista o impianta strutture informatiche, soprattutto per scopi professionali, praticamente alla cieca.

E non scordiamoci che a livello professionale le cifre in palio possono arrivare facilmente ai nove zeri, così come per un appartamento ad uso ufficio o, addirittura, per la costruzione di un edificio; per cui l’entità del disastro spesso è notevole.

Inoltre, in seguito, tale esperienza negativa non fa altro che acutizzare le difese immunitarie dell’acquirente fregato. Che manterrà, nei confronti dell’informatica in generale, una fortissima prevenzione.

5° In Informatica chi utilizza non sceglie; chi sceglie non paga e chi paga non utilizza né sceglie.

Visto così sembra molto criptica, ma in pratica vuol dire che i vari difetti intrinseci di un prodotto vengono subiti solo da chi lo utilizza e spesso neanche capiti da parte di chi è intervenuto nella decisione o approvazione di tale acquisto.

Il tutto perché ogni singola persona citata utilizza parametri decisionali decisamente diversi e spesso incompatibili tra loro.

Chi utilizza si preoccupa prevalentemente della funzionalità e della praticità del tutto, oltre che della velocità. Non possiamo dargli torto, d’altronde. Lui ha un problema o un lavoro da svolgere e sceglie, possibilmente, ciò che vede possa essergli di maggior aiuto nell’esecuzione del proprio lavoro, quotidianamente.

Nell’azienda esso è l’utente, ovvero chi utilizza il prodotto informatico.

Chi sceglie si occupa o di fattori economici o di fattori funzionali, spesso mediando tra i due; generalmente non utilizza il prodotto, se non marginalmente.

Nell’azienda potrebbe essere il riferimento informatico oppure un tecnico. A volte, purtroppo, è invece un amministrativo o una persona del management, che ha visioni prettamente economiche più che funzionali.

Spesso è facile sentir echeggiare frasi del tipo: “Si è vero, questo prodotto è migliore, però costa anche il triplo dell’altro; fa anche il triplo?”.

E’ ovvio che vi sono valenze economiche in qualunque aspetto aziendale, però è altrettanto ovvio che in informatica, le valenze economiche possono essere fuorvianti.

Rimane poi chi paga: quest’ultimo si preoccupa solo di spendere il meno possibile; tanto non utilizzerà mai lo strumento. Tutt’al più ne utilizzerà i benefici a scopi decisionali.

6° Il Paradosso del caminetto.

Immaginiamoci un costruttore edile: immaginiamoci che arrivi un cliente che chieda il preventivo di un bel caminetto.

Detto fatto, il nostro costruttore si farà in quattro per soddisfare il nostro cliente e dopo averlo interrogato a fondo, gli prospetterà la sua migliore offerta per un bel caminetto.

Fin qui l’esempio; ma adesso vediamo di continuare sul sentiero del paradosso.

A questo punto il nostro cliente esce con la frase sconcertante: “Ma io la casa non ce l’ho”.

Ed a questo punto il nostro costruttore edile si troverà un po’ spiazzato e dovrà cucinare un’offerta direi un po’ originale: tot di costo del terreno, tot di stesura di una piattaforma in cemento, quindi il caminetto e relativa canna fumaria.

Ovviamente una realizzazione del genere sarà come minimo costosa e verrà fuori una cosa quanto mai inedita. In pratica sarà un solitario e triste camino piantato in aperta campagna. Certo che se il costruttore è onesto non può che abbozzare quella che poi diventerà una futura costruzione. Anziché una piccola piattaforma di cemento, provvederà ad edificare le fondamenta con annesse cantine e tutta la soletta del pianterreno, di dimensioni appropriate; infine provvederà a realizzare la strada di ingresso, a recintarla etc. etc.

In pratica si tratterebbe del progetto di una casa, pur ancora in fase primordiale, con solo cantina ed i pilastri, coperta quanto basta per riparare dalla pioggia il solitario futuro proprietario di casa, quando sosterà davanti al famoso caminetto.

Una cosa decisamente bruttina, costosissima, ma pronta per essere implementata fino a divenire una signora casa di campagna con tanto di troneggiante caminetto all’interno.

Però, a questo punto del nostro paradosso, il cliente sbotterà: “Ma come: una cifra così esorbitante per un caminetto? Ad un mio amico l’hanno realizzato con una cifra risibile, non codesta. Lei mi sta imbrogliando.”

Povero cliente. In effetti è in perfetta buona fede. Il suo amico però la graziosa casa di campagna o villetta l’aveva già, si è trattato solo di realizzare il famoso caminetto.

Eppure il costruttore è onesto ed in perfetta buona fede. Inoltre gli sta facendo un bel lavoro, tale per cui il cliente con il tempo e con altri investimenti potrà incrementare man mano e veder nascere intorno al suo caminetto l’intera casa. Come noterete, una volta edificate per bene le fondamenta e con una robusta soletta è possibile realizzare l’opera poco per volta; l’investimento iniziale non viene sprecato né necessita più di rifacimenti; è propedeutico alla realizzazione finale.

E qui finisce il paradosso. Ed iniziano la varie considerazioni.

Spesso i vari clienti si soffermano solo sui prodotti finali, senza considerare i vari e necessari prerequisiti atti ad ottenerli.

Gli esempio sono molteplici, c’è solo l’imbarazzo della scelta. Quante volte si chiedono statistiche dettagliate su informazioni nemmeno gestite dal sistema informatico, oppure particolari estrazioni per controlli di gestione, possibilmente senza aver nemmeno mai visto un dettaglio di costi o ricavi, senza contare poi a tutte quelle varie realizzazioni fantascientifiche che sfiorano l’intelligenza artificiale o l’uso di strumenti d’uso comune solo presso la NASA.

Purtroppo il problema è tutto lì.

Dell’Informatica la gente vede prevalentemente i comignoli, le guglie, le facciate ed i tetti. Come se tutti volassero su un altissimo satellite o su di un velocissimo aereo a reazione e sbirciassero distrattamente il panorama sottostante dal finestrino.

Invece noi tutti sappiamo che per poter mettere un comignolo occorre un tetto ed il tetto viene posto, in genere, sulle case. E le case devono poggiare su solide e robuste fondamenta.

Tutto qua.

Eppure è così lontano dal pensiero comune…

7. In Informatica, quando uno dice che “E’ facile…”, cominciano i veri guai.

Forse perché facile lo è solo quando si è addentro al problema.

E’ inutile, in informatica o “ci si è o non ci si é”.

Il che vuol dire che in qualunque altro campo, pur essendo farcitamente tecnico, dopo un po’, a suon di esempi, similitudini e parallelismi, si riesce a gettare luce su qualunque argomento, o come minimo, a capirsi.

In informatica no, purtroppo questo non avviene.

Per cui dopo un po’ si crea una barriera invisibile: quella dell’umana comprensione; se la si oltrepassa tutto diventa abbastanza chiaro, se non rimanendone fuori si rimane vittime di supercazzole o fumose spiegazioni.

Aiuta molto all’incomprensione tutto quel guazzabuglio di acronimi, storpiature, inglesismi, termini tecnici, che rendono una conversazione tra addetti ai lavori quasi una conversazione in codice, assolutamente inintelligibile.

D’altronde, lo abbiamo già detto, l’informatica è una scienza novella. Per cui si sta evolvendo così velocemente da non riuscire ad avere standard consolidati, tanto meno lessicali: ovvero le stesse cose vengono definite con termini diversi, spesso utilizzando acronimi o abbreviazioni di termini inglesi. Oppure orrende traslitterazioni di termini inglesi in italiano, con risultati atroci, dal punto di vista lessicale. (deletare[5], blincare[6], sbianchettare[7], zippare[8], cliccare[9], etc. etc.)

Per cui spesso è abbastanza arduo spiegare un qualcosa inerente l’informatica ed è per questo che le spiegazioni che vengono precedute dal famigerato prefisso. “…E’ facile”, spesso non lo sono per nulla; proprio perché presuppongono dettagliate e complicate spiegazioni tecniche.

Devo anche ammettere che solo recentemente i programmi, soprattutto quelli su PC , stanno diventando davvero utente oriented, ovvero stanno diventando un po’ più semplici. Però c’è ancora molta strada da percorrere. Il motivo di questa evoluzione è sempre legato alle risorse a disposizione: più un computer è veloce ed ha a disposizione maggiori risorse, più i programmi possono essere gestiti mediante comandi semplici, grafici e quindi intuitivi, ben esplicati e che al loro interno covano procedure magari molto complesse. Per cui, più si avranno risorse informatiche a basso prezzo a disposizione, più si otterranno programmi che eseguono operazioni complesse con pochi comandi semplici. Si veda, per esempio, l’impatto che ha avuto il Mouse e l’intera rivoluzione copernicana che ha prodotto; tanto che l’ormai minoranza di programmi che non ne fanno uso è sicuramente più complessa e più difficile da utilizzare rispetto a quelli che ne prevedono l’uso.

8. In Informatica, dopo il primo quarto d’ora, qualunque hardware è sempre troppo lento….

Proprio vero. Forse perché la velocità di risposta di qualunque marchingegno informatico è sempre più lenta della velocità del pensiero, nostro principale metro di paragone.

In gergo si chiama “ritardo zero”.

Oppure perché, con il tempo, i programmi eseguono molte più funzioni che corrispondono ad un maggior numero di operazioni, per cui abbiamo bisogno di sempre maggior velocità. E per questo che, dopo il primo quarto d’ora che segue l’installazione di un hardware sempre più potente rispetto al precedente, ci assuefacciamo e non ne notiamo più i benefici.

Questo vale per qualsiasi componente hardware: sia principale, quali i microprocessori o la memoria, che periferiche, quali dischi o supporti megnetico-ottici.

D’altronde, sia pur come al solito con minore velocità di rivoluzione, ciò vale anche per il mercato automobilistico: negli anni sessanta Morandi cantava che

“… andavo a cento all’ora per vedere la bimba mia…”

presupponendo chissà quale record su strada, adesso tale velocità la raggiungono tutte, ma proprio tutte le auto e la consideriamo una velocità quasi irrisoria. C’è anche da dire che su un’autovettura degli anni sessanta, superare i cento chilometri orari, visti i minori parametri di sicurezza e strade meno idonee, poteva essere considerata un’impresa. Ora si ha l’impressione di essere quasi fermi.

Come al solito, il problema è tutto lì: se il campo automobilistico avesse avuto lo stesso impulso dell’informatica si sarebbe aumentata la velocità di crociera di ogni autovettura di un buon 10% annuo, ed adesso sulle nostre strade si andrebbe almeno a Match 1.

9. Gli errori si dimezzano con il tempo.

Ovvero: il 50% degli errori si trovano, ad esempio, nel, primo mese. Il rimanente 25% nel secondo mese e via sino al paradosso di Zenone.[10]

Questo vale prevalentemente per i progetti informatici.

Non si può pretendere che partano scevri da qualsivoglia problema o vizio. Man mano che vengono scoperti gli errori vengono eliminati, ottenendo sempre più un prodotto perfetto o almeno più funzionale.

Per cui bisogna mettere in preventivo un periodo di rodaggio più o meno lungo a seconda della complessità della tematica trattata.

Il perché qualunque progetto sia farcito di errori o problemi è facile intuirlo: innanzi tutto la fallace indole umana è facilmente preda di errori ed omissioni; poi spesso i progetti vengono pensati molto tempo prima della messa in esercizio e questo fa si che, nel contempo, ci sia stata un’evoluzione congenita, che bisogna rincorrere successivamente, visto che si progettano sempre applicazioni che seguono fedelmente procedure più o meno manuali già consolidate da tempo. Per cui si arriva sempre in ritardo, spesso di mesi, a volte anche di anni. E’ facile che le cose si siano mosse nel contempo.

Ed è questa l’importanza dell’analisi informatica: prevedere le eccezioni e gli sviluppi futuri, senza dover per questo ricorrere alle varie branche della manzia, ma lasciandosi aperte il maggior numero di strade che si potranno poi percorrere in futuro.

10: A cosa serve? Non lo so, però è bellissimo!

Possiamo pur dire che si tratta della sindrome del Gadget elettronico. Ovvero, acquistare qualcosa di assolutamente inutile ma altamente tecnologizzato, proprio perché tale.

Vista così è uno dei fondamenti del marketing, però in informatica fa si che si sbattano via una quantità impressionante di denaro in cose inutili o poco funzionali.

Ricordo che allo SMAU del 1994 era esposto un programma che, previo l’installazione di una scheda sound-blaster e le apposite casse acustiche, provvedeva a simulare a video la facciata di una radio e, miracolo della scienza e della tecnica, provvedeva a trasmettere musica. Tale scheda aggiuntiva era in pratica un ricevitore di onde radio, un apparecchio radiofonico a tutti gli effetti.

Peccato che costasse non meno di novecento mila lire e, tenendo presente che per quella cifra si acquista non una radio ma un intero HI-FI di marca, casse incluse, possiamo proprio dire che era il tipico Gadget elettronico, per di più a caro prezzo.

Oppure possiamo parlare delle stampanti a colori che, fatto salvo rarissimi casi di presentazioni et similia, sono usate una volta sola per stampare una immagine di prova a colori e poi vengono usate per stampare in bianco e nero, visto che le fotocopiatrici ed i fax funzionano ancora in bianco e nero.

Ovviamente tutto questo non fa che far leva sul latente complesso di inferiorità che cova sotto ad ogni utente non informatizzato, che non capendo cerca di porvi rimedio acquistando e spendendo.

E questo fa si che si acquistino cose di cui non solo non sentiamo il bisogno, ma nemmeno ne capiamo l’uso.

11° In Informatica prima si acquista un PC , poi si pensa a come utilizzarlo.

Come al solito sembra un paradosso, ma è così.

In pratica ogni utente non addetto ai lavori soffre, come già detto, di un latente complesso d’inferiorità, che fa si che si scambi un PC in una specie di HAL 9000 il computer parlante e pensante del film “2001, Odissea nello spazio” che, se non impazzisce, possa parlare, agire e risolvere tutti i nostri problemi.

Una cosa molto vicina ai testi di fantascienza.

Per cui, applicando la ben nota proprietà transitiva, si ha una vaga idea di quello che possa fare il singolo PC , si ha un’altra sia pur vaga idea di ciò che fanno i Computer in genere e si procede all’acquisto.

Per poi tornare a casa e scoprire, in fondo in fondo, che non si ha nessuna idea di come utilizzarlo.

Certo, costruttori e venditori fanno leva su argomentazioni tipo “creatività”, “produttività”, etc. etc., ma nella migliore delle ipotesi viene usato per giochicchiare e basta.

Fatto sta che uno delle applicazioni che hanno subito il maggior incremento, sin a raggiungere livelli eccelsi, son proprio i giochini.

Tanto per fare un esempio un amico mi faceva notare che uno dei giochini più vecchi e famosi, “Fly simulator”, è in pratica un vero e proprio simulatore di volo, nel senso che se non si sa pilotare non va. Come si suol dire “non decolla”.

Ho avuto modo di vederlo e posso assicurarvi che non è più un giochino, è un programma a tutti gli effetti. Basti solo dire che nel manuale d’uso, rigorosamente in inglese, sono addirittura riportare le mappe delle piste dei principali aeroporti americani. Che ovviamente bisogna studiare approfonditamente.

Alla faccia!

Per cui non stento a credere che tali programmini richiedano sempre e comunque il massimo delle risorse dei più grandi PC presenti sul mercato.

Già, infatti; la realtà è che per i programmi gestionali siamo arrivati al punto che fatto salvo che per la velocità, non necessitano di tutti quegli accessori e giochini che necessitano i PC di casa. Viceversa le maggiori risorse necessitano ai computer di casa, generalmente utilizzate per i giochini.

Ed è per questo che ormai, come diceva con molto cinismo un mio collega:

“Ormai, se sul tuo PC non hai tutto quello che hai nel tuo HI-FI di casa, sei uno stronzo”!

Breve digressione sui Virus.

I PC, per definizione, sono delle baracche. Il che vuol dire che l’Hardware viene a mala pena testato prima di immetterlo sul mercato, per la semplice ragione che se si perde tempo ad effettuare il controllo qualità o i test alla ricerca di errori, la concorrenza compra il prodotto, lo viviseziona, lo copia e lo butta sul mercato in anticipo fregando così chi ha speso tempo e soldi in ricerca.

Per il software poi è ancora peggio.

Visto che l’architettura di un PC è aperta tutti possono accedervi a piene mani. Cosa vuol dire? Vuol dire che i meccanismi vitali di un PC sono programmabili dall’esterno, per cui tutti i programmi vi possono accedere. E spesso un programma “scassa” ciò che un altro aveva impiantato per funzionare. E’ una questione di indirizzi di memoria, di canali di accesso, di periferiche o altro.

In pratica, sarebbe come se chiunque potesse accedere ai servizi, anche i più minimali, di un grattacielo. E così avremmo rubinetti dell’acqua potabile da cui prendiamo la scossa, ci faremmo docce con le acque nere del coinquilino del piano di sopra, senza contare condizionatori che vanno in corto e telefonate che escono sui cavi dei videocitofoni o sulle antenne della televisione.

Per cui è facile che ciò che ad uno va bene, all’altro scassi tutto.

Cosa bisogna fare?

C’è poco da fare.

La prima cosa è quella di avere sempre un back-up del proprio sistema operativo, oppure tutta la ridda di CD-ROM (mi riferisco all’ambiente Microsoft , Windows 95 or 9Cool sempre pronti. E’ facile dover ricaricare tutto. E senza i CD-ROM diventa un disastro.

Inoltre è anche possibile, anche se non provato, che i grandi produttori di software mettano appositamente delle bombe ad orologeria in modo che, periodicamente, si impalli tutto, costringendo così i truffaldini ladri di software a dover andare alla ricerca di chi gli ha prestato il CD-ROM per dover ricaricare tutto. Visto che a distanza di tempo non ci si ricorda o si sono persi i contatti con chi ci ha prestato il CD-ROM, si è costretti a correre ai ripari comprando il software.

Infine Internet . Internet è un mare magno, in cui galleggia di tutto.

Ci sono non meno di cento milioni di utenti sulla rete, in tendenza di aumento geometrico. E questo vuol dire che se anche la percentuale di burloni, sabotatori, hacker, terroristi informatici, fosse anche dell’uno per cento, vi sono un milione di persone, più o meno brave, che ci provano a scassare tutto, dando in pasto dei veri e propri “cavalli di Troia” che contengano virus, bombe od altro. E visto che la base di persone che si divertono così è davvero tanta non possiamo pretendere che non ci riescano, sia solo per questioni di calcolo delle probabilità. Poi c’è in giro gente davvero brava, in questo caso il meglio del meglio.

Sappia anche che vi erano appositi laboratori di ricerca, della CIA o del KGB, che progettavano virus o bombe, visto che l’informatica è uno strumento di comunicazione e interrompere le comunicazioni al nemico è uno dei più elementari atti di guerra.

D’altronde non possiamo esimerci. Possiamo solo prendere precauzioni.

Vediamole un po’:

1. Niente software pirata. Poco, ma tutto acquistato e con regolari CD-ROM . Innanzi tutto perché in caso di ispezione fiscale, se aprono il PC non trovano programmi cui non corrisponde una regolare fattura, si incorre nell’evasione della Legge IVA, con pene pecuniarie e penali.

2. Prelevare il meno possibile da Internet . Soprattutto Beta-release o giochini. Le Beta Release vuol dire la nuova versione di un prodotto già esistente, però non ancora testato. A me è capitato con EXPLORER 5.0 (la versione in commercio più recente è la 4.0) ove, quando si è “incriccata”, la Microsoft stessa mi ha risposto che loro non danno assistenza su Beta Release. Per cui mai prendere l’ultima versione di qualcosa. Lasciamo fare ad altri più ricchi e frettolosi di noi questo errore.

3. I giochini, siano essi normali o erotici, sono la maggiore fonte di virus. Ovvio, se io voglio mettere in giro un virus non scelgo un programma di calcolo quantistico, ma scelgo qualcosa che si sparga il più velocemente possibile, giochi o porcherie erotiche.

4. Comprare un buon Antivirus: attenzione, per buono vuol dire che venga aggiornato spesso. I programmi di Antivirus non sono altro che programmi che controllano che nei file o programmi non vi siano delle istruzioni che ha catalogato sotto la voce virus: le case produttrici di tali programmi, appena scoprono un nuovo virus lo aggiungono al catalogo. E qui l’importanza dell’aggiornamento. Io usa McAfee, distribuito da ULTIMOBYTE, ma ve ne sono anche altri. Credo che basti andare su di un motore di ricerca e guardare gli appositi siti. Attenzione: se un Antivirus è in funzione, ovviamente le prestazioni del PC rallenteranno. In pratica è come se nel famoso grattacielo di prima ogni persona che transiti dalla portineria venga ogni volta accuratamente perquisito o spogliato.

5. Far periodicamente i back-up, se si hanno i CD-ROM basta solo dei propri dati. Come unità esterne di back-up ci sono in commercio dei unità a nastri esterne, che si possono collegare alla porta della stampante, con cui si può salvare il tutto in breve tempo. Soprattutto se si usa il PC per scopi professionali, dove non si può raccontare alla Finanza che il giornale bollato, che son un paio di mesi che non stampiamo, è andato perduto.

——————————————————————————–

[1] Per Mainframe si intende un potente computer centrale che asserva a più utenti.

[2]Nel Natale del 1994 la Intel, causa errore del microprocessore che sbagliava le divisioni con più di otto decimali, si vide costretta a sostituire i microprocessori Pentium interamente in garanzia, con conseguenti perdite di immagine e di quotazione del titolo a Wall Street.

[3] Da “Le Leggi di Murphy”

[4] Da: “Le Leggi di Murphy”

[5] Facile: cancellare.

[6] Meno facile: da blink: far l’occhiolino: quando un campo a video, ad intervalli regolari, cambia luminosità ad intermittenza.

[7] Riempire di blank, ovvero il carattere che per convenzione viene ottenuto con la barra spaziatrice.

[8] In pratica comprimere i dati di un file con apposito programma, ad esempio PKZIP, onde risparmiare spazio. Per essere utilizzato il file “zippato” dovrà essere passato attraverso un altro programma che lo riporterà alle condizioni originali.

[9] Mi par inutile tradurlo.

[10] Famoso paradosso di Zenone, filosofo greco. Se mettiamo in competizione Achille piè veloce ed una tartaruga, dando un vantaggio alla partenza a quest’ultima, egli non riuscirà più a raggiungerla indipendentemente dalla differenza di velocità fra i due. Se, intatti, la distanza iniziale è A-B, mentre Achille la supera, la tartaruga avrà fatto un passo ulteriore, raggiungendo il punto C, e quando Achille avrà raggiunto il punto C, la tartaruga sarà già al punto D, e così via all’infinito.

Pagina 1 di 2

Powered by WordPress & Theme by Anders Norén