Categoria ‘Internet’


Live Now, Radiopodcast

radiopodcast

Questa sera, ore 21:40, diretta con DJ Frank e Tommaso Tessarolo! Si parlerà di Current.TV e non solo! Non anticipo ulteriori sorprese!! :)

Continua...

Creare eventi personalizzati in Actionscript 3.0

Creare eventi personalizzati in Actionscript 3.0 è semplicissimo. Usarli, poi, permette di utilizzare il metodo addEventListener() e rendere il nostro oggetto del tutto standard. Se abbiamo creato una classe, ad esempio Bottone, è corretto associare a questa uno o più eventi tramite una apposita classe (derivata dalla classe Event) BottoneEvent. Potremmo realizzare tutti gli eventi che interessano il funzionamento del nostro oggetto: il click, il mouse over, o un qualsiasi altro evento! Definendo anche delle nostre personali costanti. Lo scheletro – generico – di una classe evento personalizzata è:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package {
    /*
    ** @name            : BottoneEvent.as
    ** @description     : Classe derivata da Event per gestire un proprio evento personalizzato
    ** @author          : =undo=
    ** @web             : http://www.undolog.com
    ** @email           : g.fazioli@undolog.com
    */
   
    import flash.events.*;

    public class BottoneEvent extends Event {
       
        public static const MIOEVENTO:String       = 'pluto'; // codice qualsiasi, anche 'mioevento' in minuscolo
       
        public var Valore:Number                   = NaN;        
        /*
        ** @name            : BottoneEvent
        ** @description     : constructor
        */

        public function BottoneEvent ( type:String, v:Number, bubbles:Boolean=false, cancelable:Boolean=false ):void {
            super(type, bubbles, cancelable);
            this.Value = v;
        }
       
        /*
        ** @override
        */

        override public function clone():Event    {
            return new KnobEvent(this.type, this.Value, this.bubbles, this.cancelable);
        }
    }
}

Continua...

C’era una volta N3TV! Ora c’è Radiopodcast

Commento l’articolo Net+Television di Tommaso Tessarolo, da alcuni giudicato «un bel pezzo [...]», da altri «[...] un tentativo di giustificazione [...]», da altri ancora «[...] rassegnazione [...]»! Potrebbe essere tutto questo ma il vero nodo della questione, a mio avviso, è lungi dall’essere stato sviscerato! N3TV, il progetto dove ho avuto la fortuna di partecipare attivamente, è stata una fantastica esperienza, vissuta da tutti i partecipanti con grande e autentico entusiasmo (lo dico perchè ero presente). Non tutti, purtroppo, me compreso, hanno potuto dedicargli il tempo e le risorse necessarie! Non nego – e Tommaso lo sa – che l’evoluzione del progetto è stata quantomai curiosa, mutando la sua forma iniziale in qualcosa che alla fine – secondo me – aveva poco a che fare con il Web, con la cosiddetta Net-Television, insomma! Quantomeno non aveva più nulla a che fare con le premesse iniziali del progetto. Ma ciò è normale! Un progetto innovativo evolve e muta nel corso tempo, a causa degli eventi imprevisti, e non è quindi motivo di stupore se le premesse iniziali cambiano.

Continua...

Google Maps: come ottenere Latitudine e Longitudine da un indirizzo

Anche questa volta rispondo ad un commento con un Post, visto il generale interesse. Armando mi chiedeva se era possibile, tramite Google Maps, ottenere Latitudine e Longitudine a partire da un nome di città o di una strada. La risposta è si! Tramite il servizio Google Maps API geocoding service è possibile chiedere direttamente a Google di trasfromare la nostra informazione testuale (stato, città, via) in coordinate geografiche. Potete provare un esempio online direttamente sul sito della documementazione Google.

Continua...

Google AJAX API Language e Prototype.js

Dopo aver visto il funzionamento delle Google AJAX API mi è venuto in mente un modo alternativo per tradurre realtime le nostre pagine Web. Sfruttando prototype.js è possibile marcare i TAG HTML che desideriamo tradurre, invece di sottoporre l’intero documento alla traduzione. Per marcare i TAG HTML da tradurre ho usato l’attributo rel, impostandolo a translate:

1
<p rel="translate">Questo testo deve essere tradotto</p>

Con una semplice funzione, poi, possiamo sfruttare prototype.js per elaborare tutti i  TAG HTML con rel='translate':

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/**
 * @name         : translate()
 * @description  : translate  
 */

function translate() {
    $$('[rel="translate"]').each(
        function(e) {
            google.language.translate(e.innerHTML, 'it', 'en',
                function(result) {
                    if (result.translation) {
                        e.innerHTML = result.translation;
                    } else {
                        alert( 'Translate Error!\n\n' + result.error.message );
                    }
                }
            );                                          
        }
    );
}

Potete vedere questa funzione in azione su e-lementi.com

Ovviamente lo script può (e/o deve) essere perfezionato a seconda dei casi. È interessante notare, tuttavia, che è possibile specializzarlo in modo tale da sostituire delle immagini (nel caso di bottoni in grafica che contengono testo) o fargli elaborare TAG particolari come INPUT o TEXTAREA.

Uno dei limiti che ho riscontrato, e che vorrei approfondire, riguarda il numero di caratteri che possono essere tradotti. In caso di testi importanti, infatti, non è difficile ottenere un errore: che infatti ho gestito nello script con un alert().

