L'ipertesto globale: World Wide Web[ vai a Sezione 01 ] [ vai a Sezione 02 ] [ Sezione 03 ] I Plug-in MacromediaShockwave è una tecnologia sviluppata dalla Macromedia, che permette di visualizzare animazioni ed applicazioni multimediali realizzate con Director. Director è un programma nato originariamente per fare animazioni su piattaforma Macintosh; portato successivamente anche in ambiente Windows, è stato sviluppato fino a divenire uno dei più potenti e diffusi software di authoring multimediale. Oltre ad avere pregevoli funzioni di animazione digitale, è dotato di un linguaggio di programmazione object-oriented, dal suggestivo nome Lingo, e può essere usato per costruire complesse applicazioni interattive. I requisiti tecnici, e il fatto di essere nativamente disponibile su entrambe le piattaforme dominanti nel personal computing, ne hanno fatto uno degli standard nel mercato multimediale su CD-ROM. Il plug-in Shockwave è in grado di interpretare anche tutti i formati delle altre applicazioni grafiche e multimediali della Macromedia, e può ricevere suono in tempo reale da Internet. Oltre all'originario Shockwave (che comunque continua ad essere incessantemente migliorato), ultimamente la Macromedia ha sviluppato numerosi altri plug-in. Flash 2, per esempio, permette di attivare applicazioni multimediali ed interattive in modalità streaming. RealFlash, sviluppato insieme alla casa produttrice di RealPlayer, unisce l'interazione tipica di Director agli avanzati algoritmi di compressione dati streaming prodotti dalla RealNetworks. Da una sapiente mistura di Shockwave, Flash 2, RealPlayer 5, JavaScript, nasce l'iniziativa ShockRave, che raccoglie una serie di applicazioni multimediali/interattive particolarmente avanzate: dalle pagine di ShockRave si potrà ascoltare musica dal vivo, vedere filmati e persino giocare, utilizzando tranquillamente una finestra del nostro comune browser, con un videogame.
QuickTimeVRIl secondo plug-in che prendiamo in esame è il visualizzatore di video digitali nel formato Quicktime della Apple. I file Quicktime possono contenere animazioni e clip video con audio incorporato. Anche in questo caso di tratta di un formato nato su piattaforma Macintosh portato successivamente in ambiente Windows. Si tratta del formato video digitale più diffuso su Internet. A partire dalla versione due, Quicktime include una tecnologia che permette di simulare l'esplorazione interattiva di uno spazio tridimensionale (da cui il suffisso VR, Virtual Reality). In realtà non si tratta di un vero e proprio sistema di realtà virtuale. La scena infatti è costituita da una immagine panoramica che l'utente, usando il mouse, può scorrere, come se stesse seduto su una sedia girevole. In tal modo si ha l'impressione di trovarsi nel mezzo di un ambiente, e di guardarsi intorno. Inoltre è possibile anche applicare un effetto di zoom, che rende l'illusione di un movimento in avanti, anche se ovviamente determina un degrado nella qualità dell'immagine. Un ambiente QuickTimeVR può contenere a sua volta anche dei link attivi, che possono rinviare ad altri ambienti o in generale ad altre pagine Web. Nella figura 68 potete vedere il panorama in QTVR del grande parco di divertimenti Epcot della Disney. Il sito della Disney, il cui indirizzo è http://www.disney.com è uno dei più ricchi in fatto di applicazioni multimediali.
Per realizzare questo tipo di immagini bisogna prima scattare una serie di foto lungo l'arco di visuale che si vuole riprodurre, curando di sovrapporre ogni inquadratura di circa il 50%. Le immagini vanno poi digitalizzate (oppure vanno riprese con camere digitali), e date in pasto al sistema autore QTVR, che le fonde in un continuum unico057. Attualmente Quicktime è giunto alla sua terza versione, scaricabile dal sito Web http://www.quicktime.apple.com. È disponibile in versione Macintosh, Windows 3.x, e Windows 95/98/NT. Tutte le versioni possono essere usate sia con Netscape che con Explorer. Ricordate che i panorami virtuali e i video Quicktime, come del resto ogni tipo di formato video digitale, producono dei file di dimensioni ragguardevoli anche se durano pochi secondi (dell'ordine delle centinaia di KByte, come minimo). Dunque prima di scaricarne uno con una semplice connessione via modem, preparatevi a lunghe attese. E i risultati non sempre valgono la pena... e la spesa! Adobe Acrobat ReaderAcrobat è un sistema sviluppato dalla Adobe, la maggiore azienda nel settore del desktop publishing, che permette di distribuire documenti elettronici impaginati e formattati. Si basa su un particolare formato di file, il Portable Document Format - simile al linguaggio PostScript usato dalle stampanti professionali. A differenza di altri formati, un documento PDF mantiene inalterata la sua impostazione grafica originale in ogni condizione di visualizzazione. Per visualizzare un file PDF è necessario utilizzare un apposito programma di lettura, Acrobat Reader, disponibile per molte piattaforme (Macintosh, Windows, e vari Unix). Mentre il sistema di creazione dei file è un software commerciale, Acrobat Reader può essere distribuito gratuitamente: la Adobe lo mette a disposizione all'indirizzo http://www.adobe.com/acrobat. La versione 3 del programma è in grado di funzionare anche come plug-in per Netscape ed Explorer. In questo modo i file PDF possono essere distribuiti su Internet. L'installazione è completamente automatizzata, e rileva automaticamente la presenza del browser Web (o di entrambi, se presenti sul disco), collocando i moduli plug-in nelle apposite directory. Una volta installato, Acrobat Reader viene avviato ogni volta che da una pagina Web si attiva un link che punta ad un file PDF. Normalmente il plug-in Acrobat funziona in modalità pieno schermo. Un documento PDF può anche essere inserito all'interno di una pagina Web, ma in questo caso i comandi di navigazione sono visibili solo con Microsoft Explorer. Nella figura 69 potete vedere una edizione elettronica dell'Amleto di Shakespeare all'interno di Netscape. La finestra del browser viene arricchita da una serie di pulsanti che permettono di navigare nel documento, e di modificarne le condizioni di visualizzazione e di ingrandimento. La parte sinistra della finestra può contenere un indice attivo dei contenuti o un elenco delle pagine. È inoltre possibile selezionare e copiare testo e grafica.
I file PDF sono in grado di includere informazioni multimediali, come immagini, suoni, animazioni e anche filmati. Nelle ultime versioni è inoltre possibile inserire link ipertestuali che collegano elementi interni al documento, o che rinviano ad altre pagine o risorse su Web. La dimensione di un documento PDF, a parità di contenuto, è molto superiore a quella di una semplice pagina HTML. Per ottimizzare l'accesso ai file PDF su Internet, alcuni server HTTP possono inviare solo le pagine richieste esplicitamente dall'utente. In caso contrario, prima di visualizzare il documento, il plug-in deve attendere che l'intero file venga trasferito. JavaL'introduzione di Java rappresenta probabilmente la più importante innovazione nell'universo della telematica in generale, e di Internet in particolare, dopo la creazione di World Wide Web. Java, che deve il suo nome a una varietà di caffè tropicale, è un linguaggio di programmazione. La sua origine è molto singolare: questo linguaggio, sviluppato dalla Sun Microsystem, una delle maggiori aziende informatiche del mondo058, è stato ideato per essere incorporato nei microchip che governano gli elettrodomestici. Per molti anni è rimasto un semplice prototipo, finché intorno al 1995 la Sun ha deciso di farlo evolvere, per proporlo come linguaggio di programmazione per Internet. Le caratteristiche che fanno di Java uno strumento rivoluzionario sono essenzialmente due: in primo luogo, grazie alla sua umile origine, è un linguaggio di programmazione intrinsecamente multipiattaforma. Un programma scritto in Java può essere eseguito indifferentemente su ogni sistema operativo e su ogni piattaforma senza subire modifiche. In secondo luogo Java è progettato appositamente per lo sviluppo di applicazioni distribuite. Questo significa che un'applicazione Java può essere costituita da più moduli, residenti su diversi computer, in grado di interoperare attraverso una rete telematica. A queste due caratteristiche fondamentali se ne aggiunge una terza che rende l'integrazione di Java con Internet ancora più profonda: un programma Java può essere inserito direttamente all'interno di una pagina Web. Queste versioni Web dei programmi Java si chiamano applet, e vengono incluse nei documenti Web attraverso uno speciale marcatore del linguaggio HTML: <applet>. Ogni volta che il documento ospite viene richiesto da un browser, l'applet viene inviato dal server insieme a tutti gli altri file multimediali: se il browser è in grado di interpretare il linguaggio, il programma viene eseguito. In questo modo le pagine Web possono animarsi, integrare suoni in tempo reale, visualizzare video ed animazioni, presentare grafici dinamici, trasformarsi virtualmente in ogni tipo di applicazione interattiva. Nei paragrafi precedenti abbiamo visto come alcuni browser siano in grado di visualizzare dei file con animazioni o con brani video. Netscape, attraverso la tecnologia dei plug-in, può ad esempio interpretare file Acrobat, disegni in formato Corel, video Quicktime e MPEG: ma i plug-in sono tutto sommato delle normali applicazioni che vanno prelevate (magari direttamente da Internet) e installate appositamente. Solo allora possono esser utilizzate. E deve essere l'utente a preoccuparsi di fare queste operazioni, con le relative difficoltà. Infine, i plug-in sono programmi compilati per un determinato sistema operativo (e per un determinato browser!), e non funzionano sulle altre piattaforme: un plug-in per Windows non può essere installato su un computer Mac. Con Java questi limiti vengono completamente superati. Infatti i programmi viaggiano attraverso la rete insieme ai contenuti. Se ad esempio qualcuno sviluppa un nuovo formato di codifica digitale per le immagini, e intende utilizzarlo per distribuire file grafici su World Wide Web, può scrivere un interprete per quel formato in Java, e distribuirlo insieme ai file stessi. In questo modo ogni browser dotato di interprete Java sarà in grado di mostrare i file nel nuovo formato. Inoltre lo stesso codice funzionerebbe nello stesso modo su ogni piattaforma per la quale esistesse un browser dotato di interprete Java. Attraverso l'uso di Java, il potere di 'inventare' nuove funzionalità e nuovi modi di usare Internet passa nelle mani di una comunità vastissima di programmatori, che per di più possono sfruttare l'immenso vantaggio rappresentato dalla condivisione in rete di idee, di soluzioni tecniche, di moduli di programma. Le potenzialità di questa tecnologia hanno naturalmente destato subito una grande attenzione nelle varie aziende che producono browser per Web. Anche in questo caso la più dinamica è stata Netscape, che ha integrato un interprete Java sin dalla versione 2 del suo browser. Attualmente il Netscape supporta Java su tutte le piattaforme. Microsoft si è allineata molto presto, integrando Java a partire dalla versione 3 di Explorer - malgrado il gigante di Redmond abbia sviluppato una tecnologia in parte omologa, ma proprietaria, battezzata ActiveX. Nel giro di pochi mesi World Wide Web si è così popolata di applet. La maggior parte delle applicazioni Java presenti sulla rete sono utilizzate per realizzare animazioni ed effetti grafici; non mancano però applicazioni didattiche e anche commerciali. Se desiderate sperimentare sistematicamente i risultati di tanto fiorire, potete partire da uno dei molti siti Web che catalogano le applicazioni Java disponibili su Internet: il più noto e completo è Gamelan, all'indirizzo http://www.gamelan.com. In italiano invece vi consigliamo Java Italian site all'indirizzo http://jis.rmnet.it/. Moltissimi degli applet elencati in queste pagine sono di pubblico dominio, e possono essere prelevati, modificati ed inclusi all'interno delle proprie pagine Web. Nella figura 70 vediamo un esempio di applet Java eseguito in una finestra di Netscape Navigator; si tratta di un programma che simula il funzionamento di una 'macchina di Turing' (lo trovate alla URL http://www.student.nada.kth.se/cgi-bin/d95-aeh/get/umeng)059.
Un aspetto particolare legato alla tecnologia Java è quello della sicurezza informatica. Per evitare problemi agli utenti, l'interprete del linguaggio è dotato di potenti sistemi di sicurezza, che impediscono ad un programma di interagire direttamente con il sistema: infatti un programma Java viene eseguito da una 'macchina virtuale' (Java Virtual Machine), che è isolata dal sottostante hardware. In questo modo, dovrebbe essere limitata la possibilità di scrivere e diffondere attraverso la rete pericolosi virus informatici. In effetti, queste protezioni rendono estremamente difficile la progettazione di applets veramente dannosi - in particolare per quanto riguarda azioni come la distruzione dei dati sul nostro disco rigido o simili. Tuttavia, come ci si poteva aspettare, qualcuno ha finito per interpretare questa difficoltà come una vera e propria sfida, e la corsa alla programmazione di quelli che sono stati efficacemente denominati 'hostile applets' è iniziata. Né è mancato qualche risultato: si è visto che, nonostante le precauzioni, un applet Java può riuscire a 'succhiare' risorse dal sistema fino a provocarne il blocco. Il danno effettivo non è di norma troppo rilevante (al limite, basta spegnere e riaccendere il computer), ma naturalmente non va neanche sottovalutato, soprattutto nel caso di un accesso a Internet attraverso grossi sistemi, il cui blocco può coinvolgere altri utenti. Il campo di applicazione di Java naturalmente non si limita alla sua integrazione con Internet. Infatti Java è un linguaggio di programmazione molto evoluto, che può essere utilizzato anche per realizzare applicazioni offline. Dal punto di vista informatico, Java rientra nella categoria dei linguaggi orientati agli oggetti (object oriented): in questo tipo di programmazione, i programmi sono visti come società di oggetti, ognuno dotato di capacità particolari, che possono comunicare tra loro e scambiarsi dati; quando un oggetto ha bisogno di una certa operazione che non è capace di effettuare direttamente (ad esempio scrivere i risultati di un calcolo su un file), non deve fare altro che chiedere i servizi di un altro oggetto. Questo paradigma facilita molto l'attività di programmazione sia perché, in fondo, assomiglia abbastanza al nostro modo di rappresentare il mondo, sia perché permette di riutilizzare gli stessi oggetti in molte applicazioni diverse. Per poter essere eseguito - sia all'interno di una pagina Web che come applicazione autonoma - un programma scritto in Java deve prima essere sottoposto ad un processo di 'precompilazione'. Il kit di sviluppo Java (Java Development Kit) viene distribuito gratuitamente dalla Sun. Per chi è interessato, il sito di riferimento è all'indirizzo Web http://www.javasoft.com. Sono disponibili sul mercato anche diversi ambienti di programmazione integrati commerciali, realizzati dalle maggiori aziende informatiche nel settore dei linguaggi di programmazione. Naturalmente questi sistemi commerciali aggiungono alle funzionalità di base strumenti visuali di programmazione e di controllo (debugging) del codice, e sono rivolti ai programmatori professionisti. La rete come sistema operativo: un nuovo paradigmaLe potenzialità innovative di Java vanno ben oltre l'introduzione di semplici applicazioni dimostrative all'interno delle pagine Web. Un applet infatti è un programma vero e proprio, che può svolgere qualsiasi funzione. Un browser dotato di un interprete Java può dunque eseguire direttamente al suo interno ogni tipo di applicazione, anche le più complesse: database, wordprocessor, foglio di calcolo, programma di grafica, gioco multiutente. Un esempio molto interessante delle possibilità messe a disposizione da questa tecnologia viene dalla nota software house statunitense Corel, che ha realizzato una versione Java della sua suite di programmi da ufficio: Corel Office Java. Chi è interessato a sperimentare questa applicazione, può trovarla presso il sito Web della Corel, all'indirizzo http://officeforjava.corel.com. Il pacchetto è composto da versioni semplificate di famosi programmi di produttività come il wordprocessor Wordperfect e il foglio di calcolo Quattro Pro, a cui è stata aggiunta una piccola agenda elettronica. Tutte le applicazioni sono state sviluppate interamente in Java, e dunque possono funzionare anche in qualità di applet, all'interno della finestra di un browser. Nella figura successiva, ad esempio possiamo vedere Netscape 4 che ospita al suo interno una sessione di scrittura in Wordperfect Java.
Corel Office Java è un programma sperimentale e, nella versione disponibile nel momento in cui scriviamo, ancora molto instabile e sicuramente poco efficiente; ma si tratta senza dubbio della più sofisticata applicazione di Java realizzata finora. Gli sviluppi di questo genere di applicazione sono molto promettenti. Non stiamo pensando qui al settore di mercato consumer (ovvero 'casalingo'), almeno a breve termine: l'intero programma è di dimensioni notevoli, e sarebbe impensabile utilizzarlo on-line tramite una normale sessione Internet su linea telefonica. Ben diverso il discorso per il settore di mercato aziendale, specialmente nell'ottica della diffusione di tecnologie Intranet, e del Network Computing, su cui torneremo in seguito. Ma se gettiamo lo sguardo oltre l'immediato futuro, applicazioni come Corel Office Java rappresentano i primi sentori di quello che potrebbe diventare l'informatica sia professionale che domestica. Al posto di programmi sempre più ipertrofici ed esosi, il nostro computer ospiterà un sistema di navigazione, del quale faranno parte più moduli software scritti in Java, capaci di essere usati su più piattaforme e di collaborare fra loro. Alcuni di questi moduli (ad esempio quelli per la visualizzazione delle pagine HTML, o dei mondi VRML) saranno più diffusi e utilizzati da quasi tutti gli utenti; altri (ad esempio quelli per la ricezione selettiva di 'canali' di notizie, di stazioni di Web radio e Web TV, o per la videotelefonia) da settori di pubblico larghi ma non onnicomprensivi; altri ancora (ad esempio moduli specifici per effettuare operazioni borsistiche o bancarie, per l'accesso a database, per la videoscrittura) da gruppi di utenti assai più ristretti. Avremo anche moduli di programma nati per soddisfare le esigenze di una singola azienda o di un gruppo di aziende - nati cioè per essere utilizzati in una rete Intranet o Extranet. Come hanno intuito, anche se in maniera parzialmente diversa, sia Microsoft sia Netscape, questo ambiente di navigazione, capace di eseguire applicazioni Java (Java enabled) e di collegarsi alla rete, finirà per rappresentare il vero sistema operativo del computer che usiamo. Per questo Microsoft, che con Windows detiene la larghissima maggioranza dei sistemi operativi installati, è impegnata nel tentativo di 'assimilare' i moduli di navigazione e la capacità di eseguire al meglio le applicazioni Java all'interno del suo sistema operativo. L'active desktop inserito in Explorer 4 (ce ne siamo già occupati) rappresenta sostanzialmente una mossa in questa direzione. E per questo Netscape e i molti altri concorrenti di Microsoft sono impegnati nel tentativo di costruire attraverso Java moduli software comuni utilizzabili su macchine diverse e capaci di svolgere molte delle funzioni tradizionalmente attribuite ai sistemi operativi. I due tentativi sono in conflitto? In linea di principio no, ma di fatto sì. Per Microsoft, Java è una necessità, ma anche una minaccia: se i programmi Java si possono usare allo stesso modo su macchine basate su sistemi operativi completamente diversi, viene meno il maggiore incentivo all'uso di Windows - il fatto che si tratta del sistema operativo standard, per il quale la maggior parte dei programmi sono concepiti e sviluppati. Questo spiega perché Microsoft cerchi di costruire un sistema operativo che includa una versione 'personalizzata' e ottimizzata di Java, integrata il più strettamente possibile con la tecnologia Active X. Se Microsoft può dire che i programmi Java funzionano meglio (più velocemente, con funzionalità più estese e capacità più avanzate) su Windows che altrove, ha vinto la sua battaglia. Ma se i programmi Java funzionassero meglio su Windows che altrove, Java avrebbe perso una delle sue battaglie - probabilmente la principale. La 'guerra dei browser' tra Microsoft e Netscape è così diventata solo uno dei fronti di uno scontro di assai più vasta portata. È in questa chiave, ad esempio, che va letto l'annuncio da parte di Sun Microsystems, Netscape Corporation, IBM, Apple, Oracle e alcune altre case - tra le quali, significativamente, non è compresa la Microsoft - del programma 100% pure Java. Si tratta in sostanza di un 'bollino di compatibilità' assegnato alle applicazioni che superano un test automatico destinato a controllare l'uso 'corretto' di Java, e l'utilizzazione solo di componenti e istruzioni standard. Molte applicazioni elaborate dalla Microsoft o attraverso l'uso di librerie Microsoft (ad esempio quelle di ActiveX, incluse in tool di sviluppo quali Visual Java ++), che integrano Java con componenti software nate e sviluppate per Windows, si troverebbero di fatto a non soddisfare le richieste di 100% pure Java. HotJavaInsieme al linguaggio la Sun ha sviluppato un browser Web interamente scritto in Java: HotJava. Nato come prototipo usato dalla Sun per elaborare Java e per mostrarne le potenzialità, HotJava è stato il primo a prevedere un pieno supporto per il linguaggio. Nel momento in cui scriviamo è disponibile la versione 1.1.2. HotJava è distribuito in due versioni: una per la piattaforma Unix della Sun, il Solaris, ed un'altra per Windows 95 e Windows NT. Sono entrambe liberamente prelevabili all'indirizzo http://www.javasoft.com (dove si trovano anche i kit di sviluppo e la documentazione completa relativa al linguaggio). Sebbene non offra per ora i requisiti necessari a proporsi come browser per un uso a regime, HotJava presenta delle caratteristiche tecnologiche veramente innovative. Infatti a differenza di Netscape ed Explorer, che interpretano di volta in volta il codice Java ricevuto dalla rete, e poi lo cancellano, HotJava si evolve in modo dinamico.
Questa flessibilità è dovuta al fatto che il browser è stato implementato a sua volta in Java, e dunque può integrare i nuovi moduli di programma in modo permanente. Se un programmatore sviluppa una applicazione di rete che si basa su un protocollo completamente nuovo, HotJava può imparare a manipolare il nuovo protocollo automodificandosi, mentre gli altri browser (visto il modo in cui è implementato il supporto Java, per il momento) debbono essere ricompilati dal produttore. Non è chiaro se la Sun intenda procedere nello sviluppo di questo software, o se preferisca sfruttare i proventi che gli arrivano per le royalties pagate da terze parti. Probabilmente il prodotto sarà inserito come componente dell'architettura software nei network computer della Sun. Comunque vada, la struttura aperta di HotJava rappresenta il migliore modello tecnologico per i browser del futuro. A riprova di questo, la stessa Netscape ha annunciato una prossima versione del proprio browser interamente realizzata in Java. JavascriptChiudiamo il paragrafo dedicato al linguaggio Java con un cenno su Javascript. Si tratta di un mini linguaggio di scripting, dotato di una sintassi simile a quella di Java, ma molto più semplice. Uno script è un piccolo programma il cui codice viene inserito all'interno di una pagina HTML, mediante il tag <SCRIPT>, ed interpretato dal browser. La funzione di queste piccole applicazioni consiste nell'introdurre estensioni all'interfaccia di una pagina Web o del browser, come pulsanti che attivano procedure, controllo del formato di dati in un campo di immissione o piccoli effetti di animazione (ad esempio del testo che scorre nella barra di stato del browser). In questo modo è possibile aumentare le potenzialità interattive di una pagina Web senza ricorrere allo sviluppo di plug-in o di applet Java, attività che richiedono una competenza da programmatore. Javascript è stato introdotto da Netscape nella versione due del Navigator; a partire dalla versione tre, anche Microsoft Explorer è in grado di interpretare script codificati con questo mini linguaggio. Recentemente la European Computer Manifacturers Association (ECMA) ha avviato un progetto per realizzare una versione standard di questo linguaggio denominata ECMA Script. ActiveXActiveX è una tecnologia sviluppata dalla Microsoft per introdurre su Web pagine dinamiche e applicazioni interattive. Può essere considerata come la risposta del gigante dell'informatica mondiale sia a Java che ai plug-in. Infatti ActiveX permette di incorporare all'interno delle pagine Web oggetti software attivi e di controllarne il comportamento e l'interazione con il browser. Naturalmente il browser deve avere il supporto all'architettura ActiveX per interpretare ed eseguire gli oggetti, denominati tecnicamente 'controlli' (controls). Per il momento l'unico browser dotato di queste capacità in modo nativo è Microsoft Explorer. Tuttavia anche Netscape Navigator può visualizzare pagine con controlli ActiveX, grazie ad un apposito plug-in, ScriptActive, sviluppato dalla Ncompass. ScriptActive è un software distribuito con la formula shareware su Web, all'indirizzo http://www.ncompasslabs.com. Un controllo può essere un programma con una sua interfaccia utente, un interprete di un formato di documenti proprietario, un visualizzatore di file multimediali, o un qualsiasi modulo software. Quando il browser riceve una pagina Web che integra dei controlli, li esegue automaticamente, ereditandone i comandi e le funzioni. La figura seguente mostra Explorer che ospita al suo interno un programma per giocare a scacchi sulla rete, sviluppato con questa tecnologia.
Gli oggetti ActiveX, inoltre, possono essere eseguiti da ogni applicazione dotata di supporto ActiveX, tra cui si annoverano la maggior parte dei più evoluti programmi per Windows 95. Chi è abituato ad usare questo sistema operativo avrà notato una stretta somiglianza tra ActiveX e OLE (Object Linking and Embedding), la tecnologia che permette a due programmi Windows di comunicare tra loro e di scambiarsi dinamicamente dati e funzioni. In effetti ActiveX è una sorta di cugino giovane di OLE: si basa infatti sulla stessa architettura sottostante, la Component Object Model, ma presenta dei notevoli vantaggi in termini di efficienza e dimensione, in vista del suo uso su ambienti distribuiti. Si è già fatto cenno a Active desktop, l'interfaccia 'attiva' per il desktop di Windows inclusa in Explorer 4. In questo caso, i controlli Active X possono essere richiamati e utilizzati da un programma - quello per la gestione del desktop - che ha in più la caratteristica di coincidere in pratica con l'interfaccia di sistema: un'ulteriore riprova del ruolo centrale che la tecnologia Active X assume per lo sviluppo degli stessi sistemi operativi Microsoft. Oltre ai controlli, ActiveX provvede anche un linguaggio di scripting, VBscript. Come si può inferire dal nome, si tratta di un mini linguaggio di programmazione derivato dal noto Visual Basic della Microsoft. Il codice VBscript viene inserito direttamente all'interno delle pagine HTML, e viene interpretato dal browser. La sua funzione è omologa a quella di Javascript, che abbiamo già visto sopra. Un programma VBscript, inoltre, permette di controllare il comportamento degli oggetti software all'interno della pagina Web. Un software dotato di supporto ActiveX, infine, è in grado di visualizzare e modificare i documenti prodotti dalle applicazioni Office della Microsoft, ed in generale da tutti i programmi che rispondono alle specifiche OLE 2. L'uso di questa tecnologia permette dunque un altissimo livello di integrazione fra le risorse locali e le risorse di rete; e i nuovi programmi Microsoft, come quelli che compongono la suite Office 97, hanno fra le proprie innovazioni principali proprio la capacità di sfruttare appieno questa integrazione. Dal punto di vista dell'utente ActiveX presenta notevoli innovazioni rispetto ai plug-in. La più interessante è l'installazione automatica e la certificazione: quando Explorer riceve una pagina che usa un controllo non presente sul sistema appare una finestra di dialogo che mostra il certificato di garanzia del software e chiede all'utente il permesso di trasferire ed installare il modulo; se la risposta è affermativa il controllo viene scaricato e installato automaticamente. I certificati aiutano l'utente a gestire la sicurezza del suo sistema: infatti è possibile configurare Explorer, indicando da quali fonti accettare software e da quali imporre restrizioni, attraverso i comandi di configurazione della protezione. Più articolato è il rapporto tra l'architettura ActiveX e il linguaggio di programmazione Java. In questo caso, tecnicamente parlando, più che di diretta concorrenza si dovrebbe parlare di integrazione. In effetti un controllo in quanto tale può essere visto come l'omologo funzionale di un applet Java - sebbene sia diverso dal punto di vista informatico. Ma ActiveX non coincide con i controlli: anzi è in grado di integrare al suo interno sia controlli che applet Java e persino di farli interagire. Infatti il supporto Java di Explorer (la Java Virtual Machine) è parte di ActiveX. Questo naturalmente in teoria.
Di fatto i controlli si pongono inevitabilmente come sostituti degli applet, e rientrano nella strategia di sviluppo della Microsoft verso il mondo Internet. Il gigante di Redmond pensa di vincere questa battaglia contando sul fatto che la maggior parte degli sviluppatori e delle software house conoscono molto bene la tecnologia OLE, di cui ActiveX è una semplice evoluzione, e linguaggi di programmazione come C++ e Visual Basic, e sono poco propensi ad effettuare transizioni verso un nuovo linguaggio. Inoltre i controlli ActiveX, essendo compilati, sono decisamente più efficienti e veloci nell'esecuzione rispetto ai programmi Java. D'altra parte ActiveX rispetto a Java soffre di una evidente limitazione di portabilità. Infatti mentre il linguaggio sviluppato dalla Sun è nativamente multipiattaforma, per ora la tecnologia Microsoft lo è solo negli annunci. Nella pratica il legame con i sistemi operativi di casa, e in particolare con Windows 95/98 e NT4, è talmente stretto che difficilmente assisteremo ad una apertura reale verso il mondo Unix e Macintosh, e comunque non ci sono dubbi che il cuore dell'evoluzione di ActiveX rimarrà centrato su Windows ed eredi. Va infine notato che i controlli ActiveX presentano maggiori problemi di sicurezza dei loro omologhi in Java. Mentre infatti, come si è accennato, un programma Java viene eseguito su una 'macchina virtuale' simulata all'interno del sistema operativo, un controllo ActiveX interagisce direttamente con il sistema stesso. Questo significa che un eventuale virus in Java è molto più difficile da sviluppare - e molto più facile da controllare - di uno realizzato attraverso ActiveX; nel primo caso, infatti, la distinzione tra macchina virtuale e macchina reale agisce da camera di compensazione e ogni eventuale azione pericolosa (ad esempio cancellare un file di sistema, o modificare il file system), può essere impedita in maniera abbastanza efficace. Audio e video in tempo realeL'ultima innovazione tecnologica di cui ci occupiamo in questo capitolo riguarda la diffusione, attraverso World Wide Web, di contenuti multimediali in tempo reale. Come abbiamo visto, le pagine Web possono ospitare al loro interno molteplici forme di informazione multimediale: immagini, suoni, animazioni, grafica vettoriale, filmati. In condizioni normali, per visualizzare queste informazioni un client deve necessariamente attendere che la ricezione del file che le contiene sia terminata. Questo si dimostra un grosso limite alla diffusione di applicazioni multimediali su Internet. Infatti i formati di file multimediali, in linea generale, tendono ad essere molto esosi in fatto di spazio, e questo è particolarmente vero per i filmati. Conseguentemente, l'utente che non ha la fortuna di possedere un collegamento Internet ad alta velocità, è costretto ad attendere diverse decine di minuti per vedere pochi secondi di immagini in movimento, in una piccola finestra del suo schermo... magari per accorgersi che non ne valeva proprio la pena. Inoltre, queste tecniche di trasferimento impediscono la trasmissione e la ricezione di audio e video in tempo reale. Per ovviare a queste limitazioni è stata sviluppata una classe di tecnologie che viene collettivamente indicata con il termine di data streaming, flusso di dati; in particolare ci interessano qui le tecnologie di streaming audio e video. Si tratta di un sistema che permette di inviare filmati o suoni digitali sotto forma di un flusso continuo di dati, che un client è in grado di interpretare in tempo reale, man mano che arriva. In questo modo la riproduzione può iniziare immediatamente, mentre la ricezione della parte restante avviene simultaneamente, in background. Lo streaming, dunque, rende possibile applicazioni come la telefonia, la radiofonia e la televisione via Internet, senza richiedere alcuna infrastruttura straordinaria. Infatti, per conseguire una riproduzione fluida è sufficiente disporre di una banda passante minima e costante, in genere alla portata degli attuali modem (anche se non sempre questo si può dire dei grandi canali di connessione della rete, che soffrono di sempre maggiore congestione ed affollamento). Dal punto di vista qualitativo, la trasmissione via rete di informazioni sonore ha raggiunto ormai livelli simili, e in qualche caso superiori, a quella via etere. Diverso, naturalmente, il discorso per il video: per il momento, ci si deve accontentare di immagini racchiuse in piccole finestre, certo non spettacolari, accompagnate da un audio di scarsa qualità, spesso fuori sincrono. Si tenga conto, tuttavia, che si tratta di una tecnologia assai giovane, che potrà avere un notevole sviluppo nei prossimi anni. Per avvalersi dello streaming audio e video, ovviamente, è necessario far uso di software dedicati. Infatti i file utilizzati in queste applicazioni sono codificati in formati speciali, ottimizzati e compressi per aumentare l'efficienza e la stabilità del flusso di dati. Le architetture proposte in questo ambito sono diverse, e poiché si tratta di un settore in continua evoluzione, è assai difficile dire con certezza quale si affermerà come standard. Per quanto riguarda i client, l'aspetto che maggiormente ci interessa in questa sede, possiamo dire che la maggior parte vengono distribuiti nella duplice forma di programmi autonomi, e di plug-in. Nei prossimi paragrafi ci occuperemo in particolare dei sistemi di streaming unidirezionale - quelli, cioè, che permettono all'utente solo di ricevere -, che possono essere considerati una estensione di World Wide Web. Abbiamo dedicato invece un capitolo a parte alle applicazioni di telefonia e videotelefonia su Internet. RealPlayerNel settore dello streaming audio il protagonista indiscusso è RealPlayer (precedentemente noto come RealAudio), sviluppato dalla RealNetworks. Si tratta di un'applicazione che permette la ricezione in tempo reale di file sonori (e video, come vedremo poco più avanti) tramite Internet, rendendo possibile la creazione di vere e proprie stazioni radio digitali in rete. La qualità del suono digitale in formato RealPlayer è funzione della velocità di connessione: ottima se si dispone di una connessione veloce (come ISDN, o superiore), comunque buona anche con modem da 28.800 bps. Naturalmente la qualità effettiva della riproduzione dipende anche dalla scheda sonora installata sul computer e dai diffusori ad essa collegati, nonché dalla situazione del traffico di rete, che spesso impedisce di sfruttare appieno la velocità del modem. RealPlayer è disponibile gratuitamente su Web all'indirizzo http://www.real.com, per piattaforme Windows, Macintosh e Unix. Il programma, giunto alla versione 5, funziona sia come lettore autonomo, sia come plug-in per Netscape o controllo ActiveX per Internet Explorer. Il processo di installazione è molto semplice: individua in modo automatico i browser disponibili sul computer, e guida l'utente in tutti i passi necessari. Una volta eseguita l'installazione, è possibile accedere ai molti siti che trasmettono, in diretta o in differita, file sonori in formato RealPlayer. Normalmente l'accesso alle risorse sonore avviene mediante delle normali pagine Web, nelle quali sono stai inseriti dei link ipertestuali, o dei comandi per l'invio automatico di stream audio. Ad esempio, nella figura 75 potete vedere una pagina Web a cura della RAI, che offre la registrazione di una nota trasmissione della testata radiofonica TGR. Il riproduttore viene avviato automaticamente appena inizia il trasferimento del file. Come potete vedere, l'interfaccia del programma è molto semplice. La parte centrale della finestra mostra titolo, autore e copyright delle informazioni audio inviate. È possibile mettere in pausa e riattivare la riproduzione agendo sul pulsante con la freccia e le due barre, o bloccarla definitivamente mediante il pulsante con il quadratino. Il controllo del volume si effettua con il cursore a destra. Si noti che durante la riproduzione è possibile continuare la navigazione sulle pagine Web. In alternativa è possibile avviare il programma in modalità autonoma, e poi indicare la URL di un file RealPlayer (la cui estensione tipica è 'RAM'), mediante il menu 'Sites'.
I siti che offrono servizi RealPlayer su Internet sono molti, e aumentano costantemente. In alcuni casi si tratta di vere e proprie radio che trasmettono in tempo reale; altrimenti si trovano registrazioni in differita. Per quanto riguarda i contenuti, si va dalla musica alle trasmissioni politiche ed informative, fino ad interviste con i protagonisti della rivoluzione digitale. Per avere un elenco di queste risorse, consigliamo di vistare la Home page della Progressive Network, e l'elenco di siti Yahoo!, nella sezione dedicata a RealPlayer. Ma, se proprio volete iniziare subito, visitate il sito della RAI (http://www.rai.it), dove potrete trovare le registrazioni differite di molte trasmissioni informative e di intrattenimento. O il sito della Camera dei Deputati (http://www.camera.it), che trasmette in diretta in RealPlayer le sedute della Camera dei Deputati. Se conoscete l'inglese, invece da non perdere la radio Internet legata alla rivista HotWired, il cui indirizzo è http://www.talk.com. Buon ascolto! Verso la Web TVTra le tecnologie innovative che stanno trasformando il volto di World Wide Web, lo streaming video probabilmente è quella che suscita i maggiori entusiasmi. La ragione di tanto interesse va ricercata nel fatto che essa rende possibile, seppure in forma ancora rudimentale, la diffusione su World Wide Web di materiali audiovisivi in tempo reale. Per indicare questa forma di televisione via Internet è stato anche coniato un termine apposito: webcasting - contrazione di 'Web' e 'broadcasting', che significa teletrasmettere. In realtà, le attuali potenzialità delle tecnologie di streaming video sulla rete sono assai distanti dagli standard qualitativi richiesti da una vera e propria diffusione audiovisiva di livello televisivo. Per il momento, occorre accontentarsi di video racchiusi in piccole finestre, accompagnati da un audio caratterizzato da un notevole tasso di distorsione e non sempre sincronizzato con le immagini. Inoltre, sebbene in teoria la velocità di scorrimento delle immagini non sia lontana dalla soglia della percezione naturalistica, raramente la riproduzione presenta una sufficiente fluidità060. Nella maggior parte dei casi le sequenze video diffuse su Internet sono frammentate, e non di rado si interrompono per diversi secondi. Per conseguire dei risultati ragionevolmente buoni è necessario disporre almeno di un collegamento ISDN - anche se la causa maggiore di questi difetti va individuata nella inadeguatezza delle grandi infrastrutture della rete, piuttosto che nella velocità disponibile sul cosiddetto 'ultimo tratto', quello che arriva al nostro computer di casa. In conseguenza della novità e del notevole interesse destato da questa tecnologia, il panorama dei software per lo streaming video è più articolato di quello per l'audio, dove RealPlayer è ormai uno standard di fatto. Tra le varie architetture che competono in questo settore ne abbiamo scelte tre che sono al momento probabilmente le più diffuse: VDOLive, VivoActive, e RealVideo. Le relative prestazioni dal punto di vista dell'utente non differiscono in modo sostanziale, mentre divergono le tecnologie di implementazione dal lato server061. VDOLive è stato sviluppato dalla VDOnet. Il riproduttore di streaming video in formato VDO, disponibile solo per le varie piattaforme Windows, viene distribuito gratuitamente su Web, all'indirizzo è http://www.vdo.net, ed è inoltre incluso nella distribuzione completa di Internet Explorer 4. La procedura di installazione è completamente automatizzata, e non richiede alcun intervento da parte dell'utente. VDOLive Player funziona sia come applicazione autonoma che come plug-in o controllo ActiveX. Questo rende possibile l'inserimento di una finestra video direttamente all'interno di una pagina Web. I video che non sono annidati dentro una pagina Web possono essere visualizzati sia all'interno della finestra principale del browser, sia nella finestra del programma in modalità autonoma. Naturalmente, usato con browser diversi da Netscape Navigator e Microsoft Explorer, VDOLive Player si comporta come una normale applicazione di supporto esterna. Il funzionamento del programma integrato con i browser è molto semplice. La riproduzione viene avviata automaticamente appena si scarica una pagina che include un oggetto VDO. Premendo il pulsante destro del mouse sulla finestra video compare un menu contestuale che permette di interrompere l'azione. In modalità autonoma l'interfaccia di VDOLive Player è più articolata. Sotto la finestra video vera e propria sono collocati i pulsanti di controllo 'play' e 'stop'; seguono gli indicatori dello stato della recezione e la barra di regolazione del volume audio. I tre pulsanti, infine, permettono rispettivamente di: terminare l'esecuzione; avviare il browser Web e collegarlo al sito VDOnet; configurare il programma. In generale quest'ultima operazione non è necessaria, poiché i parametri originali sono adeguati per tutti gli utenti. In ogni caso il programma è distribuito con un help in linea di discreta fattura.
Esistono molti siti Web che usano la tecnologia VDO per trasmettere immagini, sia in diretta che in differita. Un elenco aggiornato viene curato dalla stessa VDOnet, sul sito Web VDOGuide (http://www.vdoguide.com), dove potrete trovare anche informazioni, manuali e schede tecniche. Tra le curiosità, segnaliamo ad esempio il sito di Up to the minute, realizzato dalla CBS (http://www.uttm.com/), una delle maggiori televisioni statunitensi, che invia periodicamente servizi e notiziari. In virtù di un accordo con la NASA, vengono trasmesse in formato VDO (http://www.spacezone.com/sched.htm) immagini in diretta di tutte le missioni Shuttle, incluse immagini inviate direttamente dalla navicella in orbita e interviste con gli astronauti. Se non sono in corso voli, è comunque possibile vedere i materiali registrati dell'ultima missione. La seconda applicazione di streaming video di cui vi parliamo è realizzata dalla Vivo Software, e si chiama VivoActive. Il riproduttore, arrivato alla versione 3 e disponibile su Web all'indirizzo http://www.vivo.com, è distribuito in due versioni: come plug-in Netscape o come controllo ActiveX, entrambe funzionanti solo su piattaforma Windows. La versione ActiveX si giova della tecnologia di autoinstallazione dell'architettura Microsoft: quando Explorer riceve per la prima volta una pagina Web contenente uno stream video in formato Vivo, automaticamente scarica il modulo di riproduzione e lo installa sul sistema.
I file in formato VivoActive possono essere ottimizzati alla fonte per diverse velocità di ricezione (ad esempio: 14.4 Kbps, 28.8 Kbps, ISDN). Normalmente i siti Web che offrono video in questo formato mettono a disposizione diverse versioni dello stesso video: al fine di ottenere i migliori risultati l'utente deve avere cura di scegliere la versione ottimizzata per il suo livello di collegamento. La riproduzione di un video inizia automaticamente appena inizia la ricezione dei primi frame. Se questo non avviene, occorre premere il pulsante 'play' (la piccola freccia), che è collocato nell'angolo in basso a sinistra della finestra video. Durante la riproduzione la freccia assume un colore verde; se il programma è invece in attesa di informazioni dalla rete, la freccia presenta una intermittenza rossa e gialla e punta verso il basso. Per fermare il video si deve premere il pulsane 'pause' (le due barre verticali). È anche disponibile un menu contestuale di controllo, che si attiva premendo il pulsante destro del mouse quando il cursore è sulla finestra. Anche i siti Web che usano la tecnologia VivoActive sono molto diffusi. Un elenco aggiornato è curato dalla stessa Vivo software nella pagina Gallery (http://www.vivo.com/gallery/gallery.htm). Per avere un quadro delle possibilità di sviluppo futuro della tecnologia Vivo, va comunque tenuto presente che nel marzo 1998 la RealNetwork ha acquistato la Vivo Software: in sostanza, VivoActive è stato 'mangiato' da uno dei suoi principali concorrenti, RealVideo. È dunque probabile che nel prossimo futuro il formato Vivo tenda a sparire come formato autonomo, e che alcuni aspetti della sua tecnologia confluiscano in quella adottata da RealVideo. RealPlayer, sviluppato dalla RealNetworks, è il più 'giovane' tra i sistemi di streaming video per Internet, ma grazie anche alla posizione di leader di fatto della RealNetwork nel settore dello streaming audio, ha conquistato consensi in maniera rapidissima. Rispetto alle due applicazioni precedenti, presenta dei sensibili miglioramenti nelle prestazioni, soprattutto dal lato audio. Questo progresso è reso possibile dal fatto che il sistema RealPlayer integra la tecnologia RealAudio, di cui è una diretta evoluzione: conseguentemente è in grado di riprodurre file sonori a 16 bit, in qualità stereo. Il programma di visualizzazione è disponibile in due versioni: una versione standard, distribuita gratuitamente all'indirizzo http://www.real.com e inserita nella distribuzione completa di Internet Explorer 4 (al momento, tuttavia, la versione distribuita con Explorer non è la più recente, rappresentata da RealPlayer 5), e una avanzata (Plus), che invece viene venduta. Entrambe sono disponibili, al momento, solo su piattaforma Windows. RealPlayer, al pari di VDO, può operare sia come applicazione autonoma sia come plug-in e controllo ActiveX. Il funzionamento del programma nelle varie modalità è sostanzialmente identico. Da rilevare che la dimensione della finestra video può essere ingrandita mediante il pulsante 'Zoom' (quello con la piccola lente in basso). Il pulsante 'Mute' (appena sopra al precedente) permette di eliminare l'audio. Mediante il comando 'Preferences' del menu 'View' è possibile invece configurare il programma per ottimizzare le prestazioni, in base alle risorse hardware e di connettività di cui si dispone. In generale i parametri standard sono adeguati nella maggior parte dei casi.
RealPlayer è un'architettura molto recente, ma i siti che la hanno adottata sono cresciuti moltissimo nell'ultimo anno. Tra questi spicca Timecast (http://www.timecast.com), ottimo punto di riferimento per lo streaming audio e video. Timecast ha affidato al noto regista Spike Lee la produzione di tre piccoli clip originali, da distribuire su Internet. Si tratta del primo esempio di video d'autore realizzati esplicitamente per la diffusione via Internet. Nella figura 78 potete vedere uno di questi clip, una intervista/performance dell'attore John Turturro. Fra le altre applicazioni interessanti di RealVideo, merita una menzione quella avviata in Italia dal Progetto Nettuno, un consorzio nato per la realizzazione di corsi universitari a distanza. Il progetto Nettuno ha messo a disposizione su Internet in streaming video un intero corso di lezioni, per un totale di decine di ore di materiale video; la URL è http://projects.elis.org/mpp/video-gallery.htm. Ricordiamo infine che anche la Microsoft ha sviluppato un suo sistema di streaming audiovideo, basato sulla sua nuova piattaforma multimediale ActiveMovie. Il sistema si chiama Netshow, ed il software di riproduzione, Netshow On Demand Player, viene distribuito gratuitamente, come controllo ActiveX, sul sito della stessa Microsoft, all'indirizzo http://www.microsoft.com/netshow. Questa tecnologia, peraltro, fa parte della dotazione standard della nuova versione di Explorer. Ma la distribuzione assieme ad Explorer dei visualizzatori per RealVideo e VDOPlayer lascia pensare che la Microsoft non sia al momento impegnata in una vera e propria 'guerra' nel settore dello streaming. Insomma, in attesa che si realizzino le grandi promesse, soprattutto economiche, di un'unica grande autostrada dell'informazione digitale, che permetterà di ricevere video on-demand, di fare home-shopping, di imparare con il distance-learning, alcuni scampoli di futuro sono già a vostra disposizione. Non resta che augurarvi, anche in questo caso... buona visione. L'ipertesto globale: World Wide Web |