Per vari anni ho sperato che la semantica potesse diventare quel “segnale forte” col quale Google avrebbe finalmente tolto peso ai link. Immaginavo un motore di ricerca intelligente e difficile da ingannare. Poi è arrivato Google+, e mi è venuto qualche sospetto che i tempi si sarebbero allungati (perchè concentrarsi sul social network se fosse stata sufficiente la semantica?).

Poi l’anno scorso mi sono accorto che se scrivo una pagina web che risolve un problema ad una persona, pensando principalmente al “significato” del problema da risolvere, ecco che google mi manda traffico anche per tanti vari “significanti” (cioè le parole chiave) anche se queste non sono sinonimi grammaticalmente compatibili. Per esempio sulla pagina della stitichezza, mi aspettavo di trovare in ingresso anche ricerche legate a “stipsi” e “costipazione” eppure sono arrivate anche varie ricerche tipo “non riesco ad andare in bagno da 5 giorni”. Che Google abbia capito che quelle persone sono stitiche? Che Google sia finalmente diventato intelligente?

Queste e molte altre domande sono sfociate in una miriade di test ed esperimenti (molti anche fatti dalla community dei seo italiani). Dopo tanti anni ad aspettare l’emancipazione del motore di ricerca dai link, sarà la volta buona?

Siccome da solo non ho trovato risposte, e siccome tra qualche giorno dovrò tenere un corso ai giornalisti del Sole, ho pensato di chiedere ad uno dei massimi esperti italiani di semantica applicata:

varoneAmici del blog e dei prossimi master dove avrò la fortuna di parlare, date il benvenuto a Marco Varone, fondatore e CTO di Expert System (qui il suo fantastico blog).

Colgo l’occasione per ringraziare anche pubblicamente Marco per la sua infinita gentilezza e disponibilità nel rilasciare questa intervista. L’ho trascritta come meglio potevo dato che non sono riuscito a registrare, tutti gli errori di battitura sono miei.

Marco, è possibile far capire ad una macchina le differenze tra significato e significante? (linguistica)

- realisticamente no, secondo me la singularity non esisterà mai. Ciò che è possibile fare invece è ottenere una capacità simile, per casi specifici, simulando la mente umana, usando algoritmi dotati di sufficiente contesto e che risolvono solo una piccola parte del problema alla volta. La reale comprensione di significato è un problema non computabile, ma alcuni sotto problemi si. Ad esempio Worlphram Alpha, si appoggia su un RDF condiviso e riesce a rispondere ad alcune domande per le quali ha sufficiente contesto e conoscenza.

come quando provo a chiedergli “quanti anni aveva Leonardo quando è morto?“, lui “capisce” che mi sto riferendo a Leonardo Da Vinci e mi da l’esatta età?

Si.

quanto c’entra la lingua parlata con la semantica?

- fino a 7-8 anni fa la lingua parlata era irrilevante per le tecnologie semantiche perchè tutto cioè che era analizzabile era testo scritto fin dall’inizio con l’intento di dire qualcosa per iscritto.

poi i sistemi di riconoscimento vocale hanno iniziato a funzionare bene e quando una persona parla non pensa come quando scrive (è piu naturale e meno lineare).

è nata la comunicazione sociale (blog, social network) che sono diventati volumi di informazioni enormi. buona parte di questi contenuti hanno una struttura sintattica, espressioni, significati, ecc. simili a quelli della lingua parlata. Per comprenderli è necessario rendere più robusta e più intelligente qualsiasi tecnologia semantica. (non si è mai scritto così tanto come adesso).
è una sfida per la semantica perchè io vado ad esprimere una parte del contenuto del discorso con elementi paralinguistici (es. il significato della faccina emoticon nel discorso).

Capire una nuova forma di espressione come l’ibrido che troviamo sui social network richiede cambiamenti alle logiche o è “sufficiente” arricchire il database?

- purtroppo richiede anche nuove logiche oltre a più conoscenza

quindi vi costa di piu?

- certo, abbiamo bisogno di rendere il sistema più flessibile, questo però aumenta il rumore. occorre andare a modificare gli algortimi di analisi per provare ad aumentare la flesssiblità minimizzando la perdita.

quando devi capire un contesto specifico usi tutta la “macchina” o usi solo logiche specifiche?

