Danilo Poccia - Tecnologia et al.

mercoledì mag 21, 2008

Solaris, OpenSolaris e Project Indiana

...ecco un video tratto da una mia presentazione presso l'Università di Napoli "Parthenope":

Il video è stato girato prima della disponibilità della distribuzione binaria OpenSolaris 2008.05.

giovedì apr 24, 2008

Cloud Computing con Project Caroline

Project Caroline è un progetto di ricerca dei Sun Labs che intende fornire una piattaforma scalabile in modo orizzontale per lo sviluppo ed il deployment di servizi Internet. Tali caratteristiche sono spesso riassunte nel termine Cloud Computing. La piattaforma fornisce ai servizi le necessarie risorse computazionali, di storage e di rete. I linguaggi ad oggi supportati da Project Caroline sono Java, Perl, Python. Sulla piattaforma Java è possibile eseguire anche i linguaggi Ruby e PHP.

 

Queste sono alcune caratteristiche tecniche della piattaforma:

  • ZFS per la creazione rapida di file system
  • i file system soono accedibili via NFS e WebDAV
  • le reti (VLAN) sono create su richiesta dell'applicazione, così come sono allocati gli IP Address (interni o pubblici)
  • varie forme di connettività sono implementabili (load balancer, NAT, VPN)
  • anche il servizio di DNS è gestito dalla piattaforma in modo dinamico

 

Di seguito un video che descrive in modo più approfondito il progetto. Il video dura circa 2h, di cui:

  • i primi 15' sono di introduzione ai Sun Labs (nell'ambito dell'iniziativa Open House), poi inizia la descrizione di Project Caroline
  • al 42' vi è una dimostrazione di una applicazione che si integra con Facebook 
  • al 49' inizia la parte più tecnica della presentazione

venerdì apr 18, 2008

I comandi più usati (un meme)

Riprendo il post di Giacomo aggiungendo l'output del seguente comando (che restituisce la lista dei comandi più utilizzati) sul mio Mac:

$ history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head

214 ls
57 cd
27 curl
27 VBoxManage
22 pwd
17 more
16 /Test/fortress-1.0/bin/fortress
14 ping
8 gzip
8 exit

Come si vede mi capita di scaricare file con curl, sono un utilizzatore di VirtualBox ed ho "giocato" con l'ultima release del linguaggio Fortress.

martedì apr 15, 2008

Abbiamo ancora bisogno delle directory nei file system?

Riguardando il video sulla rivoluzione/evoluzione dell'informazione, mi viene il dubbio che il concetto stesso di directory, all'interno di un file system, sia "superato".

Fin dall'origine dell'informatica domestica siamo stati abituati a riporre i nostri documenti (file) all'interno di una struttura gerarchica (directory), con il risultato che spesso, oggi, mi ritrovo lo stesso file salvato più volte, in differenti directory, proprio perché il documento non è associabile solo ad una sola categoria (directory), ma ad esempio a due o tre contemporaneamente, ed io utilizzo ogni volta quella che in quel momento ritengo la più "importante". Viceversa, quando ricerco un file, rischio di cercarlo nella directory sbagliata.

Una evoluzione simile a questa vi è già stata con la gestione dei bookmark, che dalla classica struttura gerarchica nei menu dei browser sono passati ad un catalogo online gestito associando ad ogni link una o più "etichette" (tag), come ad esempio permette di fare il sito del.icio.us. Quando la gestione dei tag è condivisa tra più utenti, in un modello di social networking, si usa il termine folksonomy. Con questo modello associare più di una etichetta (tag) ad un link equivale, nella pratica, a riporlo allo stesso tempo in più di un una categoria (directory), ma senza avere una effettiva duplicazione del dato.

Lo stesso approccio di indicizzazione basato su tag può essere utilizzato da un file system che (senza entrare in un discorso più complesso di semantic file system) può catalogare i file al proprio interno non in base alle directory, ma in base ai tag ad essi associati. In tal caso si può definirlo un "tagged file system".

Ovviamente si aprono un certo numero di dubbi su come un tagged file system può essere implementato:

  • Per identificare in modo univoco un file in un tagged file system (privo di directory), esiste un insieme minimo di tag da indicare assieme al nome del file? O si devono (dopo una opportuna ricerca) utilizzare sempre tutti i tag?
  • Possono esserci due file con lo stesso nome ed un sottoinsieme di tag in comune? Se sì, nel caso di un accesso che identifica il file con tale nome ed un insieme di tag uguale al sottoinsieme di tag in comune, come gestire il possibile conflitto? Indicando, con un codice di ritorno, che c'è bisogno di più informazioni per trovare il file corretto?
  • E' possibile eliminare completamente il concetto di directory, o conviene comunque affiancare una struttura gerarchica ai tag?

