• Super User

    Fantastico!

    Bravo Kerouac 😉


  • Super User

    E' una cosa veramente fantastica questa! Sul serio!
    All'università hanno sottoposto alcuni soggetti ad un test simile. Praticamente mettono delle piccole telecamere vicino agli occhi e poi ti mettono davanti ad un monitor.
    Riescono a capire esattamente dove stai guardando e quali sono le aree che hai guardato del monitor.
    Ma il tuo è ancora più interessante.


  • Super User

    La soluzione di fradefra (monitorare aree invece che pixel) è ottima, ma bisogna decidere come sia meglio applicarla. Si potrebbe creare una seconda tabella interna al database in cui inserire (tramite uno script) le aree che ci interessa monitorare in ogni pagina.

    Mi quoto per suggerire un'altra cosa..invece di stabilire le aree tramite pixel potremmo stabilirle inserendo nel codice html dei codici javascript che al passaggio del mouse in un determinato elemento (a href, div, p, body...) segnalino allo script che il mouse è sopra quella zona.

    Possiamo inoltre aggiungere una tabella temporanea nel DB in cui verranno raccolti i risultati ogni giorno (con più dettagli)..a fine giornata i dettagli verranno eliminati automaticamente e i dati rilevanti verranno sommati a quelli presenti nella tabella principale.

    Per esempio la tabella dei tettagli potrebbe contenere:

    ip - componente - permanenza totale - permanenza attiva - totale movimenti pervenuti - data ultimo movimento pervenuto - data primo movimento del mouse - data ultimo segnale

    ip = ip unico nell'arco delle 24 ore ci permette di sapere cosa fa l'utente nelle 24 ore

    componente = ci permette di sapere quale componente è attualmente oggetto di interesse dell'utente

    permanenza totale = (devo trovare un modo per calcolarla bene) è in teoria il tempo totale che l'utente ha trascorso su una determinata componente. Per ora penso che la calcolerò così:

    All'arrivo dell'utente nel sito inserisco (o aggiorno se già esiste) nella tabella temporanea una riga con ip componente e data ultimo segnale, poi attivo un timer in javascript, che viene azzerato ogni volta che l'utente muove il mouse. Se il timer arriva ad 1 minuto (senza movimenti del mouse) allora il javascript invia il segnale al php che aggiorna la data dell'ultimo segnale. Perché tutto sto casino? perchè in questo modo se un utente ha inviato l'ultimo segnale alle 23.35 e il seguente segnale arriva alle 23.38..io so che dopo le 23.35 non è stato nella pagina. Ovviamente se l'utente è attivo e muove spesso il mouse il problema non si pone. Questo però mi permette di sapere per quanto tempo un utente resta attivo anche se il suo mouse non si muove. Questo tipo di permanenza immobile verrà aggiunta alla permanenza totale (insieme alla permanenza attiva). Se qualcuno mi suggerisce un altro modo per capire se un utente ha abbandonato una pagina, accolgo il suggerimento molto volentieri..io purtroppo quando non so una cosa mi ingegno per trovare soluzioni alternastive per lo più incasinate

    permanenza totale = mi serve a capire se un utente è a prendersi un caffè o se sta veramente navigando. Ovviamente un utente può essere inattivo, mentre legge un testo, ma molti di loro preferiscono seguire le parole col puntatore (se sono attivi o se reputano il testo interessante o se pensano che la lettura durerà poco e dunque non c'è motivo di mollare il mouse). Spesso però accade che di fronte a testi lunghi (e alla sicurezza che la lettura richiederà molto tempo), dicevo in queste situazioni spesso accade che l'utente molli il mouse e legga il testo fino alla termine della pagina dopo di che ha 4 opzioni:

    • si stanca e smette
    • il testo è finito
    • scende usando la tastiera
    • scende usando il mouse

    Ovviamente sarebbe possibile monitorare queste 4 situazioni per capire se l'inattività del mouse sia solo dovuta ad una attenta lettura..ma per ora limitiamoci alla pura raccolta dei dati.

    Permanenza attiva = ci serve a capire quanto un utente è stato attivo in una componente in termini di secondi, minuti o ore

    Totale movimenti pervenuti = ci serve a capire quante volte ha mosso il mouse (oltre una determinata soglia è parkinson :lol: )

    Data ultimo movimento pervenuto = ci serve a calcolare per quanto tempo un utente è attivo. Ogni volta che il mouse viene mosso la permanenza attiva viene aggiornata basandosi della data primo movimento (in cui inseriremo la date del primo movimento avvenuto dopo uno stato di inattivita e/o all'arrivo dell'utente nel sito), inoltre aggiorneremo anche la data dell'ultimo segnale e la data dell'ultimo movimento. Dopo un minuto dall'ultimo movimento si passa allo stato inattivo e viene detratto un minuto dallo stato attivo. Ovviamente al secondo minuto se la data dell'ultimo segnale è diversa dalla data dell'ultimo movimento allora non viene detratto nessun minuto, perchè siamo già nella fase di inattività.

    Data primo movimento del mouse = è la data del primo movimento del mouse che viene calcolata nei seguenti casi:

    • all'arrivo dell'utente nella pagina
    • quando l'utente torna a muovere il mouse dopo un periodo di inattività

    Data ultimo segnale = ci serve a determinare se l'utente è ancora presente nella pagina..questo ci serve per evitare di assgnare una permanenza troppo lung agli utenti che escono da una pagina e poi rientrano mezz'ora dopo (in questo modo la mezz'ora d'assenza non verrà calcolata)


    Scusate se sono poco chiaro..ho il difetto di essere incomprensibile e ho poco tempo per correggere. Il testo sopra serve per farvi capire cosa ho in testa e affinché voi possiate consigliarmi soluzioni migliori.

    Se il database vi sembra troppo grande e lo script troppo incasinato è perché diversamente rischieremo di fraintendere dei dati.
    Infatti dobbiamo riflettere anche sui problemi che incontreremo e trovare soluzioni, per interpretare al meglio i dati che ci verranno forniti.


  • Bannato Super User

    Bravo Kerouac [non mi ero sbagliato... 😄 ]


  • User Attivo

    News? Prosegue il progetto?


  • User Attivo

    Ho letto tutto ma a che punto è ora la cosa?
    Credo che sia uno studio molto interessante, anche perchè pensavo, prima o poi, di fare un sito-esperimento (pensato epr la ricerca biologica e non per il posizionamento) che si occupasse di variabili comportamentali.
    Non so se faccio un'osservazione sensata (e fattibile) pechè non sono esperto di programmazione, però penso che potrebbe essere utile trattare i dati direttamente in senso vettoriale... siccome i movimenti del mouse tendono ad essere effettuati per linee rette , seguiti da periodi di relativa stasi, si potrebbero trattare analogamente alle saccadi oculari. Per le saccadi in genere si calcolano i momenti di accelerazione/decelerazione per individuare gli "stop'n'go" dell'occhio. In questo caso forse sarebbe più utile aggiungere una funzione che quando vede che x-y si ripetono uguali per tot volte (è uno stop) allora memorizza le coordinate x-y precedenti e quelle successive, in modo da poter cotruire dei vettori da un punto di stop ad un altro e saltare tutti gli intermedi.

    Ora non ho tempo per dedicarmici ma mi piacerebbe molto. fatemi sapere che ne pensate.


  • Super User

    @rocco_bruno said:

    Ho letto tutto ma a che punto è ora la cosa?
    Credo che sia uno studio molto interessante, anche perchè pensavo, prima o poi, di fare un sito-esperimento (pensato epr la ricerca biologica e non per il posizionamento) che si occupasse di variabili comportamentali.
    Non so se faccio un'osservazione sensata (e fattibile) pechè non sono esperto di programmazione, però penso che potrebbe essere utile trattare i dati direttamente in senso vettoriale... siccome i movimenti del mouse tendono ad essere effettuati per linee rette , seguiti da periodi di relativa stasi, si potrebbero trattare analogamente alle saccadi oculari. Per le saccadi in genere si calcolano i momenti di accelerazione/decelerazione per individuare gli "stop'n'go" dell'occhio. In questo caso forse sarebbe più utile aggiungere una funzione che quando vede che x-y si ripetono uguali per tot volte (è uno stop) allora memorizza le coordinate x-y precedenti e quelle successive, in modo da poter cotruire dei vettori da un punto di stop ad un altro e saltare tutti gli intermedi.

    Ora non ho tempo per dedicarmici ma mi piacerebbe molto. fatemi sapere che ne pensate.

    Interessantissimo, ma non so se conviene.
    Attualmente lo script che ho rifatto (20 giorni fa) permette di monitorare tutti i tags DIV e A di una qualunque pagina web con solo 2 righe di codice. In sostanza nel db non salvo tutte le posizioni del mouse ma solo il tempo in cui è restato in un determinto div. In più salvo tutti i dati che potrebbero interessare un SEM e/o un SEO e/o un webmaster

    Ma non ho creato uno script di analisi dei dati. Vi aggiornerò quando avrò uno script semi-definitivo


  • User Attivo

    @kerouac3001 said:

    Interessantissimo, ma non so se conviene.
    Attualmente lo script che ho rifatto (20 giorni fa) permette di monitorare tutti i tags DIV e A di una qualunque pagina web con solo 2 righe di codice. In sostanza nel db non salvo tutte le posizioni del mouse ma solo il tempo in cui è restato in un determinto div. In più salvo tutti i dati che potrebbero interessare un SEM e/o un SEO e/o un webmaster

    Ma non ho creato uno script di analisi dei dati. Vi aggiornerò quando avrò uno script semi-definitivo

    Certo, se hai già effettuato una riduzione dei dati e scelto dei parametri utili sufficienti all'analisi SEO, non vale la pena andarsi ad impelagare in altro. Penso che il discorso sui vettori possa interessare per prendere la cosa più alla lontana e per uno studio più in generale sul comportamento.
    A presto, spero!


  • User

    Progetto molto interessante, complimenti. L'unico dubbio che mi e' venuto leggendo quanto state sviluppando e' se il mouse si muova veramente seguendo l'occhio dell'utente. Ho fatto un paio di prove pratiche e ho notato che io non muovo il mouse in base a dove il mio occhio cade ma secondo altre logiche, a volte per spostare il mouse da una zona in cui sto leggendo, altre per fare dei "giri" per lo schermo che non sono direttamente collegati con i punti della pagina di massima attenzione, altri per scrollare la pagina mentre leggo, ecc ecc

    Non sono riuscito a trovare online informazioni precise sulla correlazione movimento mouse/attenzione utente. Avete qualche riferimento in merito?


  • User Attivo

    A sto punto non ti conviene usare la tecnologia Ajax?
    E' comunque un bel progetto ed una bella idea.
    L'unico dubbio mi viene sull'appesantimento della pagina e del server.
    In pratica fai una valanga di richieste (e conseguenti connessioni a db) lato server...


  • User Attivo

    @lukas said:

    Praticamente mettono delle piccole telecamere vicino agli occhi e poi ti mettono davanti ad un monitor.

    A mio avviso è l'unico sistema valido, trovo il test di kerouac3001 interessante ma come detto in passato credo non funzioni, o almeno in parte.

    Ho fatto anche io dei test di questo tipo, ed ho utilizzato delle telecamere. Credetemi non più del 50 % delle persone utilizzano la freccetta del mouse per tenere il segno, c'è chi la abbandona a se stessa in basso a dx, chi in alto a sx, c'è perfino chi segue la lettura con il dito o con una penna.

    Poi ci sono alcuni come Giorgio che evidenziano cio che leggono, altri che una volta aperta la pagina abbandonano il mouse (io ad esempio)...

    Credimi, il test è interessante ma allo stesso tempo ha un valore statistico con margine di errore approssimativo del 35%

    Spero il mio intervento sia di aiuto per migliorare. 😉


  • Super User

    Rispondo in fretta visto che vi ostinate a riportare online i miei posts di un anno fa (1 anno e 1 giorno)

    Si ho usato Ajax (senza xml), ma il principio è lo stesso

    GrazieMamma te hai ragione (P.S. una pizza qualche volta ce la possiamo andare a prendere eh?)..non capisco nulla di pricologia dell'utonto, più che altro mi sono occupato di realizzare un'applicazione basandomi su una vecchia discussione fatta su gt. Siceramente non ho mai analizzato i dati raccolti dall'applicazione perché non saprei come interpretarli 😄


  • User Attivo

    L'unico modo per metter giù i dati in un formato leggibile è utilizzare le heatmap, come il sito Crazyegg

    Loro utilizzano flash per l'output.

    Cmq fare un'analisi di questo tipo ha senso prendendo una o due settimane al massimo di attività del sito.
    Altrimenti si raccolgono un sacco di dati e poi non si ha la possibilità di leggerli tutti.

    Inoltre sarebbe utile fare questo tipo di studio anche analizzando l'attività finale dell'utente, vedere su quali link clicca. E' quello che poi fa Crazyegg di cui sopra.
    In questo modo si possono sperimentare più versioni della pagina e vedere quale è la più efficace a seconda dei propri scopi.


  • User

    Lo studio dei movimenti degli occhi in relazione agli stimoli luminosi è molto importante per l'analisi della percezione, molte branche della scienza se ne occupano da molti anni (oculistica, neurologia, psichiatria, psicologia cognitiva solo per citare alcune macrocategorie).
    Benché ci si trovi ancora all'inizio, i risultati sono stati finora rilevanti.
    Dal punto di vista commerciale, i l'editoria grafica (in primis quella cartacea) si è prontamente avvalsa delle teorie elaborate inmerito dalla psicologia cognitiva.

    I movimenti dell'asse oculare da una zona ad un'altra zona del campo visivo si chiamano saccadi.

    Quando fissiamo qualcosa, tuttavia, il nostro sguardo non resta perfettamente immobile. Ci sono piccolissimi movimenti (il cui angolo è dell'ordine di centesimi di grado) che l'asse continua a seguire nell'intorno del punto interessato. Questi movimenti si chiamano microsaccadi.
    La rilevazione dei percorsi oculomotori, che esiste ormai da tempo, permette la tracciatura delle "mappe delle risposte saccadiche".

    Da qui si parte per lo studio sulle percezioni, velocità di acquisizione delle informazioni, latenza della risposta agli stimoli luminosi/visivi, sulla priorità dell'attenzione, sull'influenza dell'illusione percettiva e su moltissimi altri fenomeni dai risultati prolifici. Esistono anche degli studi sulla diagnosi neurologica dall'analisi delle saccadi.

    Le telecamere sono un sistema ormai datato, attualmente la oculometria a infrarossi utilizza delle onde elettromagnetiche (raggi infrarossi appunto), che fanno parte dello spettro non visibile, e soprattutto è una tecnologia applicabile anche negli studi al buio su stimoli visivi di luminanza ridotta.

    Questa premessa soltanto per dire che l'idea di applicare questi studi anche al web non è male.

    Circa il movimento del mouse e le sue relazioni con le zone di attenzione visiva non ho letto ancora molto, ma di sicuro si otterranno dei risultati interessanti. Di certo ci sono variabili la cui lettura è suscettibile di interpretazioni: per esempio a me piace leggere pagine ricche di testo (ben organizzato) lasciando completamente il contatto con il mouse.
    Altre volte invece seleziono distrattamente zone della pagina muovendo il mouse a caso. Altre persone ancora lo faranno roteare nervosamente anche al di fuori delle aree di attenzione, vista breve la permanenza (ormai dell'ordine dei secondi) sulle pagine web e l'aumento del numero medio di pagine visitate per ogni sessione.
    In linea di massima credo però che si possano trovare dei criteri di lettura di queste informazioni.