- entrambi- quando capiamo che si tratta di un certo tipo di linguaggio usiamo solo algoritmi personalizzati. se per esempio analizzi twitter, sai già che le logiche sono quelle.

quanto si puà fare tramite algoritmi e quanto “allenando” algoritmi (es. agenti)?

- è indispensabile fare “allenamento” perchè la comunicazione si evolve, quindi è fondamentale poter far analizzare grosse moli di testo al sistema, e questo ci aiuta a mettere a punto le logiche migliori. Senza un intervento di validazione di questa conoscenza o di questi elementi rilevanti rischi di avere molto rumore. se stai lavorando su un contesto specifico te la puoi cavare facendo un allenamento automatico. ma se non lavori su un costesto specifico e metti a punto una tecnologia che possa essere usata in orizzontale, allora l’allenamento aiuta ma deve essere mediato da una validazione umana

come fai a distinguere il rumore da ciò che invece aiuta un lettore a capire il significato del contenuto in esame?

- la maggior parte del contenuto testuale viene usato dal sistema per riconoscere i significati. la logica dell’analisi semantica riguarda le espressioni che ci sono in un testo. es. la parola bagno può essere un locale, può essere un’azione, quindi quando trovo quella parola devo capire il significato all’interno del contesto. per fare ciò analizzo una serie di fattori, co-occorrenze e segnali che identificano l’argomento di cui si sta parlando. es. se parlo anche di sabbia, sdraio, ombrelloni ecc. posso capire che ti riferivi a quel tipo di bagno che si fa al mare… oppure che ti riferivi ad uno stabilimento balneare. Sono tutte hint che usiamo per far capire al sistema il contesto. quasi tutte le informazioni che ci sono in un testo aiutano il sistema a scoprire i significati, sono pochi gli elementi da scartare. quando ci sono parole ambigue che non ti aiutano a capire il contesto, le scartiamo (es. acqua vale in quasi tutti i contesti). il sistema le scarta in automatico. Se ti chiami Giovanni Bagno, capiamo che invece sei una persona.
ciò che è piu forte all’interno delle varie ipotesi viene preso come più probabile. Se io ho un elemento X che canta, so di per certo che non può essere una pianta (questo è un dato logico). in altri casi quando si parla di parole tutte appartenenti ad uno stesso contesto posso usare la valenza statistica.

un sistema semantico può usare ontologie dinamiche?

- può avere senso. fino ad un certo punto è possibile usare elementi noti usati in modo ignoto (il sistema ipotizza un significato che non conosce, in quel caso può imparare). Il sistema però deve avere un numero sufficiente di occorrenze per poter imparare (cioè grandi volumi). tipicamente i nuovi significati sono poco probabili, ma possibili.
Google tiene molto “aperto il rubinetto”, pur non avendo una vera e propria tecnologia semantica. Google deve essere sempre sull’attualità. hanno bisogno di una grande freschezza nei dati esposti, mentre noi teniamo stretto il rubinetto “dell’apprendimento”, loro lo tengono molto aperto. se ci sono conoscenze o relazioni che sembrano significative, non aspettano molto per renderle integrate nel sistema, per questo motivo a volte è facilmente ingannabile. è il rovescio della medaglia. è molto difficile usare il giusto compromesso, noi abbiamo scelto da sempre di essere più conservatori e lasciamo che il sistema apprenda solo in presenza di segnali forti e di durata nel tempo. D’altra parte loro vendono pubblicità, noi software. L’approccio per chiedersi quanto al sistema è consentito di apprendere è importante, loro possono usare subito qualcosa appena imparato. Google ha il vantaggio di essere una cosa gratis, quindi anche se sbaglia un utente ripete la ricerca. noi invece siamo a pagamento quindi i nostri utenti hanno meno tolleranza per gli errori.
tutte le volte che clicchi il quarto risultato piuttosto che il primo dai un grande vantaggio competitivo a Google. Nonostante questo hanno molte tecniche per individuare potenziali trucchi e abusi da parte di chi ha capito come funziona parte del loro sistema.

il vostro sistema è quindi piu ingenuo di quello di google?

- non direi ingenuo, semplicemente solitamente il nostro sistema è utilizzato in contesti in cui non c’è nessuno da ingannare perciò non è necessario implementare logiche di riconoscimento di imbrogli o trucchi

e nel caso in cui l’autore di un brano sia il primo a non voler rendere evidente lo scopo o il significato del suo scritto?