Per maggiore chiarezza provo a riportare un esempio. Quando in una applicazione, al termine delle modifiche, si deve salvare un file in un tagged file system, le informazioni da indicare sono:

  • il file system (potrebbe esserci un file system separato per ogni utente, con una flessibilità nel creare file system simile a quella di ZFS)
  • il nome del file
  • i tag che descrivono il file (alcuni tag potrebbero indicare il tipo di file, al posto dell'estensione nel nome del file stesso)

I tag sostituiscono in questo esempio l'uso delle directory. I tag già usati possono essere suggeriti, come nel modello folksonomy, in modo da evitarne la proliferazione.

Usando dei tag con un formato del tipo "parametro:valore" si possono aggiungere con flessibilità dei metadati che vanno oltre il semplice tagging. Si deve valutare se l'aumento nella complessità controbilancia le potenzialità espressive di una sintassi di questo genere.

Credo sia chiaro che in questo ambito ci sia molto spazio per l'analisi e la ricerca. Uno dei passi necessari è senz'altro la definizione di un insieme standard di API per l'accesso ai file che vada oltre l'interfaccia standard POSIX. Potrebbe essere utile il lavoro in corso sullo standard XAM. Si può per semplicità valutare la possibilità di costruire il modello a tag sopra un file system normale, ad esempio ricavando la directory in cui collocare un file a partire dai tag ad esso associati. Ogni idea è la benvenuta.

lunedì apr 14, 2008

ZFS, il File System del Futuro

Per approfondire le potenzialità di ZFS ecco alcune slide che ne descrivono ad alto livello le principali funzionalità:

domenica apr 13, 2008

Una interessante analisi sui limiti dell'autenticazione biometrica

Ecco una analisi che evidenzia alcune lacune (o limiti impliciti) nell'uso dell'autenticazione biometrica, in particolar modo delle impronte digitali. Premettendo che noi lasciamo ogni giorno le nostre impronte su praticamente tutti gli oggetti che tocchiamo, un sistema di autenticazione biometrica basato sulle impronte può essere provocatoriamente paragonato ad un sistema in cui un utente usi sempre la stessa password (dato che le impronte non cambiano) e dove tale password è continuamente lasciata "in vista" (sugli oggetti che quotidianamente manipoliamo).

sabato apr 12, 2008

Creare uno slideshow con Picasa Web Album

Forse non tutti sanno che per avere l'opzione di creare uno slideshow con Picasa Web Album da inserire nel proprio sito web è necessario impostare nelle impostazioni la lingua ad "English". Così facendo, quando si seleziona un album, compare l'opzione "Embed Slideshow" che purtroppo, ad oggi, non è disponibile con la lingua italiana. Ecco un esempio di slideshow tratto dalla gita a Monterano:

Creare un badge per Picasa Web Album usando Yahoo Pipes

Pur apprezzando il servizo Picasa Web Album di Google (al di là della mancanza di interattività tra gli utenti) mi serviva un badge da aggiungere al blog con i miei album fotografici. Dopo un po' di ricerche ho provato a vedere le API di Picasa che, essendo basate su Atom e non su JSON, non erano semplicemente fruibili via JavaScript. Mi sono allora ricordato di Yahoo Pipes ed ho scoperto che è stata aggiunta la possibilità di produrre un badge da un pipe (sì, lo so, detto così sembra strano, ma vi assicuro che ha un senso). Ecco il risultato:

Il corrispondente pipe si può accedere da qui. A breve aggiungerò il badge al template del blog, forse con qualche ulteriore modifica.

venerdì apr 04, 2008

Come guardano gli studenti alla scuola e all'università?

Ecco un ulteriore video di Mike Wesch che pone un interessante interrogativo: come può guardare uno studente abituato alle potenzialità di Internet le modalità di insegnamento della propria scuola o della propria università?

Passare da un mondo di connessione e condivisione ad un processo di istruzione basato sulla lavagna rischia di non essere l'approccio migliore. Qual è l'evoluzione necessaria perché le modalità di trasmissione dell'informazione usate da scuole ed università non siano superate dalla tecnologia che dovrebbero insegnare?

Per una versione ad alta risoluzione del video vedere qui.

La rivoluzione dell'Informazione (Information R/evolution)

Da Mike Wesch, autore del filmato The Machine is Us/ing Us (citato in questo precedente post, scritto quando non era ancora disponibile la versione finale), ecco una nuova analisi in formato video dello scenario tecnologico che ci attende.

Questa volta il tema trattato è l'evoluzione del modo di gestire l'informazione, ed in particolare la ricerca, l'accesso e quindi le modalità di catalogazione dei dati.

Una versione ad alta risoluzione del video può essere scaricata qui. Per maggiori informazioni sul lavoro di Wesch c'è il sito mediatedcultures.net. Questi due sono invece i puntatori mostrati nel video, gestiti da suoi collaboratori.

martedì mar 25, 2008

Mi sono iscritto a Il Bloggatore

Il Bloggatore

Si tratta di un aggregatore di feed on line, orientato a tutti quei blog che trattano argomenti legati al mondo dell’informatica, con l’obiettivo fondamentale di divulgare e diffondere informazioni utili.

giovedì mar 20, 2008

MySQL 6 e Falcon, il nuovo Storage Engine transazionale

Sono disponibili le prime alpha release di MySQL 6 che includono il nuovo Storage Engine transazionale Falcon, disegnato per sfruttare a pieno la capacità di indirizzamento dei sistemi a 64 bit (con memoria/cache di dimensioni considerevoli) e la scalabilità dei sistemi multi-core/multi-thread.

 

Per maggiori informazioni c'è anche questo wiki. Falcon è citato anche qui.

La piattaforma LiveBase per sviluppare con modelli UML/MDA

All'OpenCamp ho incontrato anche Antonio Leonforte che mi ha illustrato il suo lavoro per realizzare una piattaforma di sviluppo basata sulle linee guida dell'OMG (ed in particolare su UML e MDA) denominata LiveBase.

Una demo live del sottosistema LiveTable (relativo alla presentazione dei dati) è disponibile sul sito e testimonia lo stato di avanzamento della piattaforma: con una interfaccia rigorosamente AJAX è possibile navigare una base dati di tipo relazionale.

La piattaforma completa permetterà di gestire tutto il ciclo di vita dello sviluppo, dal disegno iniziale fino all'amministrazione dell'applicazione in produzione, spostando gli effort dalla codifica testuale/grafica richiesta dagli attuali ambienti di sviluppo verso una modellazione concettuale che parte proprio dalla base dati.

mercoledì mar 19, 2008

La Storia dei File System... fino a ZFS!

Ecco un ottimo articolo su Ars Technica che descrive l'evoluzione del concetto di "file system" dalle origini (con IBM, DEC, il CP/M, ecc.) fino ai nostri giorni.

Oggi il file system è spesso ritenuto una funzionalità base, non più rilevante nelle scelte tecnologiche, ma quasi una "commodity" che è parte di un sistema operativo e non viene messa in discussione. Ciò è probabilmente il risultato di almeno 20 anni di sviluppo incrementale in questa area, ovvero di un tipo di sviluppo che non ha introdotto innovazioni "rivoluzionarie", ma ha aggiunto funzionalità "poco a poco". D'altronde lo spazio che un file system deve gestire continua a crescere con legge esponenziale e alcune caratteristiche devono necessariamente essere ripensate. Provare a ricominciare da zero nell'immaginare come implementare un file system è stato l'approccio alla base della nascita di ZFS.

lunedì mar 17, 2008

Gestire le password online con PassPack

All'OpenCamp dello scorso sabato grazie a Deirdré Straughan (collega che segue le Community OpenSolaris con un focus sullo Storage) ho conosciuto Tara Kelly che mi ha introdotto alla sua "creatura" PassPack.

PassPack sarebbe interessante già solo per essere una delle poche startup "Web 2.0" con un background italiano, ma in realtà ho trovato il loro modello di gestione online delle password estremamente semplice e potente.

Le password sono infatti gestite client-side e lato server sono resi visibili solo dati criptati. Ogni utente ha infatti due password (le uniche da ricordare, se si usa la loro applicazione):

  • un pass key utilizzato da PassPack per identificare (autenticare) l'utente sul proprio sito
  • un packing key utilizzato lato client per crittografare/decrittografare i dati sensibili nel colloquio con il server

Una serie di contromisure "visive" (come il Welcome Message personalizzabile) inducono l'utente a verificare l'autenticità delle pagine presentate (ad esempio in fase di login) e pertanto limitano le possibilità di un attacco di tipo phishing.

Molto interessante la procedura di apprendimento per l'auto-login, che è condivisa: quando un utente insegna quali sono i campi da popolare per la login su un sito, la stessa procedura è resa disponibile per tutti gli altri utenti dell'applicazione. Io ho ad esempio "insegnato" a PassPack come fare login su un sito di "extranet" poco diffuso, ma ho trovato già configurata la procedura di auto-login del sito Telepass.it.

PassPack è finalista CNET Webware 2008 per la categoria Utility & Security e se lo trovate utile siete ancora in tempo per votare.






    follow me on Twitter

    Calendar

    Feeds

    Search

    Blogroll

    Navigation

    Referrers

    Recent Entries