Continua...

AS3Corelib: libreria per codifica MD5, SHA1 e JPG/PNG Encoder

AS3corelib project è una libreria scritta in ActionScript 3 che contiene una serie di classi e utilities per estendere lo sviluppo con ActionScript 3. È incluso il supporto per la codifica MD5 e SHA 1, encoders per JPG e PNG, e la serializzazione JSON per stringhe, numeri e Date APIs. Questa libreia risulta davvero utile nello sviluppo di applicazioni Flash e riesce ha dare il meglio di sè in accoppiata con Adobe AIR!

Dei vari package presenti i più interessanti sono com.adobe.crypto e com.adobe.images. Il primo permette di gestire le codifiche MD5, SHA1, SHA224 e SHA256, in modo davvero semplice: tramite il metodo hash() si passa la stringa-sorgente e viene restituita la codifica! Il pacchetto images permette addirittura di ottenere l’encoder JPG o PNG a partire da una semplice bitmap Flash!

1
public function encode(image:BitmapData):ByteArray

Il risultato ByteArray rappresenta l’encoding JPG che, Flash permettendo, può essere salvato direttamento su disco! Per saperne di più potete seguire questo tutorial video su come memorizzare un’immagine PNG – a partire da un oggetto video – su disco tramite as3corelib.

Continua...

HTML dinamico con Prototype: stili e script

Oltre un anno fa avevo scritto un post ( HTML dinamico con Javascript) che illustrava alcune tecniche per aggiungere dinamicamente fogli di stile e script ad una pagina HTML già caricata. Chi usa Prototype.js si può semplificare notevolmente la vita usando ad esempio:

1
2
3
4
5
6
document.observe("dom:loaded",
    function() {
        var script = new Element("script", { type: "text/javascript", src: "/js/altro.js" });
        $$("head")[0].insert(script);
    }
);

Dopo che la pagina è stata caricata (document.observe) viene aggiunto un nuovo script Javascript! Per gli stili vale esattamente la stessa cosa!

Continua...

Arrivano i GURU: seminario su Photoshop CS3 e Digital Imaging

Inauguro con questo Post una nuova sezione Eventi & iniziative, viste le numerose segnalazioni che spesso mi vengono proposte. Ovviamente segnalerò quelle inerenti ai temi di questo Blog.

imageArrivano i Guru“, si terrà a Roma ad Ottobre 2008, e vede per la prima volta in assoluto, la presenza in Italia di Martin Evening, massimo esperto di digital imaging, nonchè autore di innumerevoli libri di successo su Photoshop, venduti in tutto il mondo.
Vista l’unicità dell’evento, quest’anno l’organizzazione ha ideato un “Tour” di 8 tappe, in altrettante città italiane, la cui partecipazione è TOTALMENTE GRATUITA.
Durante i vari incontri gli Adobe Guru Marianna Santoni, Claudio Marconato, Tiziano Fruet, e Davide Vasta, intratterranno i partecipanti con 5 ore di seminari di approfondimento su vari temi, dalla fotografia digitale, al design ed al Web design. Ci saranno 3 tappe che avranno luogo al Sud (Napoli, Bari, Catania), notoriamente “snobbato” da eventi di grande rilevanza. Il sito Web ufficiale è questo: http://www.arrivanoiguru.com

(segnalato da: Davide Vasta)

Continua...

Google Translate si aggiorna

Proprio pochi giorni fa avevo scritto un Post sulle traduzioni automatiche, affrontando la questione dei siti e/o blog multilingua dal mio punto di vista di sviluppatore. Ho ricevuto, infatti, alcuni commenti interessanti che sottolineano i limiti delle tecnologie attuali. In effetti i sistemi che permettono di tradurre “al volo” le nostre pagine Web, come Google Translate, non producono assolutamente un risultato paragonabile a quello umano, a chi – insomma – di mestiere svolge la professione di traduttore. Inoltre non esiste una specializzazione di questi sistemi pubblici: tradurre un testo scientifico in inglese e diverso da tradurre un romanzo in inglese o un manuale informatico e via dicendo. Questo, con una traduzione “umana” sappiamo che non accade e i traduttori professionisto sono proprio specializzati in ben determinati ambiti.

Tuttavia, come ho risposto (in privato essendo la mail corposa) a Leonardo, ci sono casi in cui un traduttore automatico, soprattutto con l’avvento dei Blog, permette di abbattere tempi e costi consentendo, nei limiti dei sistemi di traduzione automatica attuali, quantomeno di comprendere nella propria lingua ciò che è scritto sul Web.

image Proprio in questi giorni Google Translate ha aggiornato il suo sistema di traduzione online, aggiugendo il supporto per molte, se non tutte, le lingue del pianeta: dal cinese, al greco al giapponese e molte altre. Anche l’interfaccia si è rinnovata proponedo dei menu a tendina per rendere più semplice la scelta della lingua sorgente e quella di “traduzione”.

Continua...

FireFox 3: non vedo l’ora

Mi trattengo da tempo dallo scaricare la versione beta di FireFox 3! Uso FireFox tutti i giorni quindi non voglio scasinare tutto per la fretta. Comunque sia, non vedo proprio l’ora che arrivi il rilascio ufficiale di questo fantastico browser, che con la release 3 promette meraviglie che ho avuto il piacere di provare su un’altra macchina (beta 5).

FireFox 3

Continua...



Stop SOPA