- allora ne capiremo poco e non saremo in grado di individuare i concetti o gli elementi rilevanti e i corrispondenti significati

c’è un modo di scrivere che risulta più facile da capire per una macchina che cerchi di estrarne i “topic” o il suo RDF?

- assolutamente si. tu puoi scrivere gli stessi contenuti in modo facilmente comprensibile per una macchina, o in modo estremamente difficile. esempio: costruire un testo composto da frasi brevi con poche subordinate è una grande semplificazione, perchè quando comincio ad avere più subordinate ho una parte del testo che dipende da quello che è stato scritto prima. Se utilizzi parole rare il sistema funziona molto meglio, se invece di macchina scrivo automobile, quest’ultima è meno comune ed il sistema è in grado di capire meglio. Scrivendo troppo per le macchine comunque ottieni però un testo più piatto e di solito meno interessante per gli esseri umani. Sei meglio per le macchine o più faticoso per le persone. Devi sceglire qual’è il tuo obiettivo.

in che modo si riesce a capire l’autorevolezza di un Resource Definition Framework?

- non è possibile individuare la maggiore solidità o rilevanza di una fonte rispetto ad un’altra in nessun modo automatico. Quello che puoi fare è confrontare N fonti e vedere quella più vicina al “consenso”. questa però è un’approssimazione. molte informazioni tra freebase e wikipedia sono identiche perchè freebase le ha prese da wikipedia, però hanno poi livelli di aggiornamento diversi. Entrambe sono fonti gestite con un processo strutturato, freebase è di Google quindi forse è piu affidabile. il problema è che è molto difficile usare contenuti simili e confrontabili. la cosa diventa colossalmente complessa. generalmente i repository di conoscenza non sono tantissimi quindi viene fatta una valutazione iniziale e poi viene tenuta buona. quindi se battezzi freebase come fonte di qualità, non cambierà nei prossimi anni. è un insieme di analisi umane. superate certe soglie difficilmente si scende. google lo può fare pechè ha il controllo di una serie di flussi e di passaggi di conoscenza che noi non abbiamo. noi da fuori non sappiamo quante volte gli utenti consultano freebase o wikipedia. spiegavo ad alcuni ragazzi che Google è un’azienda che ha come primo obiettivo quello di fare soldi e nel fare questo fornisce servizi apparentemente gratis, però è un’azienda. ma non è la verità, non è il tutto, non è obiettivo, non è indipendente. ma per chi è abituato da quando aveva 15 anni a usare Google e a trovarsi il primo risultato come quello giusto, per loro è difficile capirlo. è incredibile come la gente si fidi di Google (e non solo di Google purtroppo…)

possono esserci diversi livelli dei significati, anche legati alla struttura stessa dell’html per esempio?

- si, il fatto di usare il grassetto può servire per usare diversi significati, perchè magari lo usi in senso figurato

come fai a dosare?

- abbiamo approssimazioni imparate nel corso degli anni. ci sono una serie di meta logiche che abbiamo imparato negli anni e sono cose che raramente cambiamo.

come definiresti l’utilizzo della semantica tra documenti collegati tra loro (es. via link ipertestuale)

- la presenza di un link per la parte semantica non è rilevante perchè la correlazione e il rapporto di vicinanza tra due documenti sono basati sui concetti piuttosto che sulle relazioni dirette. Puoi linkare due documenti non correlati e viceversa. per me la vicinanza semantica tra due documenti può essere diversissima, quindi la semantica tende ad ignorare gli aspetti legati ai link. la semantica lavora sul contenuto.

è possibile usare la tecnologia semantica con un layer adatto a qualsiasi lingua?

si- è quella parte che si stacca dal lessico e riguarda la rappresentazione del mondo. in qualunque lingua del mondo esiste almeno una parola per definire un tavolo. il concetto di tavolo in alcune culture è minimale e ridotto (magari dove non si usa). C’è una parte di semantica che è indipendente dalla lingua però deve esistere anche una parte dipendente dalla lingua. C’è chi ipotizza che pensiero stesso sia linguistico e chi dice che non dipende dalla lingua. puoi cercare di fare più lavoro possibile in modo indipendnete dalla lingua, con meta rappresentazioni.

che ruolo potrebbe avere la compilazione di documenti nei formati di linked open data rispetto all’applicazione di software semantici?

