

































Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
fondamenti di informatica scienze della moda e del costume
Tipologia: Appunti
1 / 41
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!


































L’informatica è una scienza che si occupa dei processi di interazione con i dati e della rappresentazione di questi dati sotto forma di risultati comprensibili. Informa(tion) (automa)tique = Informatique Termine coniato in Francia nel 1962 da Philippe Dreyfus. Nei paesi anglofoni viene indicata con il termine Computer Science che non sta ad indicare però la scienza dei computer. L'informatica infatti si occupa del trattamento dell'informazione tramite un computer. Gli attori in gioco: Utente, Computer, Dati, Software. L'utente è la figura che usufruisce del servizio informatico ottenendo una rappresentazione delle informazioni (output) a seguito dell'immissione dei dati nel calcolatore (input). L'interfaccia utente (User Interface - UI) è un livello del software che permette l'immissione e la gestione dei dati e delle informazioni. L'usabilità definisce il grado di facilità nel permettere all'utente di compiere azioni con la macchina. UX sta per User Experience e definisce l'esperienza d'uso di un utente rispetto ad un prodotto o servizio. Non va confusa con la UI che è una parte dell'esperienza utente. UI: Lo spazio dove le interazioni uomo-macchina accadono. Una buona interfaccia è quella che non ha bisogno di istruzioni per l'uso perchè riproduce paradigmi della natura umana nei sistemi di controllo di una macchina. Alcuni esempi di interfacce che hanno rivoluzionato il rapporto con le macchine. UX: Per User experience si intende l'intera esperienza utente nella scelta di utilizzare un servizio o un prodotto. La user experience ha come centro il punto di vista dell'utente, nel design si utilizzano tecniche di Human Centered Design che pongono le esigenze dell'utente come fulcro già nelle prime fasi di progettazione. L’usabilità L'usabilità è il grado di efficienza e soddisfazione con cui l'uomo interagisce con la macchina ed è una delle componenti della User Experience. L'usabilità ha come obiettivo di migliorare la facilità d'uso di un prodotto attraverso la sua interfaccia. 5 componenti che definiscono l'usabilità: Apprendimento: quanto è facile per gli utenti compiere azioni sull'interfaccia la prima volta che la usano? Efficienza: una volta compresa l'interfaccia in quanto tempo riescono a compiere delle azioni? Memorizzazione: dopo un periodo di non utilizzo, in quanto tempo gli utenti riescono ad utilizzare di nuovo l'interfaccia per compiere azioni? Sicurezza e solidità: quanti errori compiono gli utenti e di che gravità? Soddisfazione: quanto è piacevole e comodo usare l'interfaccia? COMPUTER Il computer è una macchina programmabile in grado di compiere operazioni logiche più o meno complesse in maniera automatica o semi-automatica. I computer acquisiscono, memorizzano, elaborano e trasmettono dati immessi da un utente. I computer sono macchine non finalizzate nel senso che non hanno uno scopo univoco. Sono programmabili e in base al software in uso la loro finalità cambia. Possiamo definirle delle macchine universali. Esempi di calcolatori possiamo trovarli fin dall'antichità come l'abaco, la macchina di Anticitera, la Pascalina (1645) o la macchina di Leibniz (1672) ma il vero passaggio tra calcolatore a computer si ebbe con l'intuizione di Charles Babbage e
la sua macchina analitica che, pur non venendo mai realizzata, teorizzava una programmabilità dello strumento e quindi una sua universalità nel calcolo. Nei primi anni del '900 la serie Z di Konrad Zuse e il Colossus di Alan Turing furono le pietre miliari della storia dell'informatica moderna. Con l'introduzione estesa dei transistor e degli integrati si ebbe un'evoluzione ulteriore del computer che lo avvicina di molto ai dispositivi che conosciamo oggi. M a c c h i n a d i V o n N e u m a n n I computer possono essere descritti grazie ad un modello messo a punto dal matematico ungherese John Von Neumann nel 1945. Nella sua sintesi lo schema proposto da Von Neumann regola ancora l'architettura dei moderni calcolatori. La definizione del modello di Von Neumann fu influenzato dal lavoro di Turing sulla computabilità universale espresso nel modello di calcolo chiamato Macchina di Turing. C P U: divisa in A L U e Unità di controllo Memoria: memoria di lavoro Input: permette immissione di dati Output: restituisce i dati all'utente Bus: canale che collega le componenti HARDWARE E SOFTWARE Un computer è composto da due entità fondamentali: una componente fisica definita Hardware e una componente virtuale chiamata Software. L'hardware è la parte fisica del computer e comprende tutte quelle componenti meccaniche, elettroniche e magnetiche che ne permettono il funzionamento. Hardware fondamentali sono: CPU o processore RAM una memoria volatile ROM una memoria di sola lettura con le istruzioni di avvio per il computer Periferiche di INPUT come mouse e tastiera Periferiche di OUTPUT come il monitor Memorie di massa (hard disk) Il software è l'insieme dei programmi che consentono al computer di eseguire i diversi compiti. Possiamo dividere il software in due macrocategorie: Software di sistema Software applicativo Software di sistema I software di sistema sono quei programmi che sono in grado di gestire direttamente le risorse hardware della macchina. Si tratta del livello di software più vicino alle componenti fisiche del computer. Il software di sistema più comune è il sistema operativo, come Windows, Linux o MacOS. I sistemi operativi hanno reso i computer sempre più accessibili agli utenti rendendo facili operazioni complesse. Il sistema operativo permette di utilizzare le applicazioni (software applicativo) e mette a disposizione di queste le diverse risorse hardware del computer. Possiamo immaginare quindi il sistema operativo come la direzione tecnica ed esecutiva di tutti i processi in corso all'interno di un computer.
un supporto tangibile che trasferisca e renda visibile l’informazione al fruitore. Un supporto per trasmettere informazioni attraverso un codice deve essere mutevole poter cambiare di stato. Il cambiamento di stato più semplice è quello binario, cioè due soli stati. Ad esempio Vero o Falso, Acceso o Spento. Per interpretare questo cambiamento di stato è necessario sviluppare un codice. Un linguaggio comune che associ ad ogni cambiamento o sequenza di cambiamenti un'unità informativa. In Informatica questo codice comune è il codice binario. I calcolatori sono in grado di elaborare informazioni solo in un sistema binario. Il bit è l'unità fondamentale di questo sistema ed è assimilabile ad un interruttore che può avere solo due stati: Acceso o Spento che possiamo interpretare con i numeri 1 o 0. Una sequenza di 8 bit equivale ad 1 byte che corrisponde alla quantità di dati necessaria a codificare un carattere. 8 bit = 1 byte 1024 byte = 1 Kilobyte 1024 Kilobyte = Megabyte 1024 Megabyte = 1 Gigabyte 1024 Gigabyte = 1 Terabyte ASCII Per evitare ambiguità nella rappresentazione dei caratteri è stata creata una codifica standard chiamata ASCII American Standard Code for Information Interchange. Una sequenza di 8 bit equivale ad 1 byte che corrisponde alla quantità di dati necessaria a codificare un carattere. ASCII inizialmente utilizzava 7 bit su 8 per un totale di 128 caratteri rappresentabili. L'alfabeto latino però ha molte varianti e tipologie di caratteri, si è deciso così di integrare anche l' bit nella codifica raggiungendo il doppio dei caratteri rappresentabili – 256. Le emoticon derivano dall'utilizzo di caratteri ASCII per rappresentare immagini ed emozioni :-D L'ASCII art è una forma di rappresentazione di immagini con soli 95 caratteri. Perchè il codice binario? L'uso del minor numero possibile di simboli consente di semplificare il metodo di codifica ed interpretazione dei dati da parte di un calcolatore elettronico. Una macchina è in grado infatti di elaborare in maniera univoca i due stati e viene ridotta la possibilità di errore nel riconoscimento. I computer sono costituiti da componenti fisici e questa codifica binaria risponde alle loro caratteristiche intrinseche come assenza o presenza di corrente oppure nel caso delle memorie magnetiche polarizzazione o meno di un settore. L’ importanza del codice binario nei sistemi informatici si deve al contributo di George Boole che ha ridotto per primo i processi logici ad operazioni assimilabili a due stati: 0 e 1. Operatori Booleani Gli operatori booleani sono un sistema logico sviluppato dal matematico inglese George Boole (1815-64) Si tratta di tre operatori logici: OR / AND / NOT. L'operatore "OR" è usato per cercare almeno uno dei due valori. L'operatore "AND" usato per due valori vuole che entrambe i valori siano presenti nella ricerca. L'operatore "NOT" è utilizzato per cercare il primo valore e non il secondo. Digitale ed analogico Analogica è la misurazione di una grandezza che varia con continuità, assumendo tutti i valori possibili fra un minimo ed un massimo. Per digitale si intende la rappresentazione discontinua di una grandezza. Una misurazione digitale varia con dei "salti".
Conversione analogico-digitale La conversione analogico-digitale consiste nel trasformare un segnale che varia con continuità nel tempo e può assumere infiniti valori in una sequenza di valori numerici. 1 - Campionamento 2 - Quantizzazione 3 - Codifica Cosa significa nell' uso quotidiano la codifica in codice binario di un set di dati? FILE Il file è un contenitore di informazioni digitali registrato sul supporto di memorizzazione di un computer. Il file si può leggere e scrivere, è un deposito di informazioni che può essere consultato e modificato. Ogni file è localizzato da un percorso (PATH) ed è caratterizzato da una specifica estensione o da un 'intestazione che permette al sistema operativo di identificarne il contenuto. Formato del file Il formato del file è il metodo con cui le informazioni vengono codificate, scritte e interpretate nel file stesso. Possiamo descrivere genericamente il formato file come il metodo per ordinare i byte all'interno di un file. A seconda della convenzione che verrà scelta avremo un determinato tipo di informazione. Ad esempio per i file di testo abbiamo visto la codifica ASCII. I formati file possono essere "aperti" cioè con delle specifiche pubbliche e libere di essere replicate. Avere un formato aperto significa che una software house può sviluppare un programma che permetta la gestione di quel determinato tipo di file. Alcuni formati file invece sono " proprietari" cioè con le specifiche tecniche per la loro interpretazione e scrittura non pubbliche ma vincolate da un brevetto. In tal caso i file possono essere elaborati soltanto dal software che conosce quelle specifiche. Estensione file L'estensione file è un suffisso, generalmente composta da 3 o 4 caratteri posizionato dopo il nome del file e preceduto da un punto. Nei sistemi operativi Windows M S - D O S l'estensione è necessaria per riconoscere il tipo di file direttamente dal nome. Permette quindi di associare il corretto software per gestire un tipo di file. Ad esempio un file bilancio.docx è composto dal nome file BILANCIO e dall'estensione .DOCX quest'ultima indicherà al sistema operativo (Windows) di aprire Microsoft Word al doppio click sul file bilancio.docx. Nei sistemi operativi Windows quindi è necessario che ogni file abbia una propria estensione assegnata per essere aperto/letto/modificato. Le estensioni .exe .bat .cmd nei sistemi Window si identificano dei file eseguibili cioè non dei documenti ma un set di istruzioni che avranno luogo all'apertura del file, come ad esempio l'installazione di un software. Intestazione del file Nell'intestazione del file (le prime righe della codifica delle informazioni) possono essere racchiuse anche delle indicazioni sul formato. Questa sequenza di bit posizionata prima dei dati veri e propri viene chiamata Magic Number ed è usata principalmente nei sistemi Unix (quindi Linux e parzialmente MacOS). I Magic Number vengono utilizzati oggi anche per identificare eventuali errori di trasmissione nei dati via rete. Nei sistemi Microsoft non vengono letti i Magic Number e l'identificazione del file avviene tramite l'estensione. Esempi di Magic Number: I file PDF iniziano sempre con %PDF che in esadecimale è 25 50 44 46 I file Zip iniziano sempre con PK che in esadecimale è 50 4B. Esadecimale Il sistema esadecimale è un sistema numerico che utilizza 16 simboli invece di 10 (sistema decimale). Nel sistema esadecimale si usano i numeri da 0 a 9 e poi le lettere dalla A alla F, per un totale di 16
Immagini Vettoriali Le immagini vettoriali sono costruire basandosi su formule matematiche e forme geometriche a cui vengono assegnati colori ed effetti. Dal momento che sono costruite grazie a formule matematiche/geometriche è possibile ingrandirle all'infinito senza degradare l'informazione. Immagini raster Le immagini raster sono costituite da una matrice di punti (una griglia) definiti pixel. È quindi una mappa di informazioni, una mappa di bit e quindi le immagini raster sono definite anche immagini bitmap. Ogni pixel contiene delle informazioni che costituiscono il suo colore. Generalmente la quantità di rosso (R), verde (G), e blu (B) che sono i colori primari che definiscono gli altri colori nel sistema RGB. Le proprietà fondamentali di un 'immagine raster sono 2:
Spazio colore CMYK: è un modello di colore sottrattivo che si basa sull' utilizzo di 4 colori, Ciano, Magenta, Giallo e Nero. (Cyan, Magenta, Yellow, Key Black). È un modello di colore che funziona in maniera opposta al modello RGB e viene usato principalmente per la stampa tipografica. I valori di ogni singolo colore sono espressi in numeri che corrispondono ad una percentuale quindi vanno da 0 a 100. Immagini vettoriali Le immagini vettoriali, come suggerito dal nome, non sono definite da mappe di bit ma da vettori. Un vettore è un " segno " calcolato indicando un punto di inizio e un punto di fine. Il calcolo quindi prende in considerazione il modo in cui mettere in unione questi due punti e non la distanza. Così ad aumentare o diminuire della distanza non aumenta o diminuisce la quantità di informazione da memorizzare. Le immagini vettoriali sono quindi dei disegni realizzati dal calcolatore stesso su nostre indicazioni. Non hanno problemi di risoluzione perchè sono un insieme di calcoli e non una matrice di punti. Altra differenza sostanziale è il dettaglio, mentre nelle immagini raster abbiamo dei dettagli e delle sfumature finissime, nelle immagini vettoriali quel tipo di dettaglio richiede un enorme capacità di calcolo. Questo si traduce in avere come immagini vettoriali delle immagini semplici, definite da linee e forme geometriche non estremamente complesse. Caratteristiche e Formati Le immagini vettoriali hanno queste caratteristiche: possono essere ingrandite o rimpicciolite senza perdita di risoluzione occupano uno spazio esiguo di memoria può essere facilmente convertito in raster il numero di colori può essere gestito a seconda delle esigenze di stampa vengono definite da formule matematiche e geometriche I formati dei file vettoriali più comuni sono: Ai - formato proprietario di Adobe per l'utilizzo con Illustrator EPS - formato Postscript che può essere usato anche per file bitmap PDF - formato di Adobe DWG - formato di Autodesk Autocad SVG - formato aperto gestito dal W3C Uso dei file vettoriali Abbiamo visto nelle proprietà dei file vettoriali, l'indipendenza dalla risoluzione. Ad esempio un logo in vettoriale di 2cm può essere ridimensionato per occupare 2metri senza alcuna perdita di qualità. L' uso primario dei file vettoriali viene dunque da quelle applicazioni che hanno necessità di declinare le immagini in dimensioni differenti con facilità e leggerezza, ricordiamo infatti che a differenza delle immagini raster, le immagini vettoriali occupano poco spazio nella memoria del calcolatore. I settori professionali in cui i file vettoriali sono molto diffusi sono: Tipografia grafica 2D (loghi, icone) grafica 3D (disegni tecnici, architettura) Sviluppo software (interfacce utente) Manifattura e artigianato digitale Modellazione 3D La modellazione 3D identifica quella tecnica di disegno che ha come obiettivo la realizzazione di forme tridimensionali attraverso l'utilizzo di rappresentazioni matematiche di superfici ed oggetti.
funzionante, la studio della macchina introdusse notevoli innovazioni sia meccaniche che teoriche, in particolare l'utilizzo di una aritmetica binaria per eseguire le quattro operazioni e la logica simbolica poi ripresa da George Boole quasi un secolo più tardi. 1802 - Jacquard e il telaio Nel 1802 l'imprenditore tessile Jacquard introduce nella sua fabbrica di Lione l'utilizzo di schede perforate nel meccanismo dei telai per definire i disegni delle stoffe in produzione. Il sistema era molto semplice: la lettura delle schede avveniva tramite aghi che potevano passare soltanto dove era presente un foro alzando di conseguenza il filo per il passaggio della trama. Con questo meccanismo il lavoro al telaio procedeva quasi al doppio della velocità rispetto ad un operatore umano. A Lione nel 1800 circa il 70% della popolazione lavorava nell'industria tessile, gran parte proprio come operai e la nuova macchina metteva a repentaglio centinaia di posti di lavoro. Il Consiglio della Città diede ordine di distruggerla. Nonostante questo stop, solo 10 anni dopo circa 10.000 telai erano diffusi in tutta Europa. Il telaio di Jacquard introduceva per la prima volta nell'industria il codice binario e la programmazione di un software. 1 passa l'ago (foro) 0 non passa l'ago (pieno). Le schede perforate possono essere associate a dei software, il motivo riprodotto sulla stoffa era dettato infatti dalla sequenza di fori sulla scheda. 1822 - Charles Babbage Professore di matematica a Cambridge, Charles Babbage dedica gran parte della sua ricerca alla progettazione e al tentativo di sviluppo di macchine calcolatrici automatiche. Il suo lavoro si divide su due progetti fondamentali: la macchina differenziale e poi la macchina analitica. La macchina differenziale è un dispositivo concepito per eseguire calcoli fino all' ottava cifra decimale con l'obiettivo di stampare direttamente le tavole matematiche tramite il calcolo con il metodo delle differenze. La stampa delle tabelle matematiche era una necessità dettata dagli errori frequenti nelle stampe a disposizione. La macchina tuttavia non venne mai completata a causa della mancanza di fondi e dalla complessità dei meccanismi progettati. Babbage proseguì nella sua ricerca con la macchina analitica, un modello ancora più complesso di calcolatore, basato sulle schede perforate utilizzate da Jacquard ed era progettata per risolvere qualsiasi tipo di calcolo. Da progetto la macchina pesava 5 tonnellate ed era composta da più di 8000 componenti. Anche questa non venne mai realizzata, tuttavia introdusse degli elementi comuni ai moderni calcolatori come il concetto di memoria e l'unità di calcolo e controllo. 1830 - Ada Lovelace Figlia del poeta inglese Lord Byron, venne abbandonata dal padre pochi mesi dopo la nascita. La madre Annabella Milbanke rifiutò l'idea che la figlia potesse avvicinarsi alle lettere e le impose un 'istruzione matematica rigorosa che proseguì anche ad un livello universitario avanzato nonostante le difficoltà per una donna nel 1800. Nel 1833 Ada incontrò Babbage e il suo lavoro sulla macchina analitica, intuì immediatamente le possibilità del progetto in particolare sottolineò l'importanza della capacità di programmare la macchina attraverso set di istruzioni per eseguire calcoli complessi e il concetto che i numeri possano essere considerati come entità e non come quantità, questo apriva la possibilità di manipolare numeri come astrazione di altri simboli, ad esempio le lettere o le note. Nel 1841 scrisse delle note ad un articolo del matematico Menabrea sul progetto di Babbage. Le note vennero pubblicate con le iniziali AAL per evitare le restrizioni sessiste dell'Inghilterra del 1800. Le note di Ada introducevano appunto le potenzialità di universalità della macchina analitica di Babbage anticipando il concetto di software e di programmazione. Nelle note definì inoltre quello che è considerato il primo software della storia con cui sarebbe stato possibile calcolare i numeri di Bernoulli tramite la macchina analitica di Babbage. Nel software introduce inoltre il concetto di "loop
" (una sequenza ripetuta di passaggi) e di funzione (un sottoprogramma da richiamare nel programma principale). 1890 - Hollerith Nel 1890 l'ingegnere americano Hollerith vinse la gara per la progettazione di una macchina in grado di contare e classificare i dati del censimento americano. I dati del censimento del 1880 ancora non erano disponibili, dopo 10 anni non si era arrivati al completo spoglio delle schede a causa della lentezza nel calcolo umano. Hollerith, ispirato dalle schede perforate di Babbage, le utilizzò non per indicare una sequenza di istruzioni ma per indicare i dati e i risultati dell'elaborazione. Sulle schede, ad esempio il genere veniva indicato con un foro se l'individuo era maschio e con l'assenza di foro se femmina. Le schede venivano poi elaborate da una macchina in cui un circuito elettrico veniva acceso o spento in presenza o assenza dei fori. Lo spoglio dei dati del censimento americano del 1890 venne completato in 50 giorni. Fu la prima volta che delle schede perforate vennero utilizzate in unione con un circuito elettrico. L' azienda fondata da Hollerith nel 1896 la Tabulating Machine Company, nel 1924 cambiò nome e si fuse con altre compagnie diventando la International Business Machines Corporation (IBM). 1927 - Vannevar Bush Nel 1927 al MIT Vannevar Bush ed il suo gruppo di ricerca inizia la progettazione del Differential Analyzer, il primo calcolatore elettromeccanico in grado di risolvere automaticamente equazioni differenziali a 18 variabili. La programmazione richiese settimane di lavoro e la macchina fu completata dopo 3 anni nel 1930, due anni dopo venne acquisita dall' esercito americano dove rimase in uso per il calcolo balistico fino agli anni '50. Il contributo di Vannevar Bush non è limitato però alla realizzazione di una macchina, nel 1954 un suo articolo sugli sviluppi futuri dei calcolatori e del loro rapporto con gli utenti apre le strade ad un concetto che fu reso realtà soltanto nei primi anni '90 del secolo: l'ipertesto. Vannevar Bush infatti nell' articolo "As we may think" immaginò una macchina futura ispirata alla capacità associativa della memoria umana (da qui il nome MEMEX), attraverso la quale fosse possibile organizzare delle informazioni (testi, appunti e comunicazioni) tramite dei collegamenti. Il Memex di Bush veniva definito come "un'espansione della memoria umana", e sarebbe stato costituito da schermi, tastiera e una serie di bottoni e leve. Appariranno forme totalmente nuove di enciclopedie, già confezionate con una rete di percorsi associativi che le attraversano, pronte per essere immesse nel memex ed ivi potenziate. 1936 - Macchina di Turing Ad Alan Turing si deve la prima definizione di calcolatore moderno, quello che verrà definito "macchina di Turing", un macchinario in grado di eseguire azioni secondo uno schema di calcolo ricorsivo in grado di risolvere ogni problema di logica simbolica in un determinato numero di passaggi. La macchina di Turing è in grado di leggere e modificare dei simboli su un nastro suddiviso in celle, basandosi sui simboli letti in precedenza che indicano dati ed istruzioni. Per la prima volta viene definito un modello di macchina universale in grado di svolgere qualsiasi tipo di calcolo. Il contributo di Turing alla storia dell'informatica è molto importante e non si limita alla teorizzazione di una macchina universale. Le sue teorie e la sua competenza in criptografia e criptoanalisi lo portarono durante le seconda guerra mondiale a collaborare con il governo inglese per coordinare la task force impiegata a decifrare i messaggi della macchina Enigma. In questa missione furono fondamentali anche le ricerche ed il calcolatore denominato Bomba progettato nel 1932 e realizzato nel 1938 dal matematico polacco Marian Rejewski. 1938 - Konrad Zuse Ingegnere aereonautico, Konrad Zuse si avvicinò all'informatica nel tentativo di ridurre i tempi di calcolo per la progettazione dei velivoli. La prima macchina realizzata da Zuse fu lo Z1, un calcolatore
Philadelphia. La programmazione inoltre era piuttosto laboriosa, nonostante questo la potenza di calcolo era incredibile per l'epoca e superava di 1000 volte quella del Mark 1. 1948 - EDVAC Nel 1944 venne proposto il progetto EDVAC al Ballistic Research Laboratory, i propositori erano sempre i progettisti dell'ENIAC che ancora non era stato ultimato, John Mauchly e J. Presper Eckert. Il contratto tuttavia venne formalizzato nel 1946 e prevedeva la costruzione di un calcolatore radicalmente diverso da ENIAC, prima di tutto l'utilizzo di un sistema binario al posto di uno decimale, inoltre viene implementato un supporto di memoria. L' apporto fondamentale viene dato però da un consulente che aiuta nella definizione dell'architettura del computer. John Von Neumann, ungherese espatriato negli Stati Uniti, definisce quella che verrà definita architettura Von Neumann in un articolo pubblico ("First draft of a report on the EDVAC"). Nel modello di Von Neumann dati ed istruzioni sono memorizzati nello stesso spazio di memoria al contrario dell'architettura Harvard. Con EDVAC fa la sua comparsa la memoria RAM ed il concetto di software per come lo intendiamo oggi. Trattando infatti le istruzioni come dati il calcolatore permette di cambiare programma durante la sua esecuzione. L'EDVAC occupava 45 mq di spazio e pesava quasi 8 tonnellate. Per funzionare era necessario un team di 30 persone con turni di 8 ore. 1950 - 1960 2° generazione Nel 1947 vennero introdotti i transistor che iniziarono ad essere utilizzati a metà degli anni '50 come sostituti delle valvole e dei tubi a vuoto con un enorme vantaggio nel perfezionamento delle macchine e della potenza di calcolo dei programmi. Il vantaggio più grande era inoltre costituito dalla riduzione sensibile dello spazio occupato dai calcolatori e introducendo la possibilità di una produzione seriale delle macchine. Il primo calcolatore prodotto in serie è l'IBM 650 che aveva a disposizione una vasta libreria di programmi. Nel 1959 la Olivetti presenta il primo progetto di calcolatore elettronico di produzione italiana: è l'ELEA 9003, basato totalmente su una architettura a transistor mentre un anno dopo la DEC introduce il PDP-1 il primo computer commerciale con monitor e tastiera come dispositivi di input. Nel 1960 Ted Nelson descrive il progetto Xanadu, il primo sistema basato sull'ipertesto. Il progetto si basa sull'idea di una scrittura non sequenziale che possa permettere al lettore di seguire un proprio percorso. Il supporto informatico sarebbe stato fondamentale in questo scenario, Nelson immaginava Xanadu come un software di videoscrittura in grado di avere più versioni dello stesso scritto e poter permettere dei collegamenti con altri documenti. 1960 - 1970 i processori Nel 1964 nasce il linguaggio BASIC realizzato per scopi didattici da John Kemenye Thomas Kurtz, nello stesso anno viene presentato il mouse da Douglas Engelbart. Nel 1965 viene presentata al mondo la Programma 101 un computer sviluppato dalla Olivetti e considerato il primo computer desktop programmabile, il primo personal computer della storia. Ne vennero vendute 44.000 unità. Nel 1968 Gordon Moore fonda la INTEL, il principale asset della compagnia è la produzione di microprocessori con la tecnologia LSI fondata sulla "Silicon Gate Techonology " sviluppata da Federico Faggin alla Fairchild proprio nel 1968. La tecnologia inventata da Faggin permetteva di integrare in un solo chip una CPU completa riducendo drasticamente i costi dei calcolatori. Il microprocessore sarà da quel momento lo standard per la definizione delle CPU. Gordon Moore rimase famoso anche per aver racchiuso in una frase quella che viene definita la legge di Moore con la quale si calcolava l'aumento delle prestazioni dei microprocessori (dal 2020 è diventata obsoleta a causa dei limiti fisici dei materiali). «La complessità di un microcircuito, misurata ad esempio tramite il numero di transistor per chip, raddoppia ogni 18 mesi (e quadruplica quindi ogni 3 anni)».
1970 - 1980 Personal computer Nel 1975 Olivetti presenta alla fiera di Hannover il P6060 primo personal computer al mondo venduto pre-assemblato dotato già di floppy disk incorporato. Sempre nel 1975 a Boston il programmatore Paul Allen crea il BASIC per il sistema Altair. Terminato il prodotto, Allen lasciò il lavoro, e insieme con un suo compagno di corso ad Harvard, Bill Gates fondò una piccola società, la Microsoft, per commercializzare il Basic. Nel 1976 Steve Wozniak, si licenzia da HP e insieme al suo amico Steve Jobs fonda la Apple Computer. Nel 1977 presentano l'Apple II un personal computer. La componente che lo rese estremamente famoso fu la scelta di rendere pubbliche tutte le informazioni sulle funzioni software della macchina. Questo permise a molti sviluppatori di realizzare software efficienti per l'Apple II sfruttandone tutte le potenzialità. A esempio l'utilizzo del foglio elettronico VisiCalc rese fondamentale l'utilizzo di Apple II nelle applicazioni business. Nel 1978 Intel commercializza il primo processore a 16 bit, l'8086. 1980 - 1990 OS Nel 1981 IBM produce quello che fornì la definizione durata per anni PC IBM, lIBM 5150. Nel 1983 Apple lancia LISA il primo computer con mouse ed interfaccia grafica. Sarà un flop clamoroso causato soprattutto dal costo eccessivo e da un design scadente. Nel 1984 Microsoft annuncia l'arrivo di Windows concepita come interfaccia grafica da applicare al suo sistema MS-DOS venduto come sistema di base per i computer IBM. Nel 1984 Apple ci riprova con il progetto Macintosh, in questo progetto vengono introdotte delle innovazioni considerevoli nell'interfaccia ispirate dal sistema operativo dello Xerox Alto, ad esempio le icone ed il concetto di scrivania e la possibilità di avere finestre sovrapposte su più livelli. Debuttano inoltre i software Word ed Excel sviluppati da Microsoft per Apple e viene dato particolare risalto ai font. Nel 1985 Andy Warhol diventa testimonial di Amiga pubblicizzando il modello 1000. È il segno che l'informatica sta entrando nella vita commerciale della società, già un anno prima la Apple ingaggiò Ridley Scott per girare uno spot diventato celebre perchè trasmesso durante il SuperBowl. 1991 - Linux Nel 1991 l’insoddisfazione riguardante alcuni applicativi di Minix (un sistema Unix su una piattaforma PC destinato alla didattica, scritto da Andrew Tanenbaum, professore ordinario di Sistemi di rete all' università di Amsterdam), il desiderio di approfondire le proprie conoscenze del processore Intel 386, scelto in quanto di minor costo e di maggiore diffusione rispetto alle piattaforme hardware per le quali erano disponibili sistemi operativi Unix, e l’ entusiasmo per le caratteristiche tecniche di Unix stimolarono Linus Torvalds, studente al secondo anno di informatica presso l’Università di Helsinki, a sviluppare un proprio sistema operativo. Linux è il nome del kernel sviluppato da Linus Torvalds e da collaboratori di tutto il mondo a partire dal 1991. La scelta di integrare il primo kernel Linux al progetto GNU di Richard Stalmann derivò dalla insoddisfazione di Torvalds per Minix. Linus decise di rendere il sistema indipendente da Minix, anche perché non ne gradiva la licenza che lo rendeva liberamente utilizzabile solo a fini didattici. 1993 - WWW Nel 1993 il CERN cede il software del WWW come regalo alla comunità internazionale. "La tecnologia WWW sarebbe diventata utilizzabile liberamente da tutti, senza bisogno di dover pagare alcuna tassa”. La prima descrizione del World Wide Web risale al marzo del 1989 quando Tim Berners Lee presentò delle note in cui indicava lo sviluppo di un servizio che aiutasse nella gestione delle informazioni legate agli esperimenti in atto in quel momento al CERN di Ginevra. Il nome di quel servizio era MESH e un anno dopo era operativa la prima pagina Web ospitata sul computer NeXT di Berners Lee. La pagina descriveva il progetto e presentava i collegamenti ipertestuali che
2.147.483.647 secondi quindi si arriva all'istante massimo 03:14:07 (Utc) del 19 gennaio 2038. Youtube a 32 bit non gestisce più di 2.147.483.647 visualizzazioni. 2001 - Wikipedia Nel marzo del 2000 la società Bomis inizia il progetto Nupedia con a capo Jimmy Wales e Larry Sangers. Un anno dopo venne lanciato il progetto Wikipedia, nello specifico il 15 gennaio 2001, al primo anno l'enciclopedia online contava già 20.000 voci e alla fine del 2002 metteva a disposizione 26 lingue differenti. Nel 2003 nacque la Wikimedia Foundation, organizzazione no-profit che gestisce e sostiene Wikipedia. La caratteristica principale di Wikipedia è l'aspetto collaborativo che permette a chiunque di contribuire con scritti originali o con correzioni ai lemmi, l’enciclopedia si basa sulla spontanea volontà di collaborare degli utenti e tutti i contenuti vengono rilasciati sotto licenza Creative Commons BY-SA3.0, i suoi contenuti quindi possono essere ridistribuiti ed in caso di utilizzo commerciale è necessaria la citazione dell'autore e il contenuto dovrà essere mantenuto ri- distribuibile gratuitamente. Il progetto Wikipedia può essere avvicinato al Memex di vannevar Bush ma anche al progetto Xanadu di Ted Nelson. 2004 - Facebook Facebook è un social medium presentato commercialmente nel 2004, ad oggi risulta il terzo sito al mondo più visitato dopo Google e Youtube. Nell' ottobre 2003 Mark Zuckerberg, al secondo anno ad Harvard, pubblica Facemash, un sito che permette di confrontare e votare all'interno di una pagina le immagini di due studentesse a caso nel campus universitario. Per ottenere le immagini Zuckerberg accede alle aree protette dell'Università copiando foto e documenti di riconoscimento degli studenti. Facemash registrò nelle prime 4 ore 450 utenti e 22.000 foto visualizzate. Il sito venne chiuso dopo pochi giorni da Harvard e Zuckerberg fu accusato di violazione della privacy, del copyright industriale e della sicurezza dell'ateneo. Nel gennaio 2004 Zuckerberg lancia un nuovo sito web TheFacebook con l'obiettivo di creare una rete sociale all'interno di Harvard. L'inizio fu travagliato anche per una causa legale promossa da altri tre studenti che lo accusarono di furto dell'idea. In meno di un mese tutta l'università era registrata al servizio, in due mesi si espanse alla Columbia, a Yale, al MIT, alla Boston University e al Boston College. Facebook è un servizio gratuito per gli utenti e guadagna attraverso inserzioni e pubblicità. Nel 2013 Edward Snowden include FAcebook nelle rivelazioni sul programma PRISM della NSA. Nel 2018 è stata denunciata una fuga di dati sensibili che ha interessato 87 milioni di utenti, dati venduti attraverso l'app "thisisyourdigitallife" di Cambridge Analytica. 2007 - iPhone Lo sviluppo dell'iPhone nasce da una considerazione commerciale rispetto al prodotto di punta Apple dei primi anni 2000, l'iPod. Secondo Jobs presto nessuno avrebbe comprato più iPod perchè le persone possedevano già un telefono con funzioni analoghe. Da quel momento inizio la fase di prototipazione di un telefono multimediale simile all'iPod con integrato uno schermo multi-touch. L'iPhone venne presentato a gennaio 2007 e venne introdotto come la combinazione di iPod con schermo tattile, telefono e accesso ad Internet. L'introduzione di uno schermo multi-touch nel telefono non era una novità, nel 2006 LG con l'edizione Prada presentava un monitor tattile capacitivo e una tastiera fisica, nel 2004 il Nokia 7710 presentava uno schermo touch che lo rese famoso per l'integrazione con le mappe Tom Tom. L'importante innovazione dell'iPhone fu l'impatto sociale della campagna di marketing, la forza del brand che lo promuoveva e soprattutto l'ecosistema che stava creando con il concetto di app reso semplice da gestire da parte dell' utente con un marketplace dedicato. Nel luglio 2008 viene lanciato l'App Store con presenti 500 applicazioni disponibili.
2008 - Blockchain La blockchain è una struttura di dati condivisa ed immutabile, un registro digitale delle operazioni, crittografato e condiviso. Il concetto di blockchain viene introdotto per la prima volta nel 2008 da Satoshi Nakamoto, pseudonimo di una entità tuttora sconosciuta. La blockchain come viene descritta nell'articolo di Sakamoto è un libro mastro dove registrare tutte le transazioni di una valuta digitale che sarebbe stata creata: il Bitcoin. L'importanza della blockchain non risiede nel Bitcoin ma nella definizione di un registro aperto in grado di memorizzare in dati in modo sicuro ed affidabile. Come si evince dal nome blockchain è una catena di blocchi che contengono informazioni (nel caso dei bitcoin le transazioni), queste informazioni sono verificate e convalidate da un sistema di consenso che comunica con tutti i nodi della rete. Prendendo ad esempio i bitcoin la blockchain è il registro con l'elenco di tutti i conti e relativi saldi in bitcoin, è simile al registro di una banca ma con la particolarità che questo registro non è custodito e verificato da un unico ente ma dall'intera rete di "correntisti". Quindi nella blockchain ciascun nodo della rete legge e può aggiornare il registro delle transazioni, ogni nome del correntista è un ID crittografato e quindi non associabile ad una persona fisica. Esempio: Il correntista A deve trasferire del denaro a B. A indica con la sua chiave crittografica unica che sta eseguendo una transazione di importo X al destinatario B (identificato sempre con il suo ID crittografato), queste informazioni vengono registrati su tutti i nodi della rete. Quindi tutti nodi della rete sapranno che A ha trasferito a B un importo X. L'importanza della blockchain è proprio nella capacità di garantire un rapporto di fiducia tra intermediari e di permettere un controllo di tutta la filiera del trasferimento delle informazioni tramite una comunicazione a tutti gli interlocutori. 2009 - WhatsApp Nel 2009 due ex dipendenti Yahoo! investono nello sviluppo di un'app che potesse mostrare lo stato degli utenti in rubrica. Qualche mese dopo il primo rilascio introducono la funzione di messaggistica nell'app ed improvvisamente il numero di utenti utilizzatori del servizio inizia a crescere. È l'inizio di WhatsApp. La neo società si vede obbligata ad introdurre una quota di ingresso a pagamento per limitare la crescita degli utenti e sostenere i costi di verifica identità (SMS di verifica). Nel febbraio 2014 WhatsApp viene acquisita per 19 miliardi di dollari da Facebook che mantiene l'assenza di pubblicità interna all'applicazione. Ad agosto 2014 WhatsApp diventa l'app di messaggistica più diffusa al mondo con 600 milioni di utenti attivi. Ad aprile 2016 viene introdotta la crittografia end- to-end che cifra i messaggi tra mittente e destinatario. Chiunque sia fuori da questa catena non sarà in grado di leggere il messaggio, formalmente neanche WhatsApp è in grado di risalire alla chiave di cifratura, praticamente è stato dimostrato che nel meccanismo di cifratura i server di WhatsApp possono generare nuove chiavi private di fatto intercettando il messaggio. Il 18 maggio 2017 la Commissione Europea ha multato Facebook con 110 milioni di euro per comunicazione ingannevole riguardo l'acquisizione di WhatsApp nel 2014. Facebook aveva garantito infatti che sarebbe stato impossibile unire automaticamente le informazioni utente di Facebook e WhatsApp. Nel 2016 però Facebook ha dichiarato di aver integrato lo scambio dati per la generazione di messaggio pubblicitari mirati. Machine Learning Il machine learning è quella tecnica che permette ad un computer di imparare ad effettuare delle operazioni senza che venga sviluppato un software specifico che compie quelle operazioni. Una tecnica che sviluppa quindi dei metodi per permettere ad una macchina di migliorare autonomamente le proprie capacità e prestazioni nel tempo. Il machine learning è una disciplina direttamente collagata con l'intelligenza artificiale, il primo a coniare il termine fu Arthur Lee Samule nel 1959. Apprendimento supervisionato
Topologia delle reti Possiamo descrivere dei modelli di rete per la loro forma geometrica che ne rappresenta le corrispettive proprietà di connettività tra i diversi nodi della rete stessa. Distinguiamo le reti quindi con queste topologie: Reti mesh Reti a stella Reti ad albero Reti ad anello Reti bus Reti mesh Le reti mesh si suddividono in reti completamente connesse e reti parzialmente connesse. Reti mesh completamente connesse In questo modello di rete tutti i nodi sono interconnessi direttamente tra loro senza intermediazioni. Vantaggi: massima affidabilità, massima velocità di comunicazione Svantaggi: difficile e costosa per reti con molti nodi Reti mesh parzialmente connesse In questo modello di rete tutti i nodi sono interconnessi da sottoinsieme di nodi. Vantaggi: affidabile e meno costosa della mesh completamente connessa Svantaggi: rischiosa se un nodo resta isolato Reti lineari complesse Le reti lineari possono avere due topologie: Reti a stella In questo modello i nodi sono connessi ad un componente centrale (HUB), ogni nodo quindi per comunicare con un altro deve passare per l'hub. Vantaggi: affidabile e veloce Svantaggi: rischiosa perchè presenta un punto che in caso di fallimento compromette l'intera rete. Reti ad albero Nel modello di rete ad albero tutti i nodi partono da un nodo padre principale Vantaggi: costi di implementazioni contenuti Svantaggi: altamente rischiosa perchè se un solo collegamento con il nodo principale salta, interrompe la comunicazione su tutta la sua linea di discendenza. Reti bus In questo modello tutti i nodi sono connessi tramite un canale comune detto appunto BUS. Vantaggi: facilmente scalabile Svantaggi: la solidità può essere compromessa dalla funzionalità del bus Estensione delle reti Le reti vengono descritte non solo per la loro forma geometrica ma anche per il loro raggio di azione. Possiamo identificare queste diverse estensioni di reti: Near-field communication (NFC) Body Area Network (BAN) Personal Area Network (PAN, Rete personale) Local Area Network (LAN, Rete locale) Metropolitan Area Network (MAN, Rete metropolitana) Wide Area Network (WAN, Rete geografica) Global Area Network (GAN, Rete globale)
NFC - Near field communication Si tratta di tipologie di reti che mettono in connessione due o più dispositivi molto vicini, in genere ad una distanza non superiore ai 10 centimetri. Ne sono un esempio concreto i pagamenti contactless ed i sistemi di scambi dati definiti proprio NFC. Quando due dispositivi NFC entrano in un raggio di azione di circa 4 cm viene creata una rete peer-to-peer che permette lo scambio dati in entrambe le direzioni. La tecnologia NFC in uso nei sistemi contactless deriva dalla tecnologia RFID ma a differenza di questa permette uno scambio bidirezionale delle informazioni. BAN- Body area Network Per reti BAN si intendono le reti che abbiano una copertura di circa un metro. Si configurano quindi come delle estensioni del nostro corpo. Le reti BAN sono comunemente associate a dispositivi indossabili come gli smartwatch ma soprattutto a dispositivi in ambito medico come pacemaker e sensori. PAN- Personal area network Le reti PAN identificano le reti che coprono un'estensione di qualche metro, sono identificabili con le reti di dispositivi che controlliamo direttamente in un luogo specifico, come il computer connesso al media center o alla stampante, il telefono che funziona da modem router in tethering. LAN- Local area network Le reti LAN sono molto comuni in ambito aziendale perchè coprono diversi dispositivi a distanza di decine di metri tra loro. Ad esempio una rete LAN è quella che connette tutti i computer all'interno della sede di un'azienda coprendo l'intero edificio. MAN - Metropolitan area network Le reti MAN sono reti metropolitane che coprono una distanza di decine di Km, spesso raccolgono più reti LAN e operano sia in ambito privato che in ambito pubblico. WAN- Wide area network Le reti WAN si estendono su un'intera area geografica e comprendono diverse reti MAN e LAN GAN- Global area network Le reti GAN si estendono a livello globale. Un esempio di rete GAN è Internet Mezzi per la trasmissione Le reti per ritenersi tali devono mettere in comunicazione più nodi, in particolare le reti di calcolatori devono mettere in comunicazione più computer. La comunicazione avviene attraverso dei mezzi che possiamo riassumere in questo elenco: Doppino telefonico Cavo coassiale Fibra ottica Wi-Fi Bluetooth IrDA Il doppino telefonico e la fibra ottica sono dei mezzi di comunicazione che utilizzano un supporto fisico (il cavo) mentre il Wi-Fi, il Bluetooth e l'infrarosso (IrDA) sfruttano tecnologie che non prevedono un contatto diretto (segnali radio ed onde elettromagnetiche). Questi mezzi di trasmissione stabiliscono il canale di comunicazione della rete, la qualità della trasmissione dipende dalle caratteristiche del mezzo e dalla qualità del segnale. La velocità di