Potrebbe sicuramente aiutare il sistema a capire meglio il contenuto e a ridurre l’ambiguità

- se una macchina riesce a “capire” il corretto significato, a che punto siamo con una “scrittura” creativa di nuovi contenuti da parte di una macchina?

Molto indietro: ci sono ottimi programmi che scrivono testi fattuali con qualche spunto apparentemente creativo (ad esempio, cronache sportive di eventi minorei partendo dal risultato e da qualche altro dato oggettivo) ma oltre questo non c’è nulla di veramente rilevante (e non credo ci sarà per molti anni ancora).

A volte chi compra SEO fa un’assunzione errata. Il cliente tende a confondere l’acquisizione di traffico con l’ottimizzazione. L’ottimizzazione è un processo che se ben eseguito porta come conseguenza ad una crescita di traffico, ma comprare ottimizzazione non equivale a comprare traffico, sia chiaro.

Per colpa di questa semplice confusione semantica (facilitata dal fatto che la parola SEO va di moda, tanto da sembrare agli occhi del cliente un sinonimo di “traffico gratis”) spesso i clienti “nuovi” arrivano chiedendo assicurazioni (che nessun SEO può dare ovviamente), garanzie, o piani “soddisfatti o rimborsati”.

Credo che sia giusto considerare l’ottimizzazione per i motori di ricerca esattamente per quello che è, ovvero un rischio. Un investimento rischioso, che può dare risultati e può non darne. Questo indipendentemente dalla bravura del SEO. La cosa divertente è che la bravura del SEO viene sempre “ricostruita a posteriori”, e dai risultati ottenuti non è possibile ricavare un indice attendibile per sapere se anche in futuro questa persona continuerà ad avere gli stessi successi, o se è stata una botta di culo, per capirci.

Avendo lavorato anche per grossi brand, posso dire con certezza che di tutte queste cose al cliente non importa nulla, o meglio, se sanno che hai occupato posizioni di prestigio tanto gli basta, si fidano. Il brand genera quell’alone di autorevolezza che spesso è abbastanza per far parlare la gente in termini positivi o negativi, senza che si entri mai nella valutazione tecnica del lavoro svolto.

Tutta questa lunga prefazione per dire che io di solito non prendo clienti nuovi, mi trovo bene coi miei progetti e coi clienti attuali e così, quando a febbraio una persona che stimo molto mi ha chiesto una mano per un suo cliente, stavo per dire no come sempre, però stavolta ho detto “e se invece ti trovo un junior che ti segue passo passo, e io supervisiono il lavoro fatto una volta al mese?“. L’idea è piaciuta e così sono partito con una nuova avventura: trovare un SEO Junior che facesse il caso del mio amico e del suo cliente.

Come faccio i colloqui SEO

Questa volta ho pensato di fare in piccolo quello che avevo visto fare durante i colloqui di Google. Sono partito facendo una piccola pagina html nella quale non c’è l’indirizzo email a cui mandare il CV (a prima vista). Poi ho incollato questa pagina (decisamente bruttina) sui social network e su qualche community su Facebook dicendo “stiamo cercando un SEO Junior, per un piccolo progetto di 6 forse 12 mesi, se interessati mi mandate le candidatura qui? LINK”.

annuncio-lavoro-seo

La descrizione è volutamente timida e breve perchè non cerco “gasati” ma solo persone con la curiosità e la voglia di lavorare ad un progetto continuativo.

Ovviamente, solo quelli un minimo curiosi hanno saputo trovare l’indirizzo email a cui mandare il CV, in questo modo ho ricevuto 9 CV tutti di discreta qualità (solo 2 CV poco mirati). A quel punto dopo una veloce scrematura manuale (questo si, questo no, questo forse – quindi si, ecc.) sono passato alla prima veloce domanda via mail (che faceva già parte della mia valutazione).

Questo è lo schema che ho usato:

schema colloquio seo

La prima colonna è stata resa anonima, contiene una lettera al posto dei nomi dei candidati. La seconda colonna contiene la mia impressione riassuntiva con la quale mi ricordo del candidato. Le valutazioni del primo contatto via email sono queste:

  • il Tempo che la persona impiega nel rispondere
  •  Comunicazione – abbastanza autoesplicativa
  • il parametro di Solidità / sincerità è un parametro “a pelle” che misuro secondo la mia esperienza (il candidato può sembrare sia solido che sincero, oppure solo sincero ma poco solido, il valore che segno nella cella è il più basso dei due)
  • il parametro sull’indipendenza riassume il grado di intraprendenza.

Tutti questi fattori ovviamente pesano pochissimo essendo mie opinioni superficiali, mi servono però per “bilanciare” la persona rispetto al passo due, nel quale valuto la performance tecnica.

Nel secondo step (sempre via email) mando nello stesso istante 3 domande a tutti i candidati e poi valuto:

  • il tempo di risposta
  • la solidità della risposta
  • l’esposizione (mi servirà principalmente perchè questa persona dovrà stare inhouse presso il cliente, quindi le sue doti comunicative oltre che il suo sangue freddo nel dare risposte coerenti e non istintive sono importanti)
  • siccome il nostro lavoro è costante apprendimento, prendo il punto meno solido nella risposta del candidato e gli do un aiuto. Poi valuto la solidità della risposta dopo il mio aiuto.

A quel punto procedo col colloquio telefonico, durante il quale si completa la mia “immagine” sulla persona, ed estraggo un riassunto della possibilità di collaborare con quel singolo candidato, specie se ho affrontato i temi location / paga / tempo. Avendo valutato discretamente le persone anche dal punto di vista tecnico posso quindi andare dal cliente ponendo alcuni paletti del tipo:

Candidato A: candidato ideale, è nel budget e ha una buona conoscenza tecnica oltre ad un mix delle doti principali che servono per gestire bene la posizione.

Candidato B: buona preparazione tecnica (non ha avuto bisogno dell’aiuto) ma già troppo indipendente, ha una sua attività per interrompere la quale necessita di molto più budget perchè valuta seriamente un trasferimento lontano da casa (data la disponibilità al “salto” anche se fuori budget mi sento di presentarlo al cliente).

Candidato C: anche se ha sbagliato impulsivamente il primo set di domande tecniche, dal colloquio risulta essere una persona chiara e di qualità. Abita comunque lontano quindi ci sarebbe un problema logistico.

I candidati non adeguati alla richiesta invece non vengono comunicati al cliente e sono:

Candidato D: persona dalle buone doti umane e con alcuni skill SEO, che tuttavia non ha ancora messo a “fuoco” una propensione per la branca specifica importante per il posto disponibile.

Candidato E: molto preparato, non è risultato evidente dai primi contatti vista la sua comunicazione essenziale al limite del maleducato. Ha poco tempo libero e valuterebbe eventuale disponibilità con budget fuori dalle disponibilità del cliente.

I candidati che non hanno passato la prima selezione via mail sono comunque interessanti dal punto di vista “antropologico” (cioè mi stanno simpatici) e quindi li metto comunque su questo post per onore della cronaca.

Candidato F: ottimo tecnico, si capiva fosse fuori budget già da subito

Candidato G: non preparato, ci ha “provato” lo stesso.

Candidato H: personaggio altalenante con picchi di genio e lacune colossali, impossibile da presentare al cliente.

conclusioni

Questo post nasce dall’insofferenza che ho provato durante tutti quei “le faremo sapere” ricevuti a tanti colloqui, ai quali non è mai seguito nessun “sapere” ma solo un silenzio indeterminato. Spero di esservi stato utile, e voi come fate per trovare un bravo SEO durante un colloquio?

Di seguito un grafico con alcuni “tempi” di lavorazione (in totale tutto il processo mi ha preso un giorno e mezzo di tempo)

flusso colloqui seo

aggiornamento giugno 2014: son passati 2 mesi…

e così Eugenio Tommasi, da Calimera passando per Praga ora lavora a Milano presso il cliente che mi ha commissionato il recruiting. Il progetto procede, tra difficoltà, problemi di brand, 8000 prodotti e tanti, tanti spreadsheet.

Da quando Raffaele nel 2007 mi ha assunto, non faccio altro che SEO. sono 7 anni tra poco. Da quando mi sono messo in proprio ho fatto 2 seoCamp, per condividere quello che avevo scoperto, studiato e verificato. Poi, ho iniziato a lavorare per big brands (ma solo per amicizia di Matteo prima e Stefano poi), mi sono “chiuso” e ho messo da parte soldi. Ho comprato casa cash nel 2012 (ok, non da solo, la mamma mi ha dato 30.000 euro), ho pagato tutte le tasse tranne l’inps sulla p.iva, per la quale mi aspetto una botta davvero salata prima o poi.

Abbiamo una casa piccola, ma nostra. Abbiamo una splendida figlia e siamo moderatamente affiatati come coppia (è più difficile trovare la persona giusta che il lavoro giusto, motivo per cui nel 2010 non ho lavorato per un anno per cercare una persona come Martina).

Ho giocato sporco in alcuni casi, mai comprato link per via della taccagneria, però link infilati in qualche wiki dimenticato dal tempo sì, commenti wordpress un po’ giusto per mettere la firma sì, keyword stuffing sì. Ho messo nei contratti di collaborazione la clausola che volevo il link al mio sito, ad alcuni amici il link l’ho chiesto. Ma soprattutto, mi comporto come se google non sapesse chi sono e cosa faccio.

ho 6 account gmail, e un account su ogni sito che consenta login. Non si sa mai che un giorno nella pagina di profilo mettano lo spazio “url del mio sito”.

Le co-occorrenze le uso dal 2007 nell’esatto modo che ha descritto Francesco (questo stesso post serve come ringraziamento a lui) e no, non ho un modo per calcolarle… vado a istinto (cosa che fa sbroccare alcuni manager). Uso Webmaster tools da quando è nato, e lo trovo più utile di analytics. Link interni come se piovesse, non necessariamente su keyword esatta ma su topic esatto, quello sì.

Per programmare un’ascesa uso i tempi di aggiornamento, non tutti subito, non troppo raramente (ho descritto i tempi giusti in cui fare modifiche qui).

Parto sempre da long tail, impilo come mattoni le autorevolezze di ogni parola che porto nella top 2. Poi attacco le key secche, ma solo se il cliente lo chiede e solo se ho bisogno di traffico preciso.

stats

In generale, vedendo quanto funziona male Google, lavoro con la paura in cuore. La paura mi sveglia al mattino e mi dice buona notte la sera, e per combatterla uso solo due armi: procrastinazione e lavoro caotico. Sto ingrassando e a volte sono antipatico, anche coi clienti, coi quali comunque tendo a scherzare il più possibile.

Ultimamente sto dando meno importanza al SEO e più importanza alla monetizzazione, motivo per cui ho dovuto studiare un fracasso di altra roba che comunque a voi seo non interessa (per ora…).

Questo modo di lavorare funziona bene per le vanity ma non è scalabile, me ne sto facendo una ragione.

Nonostante mi dimeni a più non posso, ancora non capisco perchè Google non mi assume. Probabilmente perchè mi piace barare. Mi sono serviti 3 anni per liberarmi di questi segreti, ma alla fine, cel’ho fatta.

Aprire i tuoi segreti serve a tutti

Uso le parole di Francesco: se volete davvero fare qualcosa di utile, condividete il modo esatto in cui state lavorando adesso, come ho fatto io. Nessuna squadra, nessun gomploddo. Cambiate voi stessi… Cambiate l’Italia. :-)

Anche se questa parola “master” non mi piace perché sembra sempre ci siano chissà quali magie da insegnare e poi alla fine è sempre sinonimo di “corso molto costoso”, mi hanno chiamato per qualche docenza e così ho accettato cercando di portare il meglio che posso.

seo training

Seo Training – SEO Master

Tutte le info sul sito del corso SEO Master, in generale questo è bello perché essendo tenuto da un’azienda vera e propria (DeaMarketing) si lavora su casi studio reali e soprattutto alla fine c’è una ottima possibilità di trovare lavoro (per esempio sono stati assunti alcuni partecipanti del master dell’anno scorso). PS. scrivimi una mail per chiedere il coupon buono sconto del 10%.

Gruppo24Ore

Il Sole 24 Ore Formazione

Master Informazione Multimediale e Giornalsimo Economico 2014

Il 26 giugno 2014 terrò la classe di approfondimento SEO per gli studenti del Master giornalismo economico e multimedia, sempre nella sede di via Monterosa, presso la Business School del Sole 24 Ore.

Master Nuove Professioni Digitali 2013

Ho curato il corso dedicato ai SEO Specialist del Master Nuove Professioni Digitali nella Business School del Sole 24 Ore, in via Monterosa a Milano – 13 e 14 settembre 2013

qui trovate le slides del corso:

Read more »