Algoritmo di LinkedIn

Algoritmo di LinkedIn e dei social network in generale
DATA
21/05/2020
AGGIORNATO
17/04/2023
Come funziona l’algoritmo di Linkedin? Il social network più diffuso in ambito business ha un algoritmo che sfrutta hardware e software per creare l'indicizzazione e il posizionamento dei contenuti. Ecco cosa c’è dentro veramente.

Nota dell'autore: Questo studio non è pensato per chiunque, bensì per me e per quella parte che ha un "peso silenzioso". Ci sono diversi professionisti che, indirettamente, mi hanno formato facendo divulgazione. A questa parte del web devo molto.

Premessa: conoscere le basi dell'informatica per comprendere gli algoritmi.

Esistono algoritmi procedurali/astratti (di processo) e algoritmi informatici (puro codice) per gestire utenti, gruppi di utenti e contenuti secondo regole determinate.

Conoscere l'algoritmo di un social network equivale a conoscere i meccanismi e i sistemi che lo costituiscono: in pratica, il modo in cui “pensa”.

In questo articolo esamineremo diversi aspetti tecnici, hardware e software, che consentono ai motori di ricerca e ai social network di indicizzare e posizionare i contenuti.

La conoscenza di queste informazioni consente di migliorare alcuni aspetti relativi alla SEO rispetto a:

  1. ranking delle ricerche
  2. posizionamento dei contenuti

LinkedIn, come qualsiasi altra società online, basa il proprio business sulla tecnologia. Conoscere la tecnologia utilizzata da queste società consente di sapere in modo più preciso, tramite il reverse engineering dei risultati, quali azioni tecniche e di marketing intraprendere per migliorare il posizionamento dei contenuti e dei profili.

In questo articolo utilizzeremo LinkedIn come esempio, ma le informazioni tornano utili per qualsiasi altro social network o motore di ricerca.

Nella prima parte dell'articolo prenderemo in considerazione alcuni concetti tecnici, con relativa spiegazione.

Social e motori di ricerca sono dei software

Potremmo definire LinkedIn come un motore di ricerca per il lavoro, un social o una piattaforma generica 3.0.

Indipendentemente da come lo consideriamo, LinkedIn è un sistema informatico, come Facebook o Google, cioè un insieme di funzioni (software) sviluppate su specifiche macchine (hardware) per svolgere determinati compiti aziendali. Uno di questi compiti è basato su procedure che oggi, per convenzione, vengono definite algoritmi.

Sotto all'interfaccia di LinkedIn ci sono quindi vari sistemi, sia software che hardware. Questi sistemi interagiscono tra loro per posizionare i contenuti e l'algoritmo relativo al posizionamento non è altro che un bilanciamento tra diversi fattori che influenzano la rilevanza di un contenuto.

Non è quindi vero che un algoritmo sia una sorta di "funzione" matematica che posiziona i contenuti e i profili. In questo caso l'algoritmo va inteso piuttosto come un sistema complesso nel quale esistono ANCHE delle funzioni per il posizionamento.

Che cos'è realmente LinkedIn e su cosa si basa

Il cuore di LinkedIn è costituito da tre elementi base, più altri sistemi "secondari":

Il web server su cluster con il proprio file system dedicato per compiere operazioni in "parallelo".

Poiché LinkedIn ha centinaia di milioni di utenti è necessario che il sistema, nel più breve tempo possibile, possa scrivere, organizzare e indicizzare i contenuti rendendoli disponibili su scala globale in "real-time".

LinkedIn ha più nodi e centri di controllo dove risiedono dei cluster (semplificando, un cluster è un gruppo di server) collegati tra loro.

Il sistema però, nel suo complesso, vede tutta questa rete di macchine collegate come un'unica entità. Definiremo questo sistema come un vero e proprio cloud.

Cluster su MongoDB
Qui un esempio di un cluster su MongoDB, un database che viene spesso utilizzato per creare servizi come i social network

A titolo di esempio possiamo vedere un software utilizzato per i BigData che si occupa di gestire enormi quantità di dati su più macchine dislocate su rete globale.

Hadoop

Riassumendo:

Un web server ospita l'applicazione e propone file e contenuti ai visitatori secondo delle regole create da programmi specifici.

  1. Un cluster è una "pila" di server che ha lo scopo di salvare i dati su più macchine per motivi di efficienza, velocità, stabilità, ridondanza ecc. Tali macchine formano una rete globale che chiamiamo comunemente cloud. Un cloud di cluster può essere utilizzato ad esempio per archiviare i dati dei database.
  2. Un file system è una tecnologia specifica per scrivere i dati nei server massimizando le prestazioni e l'integrità. Nel caso di LinkedIn il file system è ottimizzato per la manipolazione dei contenuti (creazione, lettura, modifica e cancellazione).

La velocità nelle ricerche quindi non è basata su nessun algoritmo. È solamente una questione infrastrutturale: se utilizziamo gli strumenti giusti e se li ottimizziamo per un corretto funzionamento otteniamo performance.

Mappatura dei dati e strutture ad albero via software

Java, ad esempio, è uno dei tanti linguaggi di programmazione utilizzato per interrogare i server e per restituire risultati in real-time.

introducing apache hadoop for developers

In questo caso, tramite Java, vediamo come sia possibile effettuare un Map-Reduce dei risultati.

Il Map-Reduce è un sistema che permette di creare una "mappa" di dati e di "ridurla" a dati essenziali che rispecchino una specifica richiesta.

Per esempio:

  1. L'elenco di tutti i post di LinkedIn è una mappa.
  2. I post di un utente specifico sono un "reduce" rispetto a "tutti i post" di tutti gli utenti.
  3. Uno specifico post è un ulteriore "reduce" dei post di un singolo utente.

Più semplicemente:

  • map = tutti i post di tutti gli utenti.
  • reduce = tutti i post di un utente.
  • nuovo reduce = il singolo post di un utente.

Questo approccio permette di rendere granulari le ricerche (nonché molto veloci). Anche qui, il famigerato "algoritmo di LinkedIn" non fa nulla di straordinario.

Database

Base di dati a oggetto

Che cos'è MongoDB

Base di dati a grafo

Base di dati a grafo

Database a chiave-valore

Twitter, ad esempio, utilizza Cassandra per collegare i post agli account

Cassandra su Wikipedia

Altri sistemi software

Esistono altri strumenti per ottimizzare il flusso dati e l'ecosistema di LinkedIn come:

  1. Sistemi di bilanciamento del carico / traffico: quando un nodo di server viene messo sotto pressione una porzione del carico di lavoro viene dirottata su altri nodi. Questo smistamento avviene automaticamente e serve per ottenere efficienza.
  2. Server proxy cioè hardware/software che caricano alcune parti di LinkedIn esternamente al software principale.
  3. Cache ovvero memorizzazione statica di file dinamici. Questi dati vengono recuperati usando specifici database chiave-valore: vengono collegati cioè determinati contenuti (i post, ad esempio) a determinati file (ad esempio gli allegati e le immagini).

Alcuni strumenti che compiono questo tipo di operazioni sono:

Memcached

Redis

Redis è un software utilizzato da alcuni provider come servizio aggiuntivo per migliorare la velocità di caricamento dei post su soluzioni create con Wordpress.

Qui un esempio di un provider che utilizza Redis con Wordpress.

Nella home di questi software troviamo spesso un riepilogo del funzionamento di base a livello concettuale.

Questi strumenti vengono "agganciati" ai primi e servono per svolgere diverse funzioni, tra le quali:

  • velocizzare il sistema
  • minimizzare il consumo di risorse
  • aumentare l'usability
  • valorizzare i contenuti dal punto di vista dell'engagement (si fanno più operazioni in meno tempo, ovvero la piattaforma è più reattiva)

Visibilità dei post su LinkedIn

Premesso quanto sopra, la visibilità di un post e dei click che questo riceve, si fonda su questa architettura, che è sempre indipendente dalla presenza di un algoritmo.

Perché è indipendente? Perché con questa architettura è possibile creare una copia esatta di LinkedIn. Con le stesse identiche funzioni, tipi di interazioni e qualità dei risultati.

Non simile: uguale.

Le variazioni che vediamo sulla visibilità dei post dipendono semplicemente dal numero di actions (share, click e commenti) e da altri fattori di seguito descritti.

Gli unici elementi che vengono presi in considerazioni sono quelli forniti da LinkedIn. Un modo semplice per conoscere quali campi siano coinvolti a livello di reach è quello di consultare la tabella relativa alle statistiche nella sezione developer di LinkedIn

{
  "paging": {
    "count": 10,
    "start": 0
  },
  "elements": [
    {
      "totalShareStatistics": {
        "uniqueImpressionsCount": 9327,
        "clickCount": 109276,
        "engagement": 0.007549471334119487,
        "likeCount": 52,
        "commentCount": 70,
        "shareCount": 0,
        "commentMentionsCount": 0,
        "impressionCount": 14490816,
        "shareMentionsCount": 2
      },
      "organizationalEntity": "urn:li:organization:2414183"
    }
  ]
}

Come si vede dall'esempio precedente esiste il parametro engagement che viene appunto calcolato utilizzando le actions contenute nell'oggetto elements.

Gli algoritmi, nel modo comune di intenderli, sono una cosa diversa dall'infrastruttura e successivamente capiremo perché.

Non è quindi corretto parlare di "algoritmo di LinkedIn" quando ci stiamo riferendo ad aspetti funzionali del sistema che non implicano l'utilizzo di alcuni parametri-utente (actions) per servire determinati contenuti.

Cosa succede quando interagiamo su Linkedin

Quando si compie un'action (share, click, commenti ecc.) il contenuto viene riproposto nel feed agli utenti della cerchia di chi ha generato quella specifica action.

Questo avviene in relazione alla fascia temporale e ad altri fattori intrinsechi di visibilità del post. È un sistema che chiamo "a visibilità inversa".

i programmatori chiamano queste cose "funzioni", mentre l'utente "medio" chiama l'insieme di queste funzioni "algoritmo".

Tenendo in considerazione quanto sopra, proseguiamo.

Poniamo che nel feed di un utente compaia un post e che questo non venga letto nell'arco temporale in cui gli slot dei post devono essere ancora riproposti all'utente.

La segnalazione avviene per mezzo di una notifica specifica per ogni utente e tracciata con un singolo URN, per ogni action su singolo post. Se non avviene un’action il post scorre in timeline, quindi è possibile recuperarlo solo andando a ritroso, cioè scorrendo il feed.

Questo implica che tutti i nostri utenti e quelli delle loro rispettive cerchie devono essere collegati in "quel" preciso momento (al momento dell'action) e guardare quella porzione di stream (lo slot dei post).

In sostanza se un utente della nostra cerchia non clicca un post abbiamo meno probabilità di vederlo poiché LinkedIn mostra sia i post dei collegamenti diretti e sia i contenuti segnalati dagli utenti (di primo livello) tramite una action.

Per questo la visibilità dei post è inversa, perché non dipende solo da quello che facciamo noi ma anche da quello che fanno gli altri utenti della nostra cerchia

Inoltre se i nostri collegamenti scrivono diversi post e noi siamo assenti dalla piattaforma per diversi giorni avremo meno probabilità di vedere l'ultimo post poiché LinkedIn dovrebbe riproporre nello slot un numero maggiore di post.

È intuitivo capirlo: se scriviamo 100 post al giorno non otteniamo più visite. Anzi: non solo tecnicamente non otteniamo più visite ma anche dal punto di vista sociale infastidiamo la nostra cerchia che si troverà un numero di contenuti eccessivo provenienti dallo stesso profilo. Per questo LinkedIn filtra i post anche su base temporale.

Quante volte ci vengono riproposti contenuti scritti 6 mesi/un anno fa? Capita molto raramente e soprattutto se un utente collegato alla nostra cerchia li clicca. Notiamo quindi che LinkedIn ripropone sempre i contenuti più freschi in relazione alle actions rispetto al target.

Affermare che ci sia un algoritmo che modifica questo comportamento intuitivo non è corretto, almeno per quanto riguardi LinkedIn.

Tecnicamente non ci sono prove concrete che esista un algoritmo che modifichi l'autorevolezza di un post. Tutti i post che lo proverebbero sono in realtà privi di ogni base scientifica (a tutt'oggi 12/08/2020).

Senza contare che ci sono migliaia di esempi di contenuti senza alcun valore che ricevono migliaia di like (vedi i gattini o altre amenità).

Dal punto di vista etico, questo implicherebbe inoltre che LinkedIn manipoli le informazioni a proprio piacimento inficiando la qualità e l'omogeneità del sistema sopra descritto in favore della credibilità, reale o presunta, di un influencer, divulgatore o professionista con un certo seguito (si ho letto anche queste cose da alcuni "professionisti di LinkedIn", "pro social media specialist" & co.).

LinkedIn quindi ripropone ciclicamente i post nel caso in cui ci fossero "sfuggiti" ma non può farlo sempre, per ogni contenuto di ogni nostro collegamento. In base a come utilizziamo la piattaforma vengono riproposti dei post che hanno attinenza con le nostre interazioni (actions).

Filtraggio dei dati tramite oggetti

Il sistema concatena i contenuti, che possono essere indicizzati, in un “database a oggetti”. LinkedIn usa queste informazioni nei filtri di ricerca.

Il meccanismo di ricerca di un contenuto è basato su una tecnica denominata "faceted search".

Approfondimento: faceted search su Wikipedia

Qui un esempio di faceted search in MongoDB.

MongoDB, che ho usato solo a titolo di esempio, salva le proprietà dei post in un formato differente dai database tradizionali (per tradizionale intendo quelli relazionali, cioè quelli usati per far girare i blog tipo Wordpress, per capirci).

In sostanza i database tradizionali salvano i dati, concettualmente, come in un file Excel sfruttando le matrici (righe e colonne), mentre in un database a oggetti i dati vengono salvati con una struttura ad albero, all'interno di un oggetto che identifica uno specifico utente.

Qui una schermata che mostra l'utilizzo di una faceted search su LinkedIn.

LinkedIn faceted search

Anche in questo caso ci sono diversi "esperti" che vantano di conoscere "l'algoritmo di Linkedin" per la capacità di posizionarsi nelle prime posizioni dei risultati a seguito di una ricerca.

Vediamo come stanno in realtà le cose e come non esista nessuna segretissima "scatola magica" per ottenere gli stessi risultati.

I risultati, in realtà, si ottengono in modo piuttosto banale: più un utente utilizza una determinata chiave e più l'utente collegato a quel profilo che utilizza quella chiave comparirà tra le prime posizioni.

Nulla di algoritmico quindi: è solo un fattore di densità delle parole, ovvero più una parola è presente in un determinato contesto e più questa parola ha la probabilità di essere restituita da un sistema di ricerca basato su faceted search.

È quindi il database che, prevalentemente, assegna una pertinenza, non un fantomatico algoritmo di LinkedIn. Ci sono pro e contro sull'utilizzo di questa tecnologia.

Si possono anche combinare queste due tecnologie (matrici e oggetti) per ottenere risultati più spinti e per simulare un MapReduce con gradi di astrazione più elevati di quelli forniti nativamente da un solo database.

LinkedIn usa poi altri database a chiave/valore per fare altre cose.

Si può comprendere questo aspetto osservando la differenza di velocità di refresh della home e la velocità di refresh di un post che ha molti più object a esso collegati (commenti e like), i quali sono poi collegati al singolo object (il post e relativo utente).

Tradotto: un post non è altro che un oggetto del database. Stesso discorso per un utente.

Ogni oggetto contiene dei contenuti (per esempio i like e i commenti del singolo post). Anche i contenuti sono oggetti, cioè "componenti figli" di oggetti genitori (i profili).

Un oggetto ad albero

Ogni oggetto ha delle proprietà espresse come chiave/valore in un modello JSON oriented.

http://www.json.org/json-it.html

profilo_utente:{
  post_1:{
    titolo: "Come funziona LinkedIn",
    testo: "In questo post parleremo di..."
  },
  post_2:{
    titolo: "Come funziona un algoritmo",
    testo: "Oggi parleremo di..."
  }
}

Post_1 e post_2 sono oggetti "foglia" dell'oggetto ramo denominato "profilo_utente". "Testo" e "titolo" sono chiavi. Dopo i ":" ci sono i valori.

Ora che c'è un minimo di contesto si può passare all'argomento successivo: perché a moltissimi utenti sembra che su LinkedIn ci sia un algoritmo che favorisce il testo e non le immagini.

Cosa accade quando scriviamo dentro LinkedIn

Se scriviamo del testo stiamo implicitamente salvando una proprietà-oggetto come testo (diciamo un .txt, per capirci) dentro un database, il quale utilizza un algoritmo standard per cercare quel testo e concatenarlo con altri oggetti.

Possiamo definire questo algoritmo in questo modo:

riconoscimento del testo per prossimità con indice di scostamento arbitrario dei caratteri

Se scriviamo "maglionne" (con due "n") il database, grazie al proprio algoritmo interno trova "maglione" perché effettua uno scostamento arbitrario di un carattere, eliminando una "n" dalla parola "maglionne".

Si può inoltre settare il database per modificare sia il tipo di scostamento che la qualità di ricerca all'interno della stringa di testo.

Non è una magia di LinkedIn. Non è un algoritmo di LinkedIn. Sono funzioni già inserite nei software che LinkedIn utilizza, come ad esempio i database. Non c'è nulla di misterioso o "da scoprire" in tutto questo.

Tali sistemi si basano su quella che viene definita in gergo full-text multifields.

Questo è un algoritmo embedded (incorporato) del database e non è di LinkedIn.

È disponibile per chiunque, anche da testare (io stesso lo uso da anni, passando dati da MySQL a MongoDB e viceversa, in php/javascript).

Google per esempio utilizza la stessa tecnologia per effettuare il ranking (una "pesatura") di una pagina web in base alla semantica, alla prossimità, al contesto ecc. più altri 200 fattori più o meno noti.

Google ha sviluppato un apposito algoritmo per manipolare ulteriormente i risultati del database, basandosi in primis sulle preferenze dell'utente. In pratica quando siamo loggati e facciamo ricerche stiamo implicitamente dicendo a Google cosa ci piace, un po' come in Facebook.

Questo algoritmo si chiama PageRank (che pare sia stato "soppiantato" da sistemi ancora più evoluti, pronti per accogliere l'IA). Anche qui, mistero sull'implementazione e i rumors e diversi test dimostrerebbero che sia effettivamente così.

Ora questo retaggio non deve trarre in inganno l'utente di LinkedIn perché LinkedIn non è Google e i due sistemi funzionano in modo totalmente diverso, anche dal punto di vista dell'implementazione di un potenziale algoritmo di ranking.

Basta fare caso al fatto che la posizione dei post in LinkedIn è legata agli utenti mentre su Google, pur essendo legata ad una ricerca, che è sempre un oggetto, varia in base ad altri fattori ma primariamente è legata al contenuto e soprattutto alla pertinenza.

In altre parole, su Google potrei avere oggi una pagina in prima posizione e domani non vederla più perché il contenuto non è pertinente con quello che gli utenti ricercano.

Questo su LinkedIn non accade semplicemente perché i risultati scorrono in una timeline e vengono riproposti: non sono posizionati in modo statico rispetto a un algoritmo di ranking. Già questo è un buon indizio della non presenza/necessità di un algoritmo.

Il feed è come un diario: non è una classifica. I post hanno un punteggio, questo sì, ma che non ha NULLA a che vedere con la qualità delle ricerche, ovvero con la pertinenza, cioè la relazione intrinseca che esiste tra ricerca e risultato.

Tra i post più cliccati su LinkedIn notiamo quelli con i gattini glitterati, non a caso

gattini SEO LinkedIn engagement

Perché il testo è importante ma non è sottoposto ad algoritmo

Se scrivo in un commento "ciao", avrò salvato dentro il database a oggetti di LinkedIn una cosa di questo tipo:

comment = ciao

(dove "ciao" è il valore salvato e "comment" è la sua chiave che funge da contenitore del valore).

Più parole formano un file JSON, descritto prima: una struttura ad albero salvata come oggetto in formato JSON.

Se salvo invece un'immagine dentro LinkedIn, il database di LinkedIn salverà solamente il percorso dell'immagine.

esempio: img = https://www.linkedin.com/blabla/img/nome_file.jpg

Da qui si deduce che la ricerca full-text multifields con valori di prossimità non può essere applicata perché manca l'elemento da parametrizzare: il testo.

La funzione tuttavia collega i due oggetti (testo e immagine), ma questo non prova che esista un algoritmo, tantomeno prova che questo algoritmo, ove esistesse, provocherebbe una diminuzione del traffico su quel post in presenza di un'immagine contestuale.

LinkedIn salva nel database testi e percorsi alle immagini, non le immagini vere e proprie.

Ovviamente non può essere ricercata un'immagine usando delle parole se questa non è collegata a qualcos'altro (appunto il testo) o se l'immagine non è mappata da caratteri aggiuntivi e descrittivi (tag alt e description, didascalie, metadati EXIF, descrittori XML ecc.)

https://support.google.com/webmasters/answer/114016?hl=it

https://it.wikipedia.org/wiki/Meta_tag

https://it.wikipedia.org/wiki/Exchangeable_image_file_format

https://it.wikipedia.org/wiki/XML

Facebook (alias Meta), per esempio, adotta un algoritmo che legge il testo nelle immagini. LinkedIn non ha questa tecnologia.

LinkedIn ha invece una tecnologia per leggere le parole all'interno dell'audio dei video come (per primo) ho dimostrato in un reverse engineering del 22 ottobre 2019.

E su Google? A tutt'oggi, ci sono esperimenti che non confermano al 100% che Google utilizzi tale tecnica (effettuando dei test ho constatato che il testo non viene indicizzato o trovato all'interno un'immagine).

È stato rimosso? Lo usano solo per fare dei test interni? Sarebbe un argomento da approfondire.

Anche Instagram utilizza un sistema del genere ma qui ci sono le prove:

Instagram legge il testo nelle immagini

Andando a ispezionare il codice di un mio post si nota che Instagram ha estratto le parole presenti nell'immagine e le ha usate per associare internamente quel testo a quell'immagine.

Per questo ho scritto che è superficiale, per non dire errato, parlare di contesto algoritmico riguardo a LinkedIn quando le funzioni standard della piattaforma hanno già di per sé tutti quei sistemi di concatenazione, indicizzazione e ranking delle parole che permettono di rinfrescare la visibilità di un post semplicemente tramite la business logic del sistema generale.

Non ci sono trucchi o funzioni nascoste per scoprire come funzioni "l'algoritmo" di LinkedIn.

Il più delle volte si tratta di funzioni specifiche che fanno cose specifiche. Nel loro complesso consentono di ottenere risultati migliori per certi aspetti specifici. Ma non si può parlare di vero e proprio "algoritmo che aumenta la visibilitò di un post".

La parte logica in cui ha senso che esista un algoritmo

Poiché per quanto espresso sopra la business logic di LinkedIn si basa sulla raccolta precisa delle informazioni e sulla loro concatenazione (non algoritmica) vien da chiedersi: ma allora LinkedIn riesce a fare tutto quello che fa con dei software di terze parti?

Sicuramente no.

Se dobbiamo identificare un algoritmo, cioè una sovra-logica di business che modella matematicamente o funzionalmente determinati processi relativi ai post, possiamo sicuramente identificarla nei servizi LinkedIn Premium.

Per poter offrire i migliori annunci e i migliori servizi in target, LinkedIn deve capire cosa piaccia all'utente non solo attraverso quello che scrive ma anche in base a come si comporta sulla piattaforma.

Sostanzialmente un algoritmo esiste nella parte business di LinkedIn perché è necessario creare astrazione tra dati concatenati (od oggetti, che dir si voglia).

Come illustrato precedentemente, ci sono diversi modi, anche piuttosto complessi, per definire un target usando le impostazioni e i filtri di targeting pubblicitario messi a disposizione.

Gli inserzionisti hanno la possibilità di modellare campagne su target specifici e di proporre soluzioni basate sul comportamento (cioè testo/immagini/video, actions, relazioni ecc.) degli iscritti.

Questo offre la garanzia algoritmica che il target sia profilato, ma questa garanzia viene offerta all'inserzionista, non all'utente che usa la piattaforma.

Specifico inoltre che la "garanzia algoritmica" non implica necessariamente garanzia di risultato, perché un algoritmo è una funzione che tiene conto di un numero finito di passaggi quindi maggiore è il grado di espressività dell'algoritmo e maggiori sono le probabilità che i risultati siano pertinenti rispetto a una o più regole impostate a monte.

Il punto è che questi aspetti si possono valutare solo a posteriori, cioè dopo aver acquistato un servizio premium.

In un profilo standard (non premium) dobbiamo fare questo lavoro di "affinamento" a mano: siamo noi che dobbiamo impostare i parametri di ricerca più appropriati per capire quale sia il nostro target.

LinkedIn non fa automaticamente targeting rispetto alle nostre esigenze semplicemente perché non le conosce.

La penetrazione dei nostri annunci, ad esempio, è resa possibile grazie alla possibilità del sistema di rimettere nello slot gli stessi annunci rispettando un budget. In LinkedIn ogni target è una cerchia perché il sistema delle cerchie è basato, come abbiamo visto, su database a grafo (prevalentemente Neo4J).

Qui un approfondimento su LinkedIn e Neo4J.

LinkedIn non ci collega al nostro utente ideale. Siamo noi che dobbiamo (se non facciamo advertising) fare marketing e crearci una web reputation tramite contenuti e azioni. LinkedIn permette "solo" di strutturare il profilo, ma non fa preferenze per nessuno.

In sostanza il risultato che raggiungiamo dipende esclusivamente dalla nostra capacità di bilanciare sapientemente aspetti di marketing e di advertising.

Non ci sono trucchi o segreti: tutto si comprende con la conoscenza tecnica dell'infrastruttura.

Un vero algoritmo

Cos'è quindi un algoritmo?

Senza reinventare la ruota possiamo vedere un semplice algoritmo che mette in ordine crescente una serie di numeri casuali.

Questo è un esempio molto semplice di un vero algoritmo: una funzione che, data una serie di elementi, crea un risultato basato sugli stessi elementi ordinandoli rispetto a una regola generale.

Considerazioni sul contesto

Stupisce il fatto che molti, troppi, utenti (auto)qualificati come professionisti del web marketing e non solo si spingano a dire cose che vanno oltre a tale esposizione dei fatti, per affermare un principio secondo cui LinkedIn influenzi a suo comodo i contenuti in base al formato, alla lunghezza o addirittura all'authority di un utente.

Questo alone di mistero sugli aspetti esoterici "dell'algoritmo di LinkedIn" che moltissimi "esperti" mettono nelle loro "ricerche" non sta in piedi in nessun modo.

Su cosa ho basato il mio studio dell'algoritmo di LinkedIn?

  • ho dedicato centinaia di ore e risorse
  • ho effettuato centinaia di test (molti A/B simmetrici ed asimmetrici),
  • ho misurato/testato centinaia di aspetti,
  • ho letto ed analizzato migliaia di profili e relative interazioni
  • ho misurato le le fasce orarie e i click (e raggrupparle secondo la teoria degli insiemi con diverse proprietà parametrizzabili in formato JSON),
  • ho scritto funzioni in PHP per microvirtualizzare degli aspetti di LinkedIn per dedurre il delta dell'impatto medio che hanno le actions (like, commenti e condivisioni) in relazione all'engagement (bilanciato/commisurato dalle cerchie ancora più esterne che LinkedIn segnala nella ricerca avanzata, di cui ho anche già dato esposizione empirica)
  • ho scritto funzioni in PHP per eliminare i collegamenti che hanno tolto il follow al fine di aumentare l'engagement
  • ho quantificato e qualificato i tipi di testo, la struttura semantica delle parole, il contesto degli argomenti, le categorie argomentative e con cosa siano collegate (dal punto di vista tecnico, informatico, sociologico, empatico ecc.)
  • altri centinaia di aspetti concatenati tra loro nelle formule che ho ritenuto più opportune per la mia ricerca e per il mio campo di indagine.
Fare web marketing è intuito, conoscenza e creatività.

Vendere keywords e "ottimizzare parole chiave per LinkedIn" è roba da quinta elementare, spacciata per strumento professionale che risolve problemi di visibilità. Fa specie infatti leggere di offerte/servizi del genere e vedere imprese che buttano soldi rivolgendosi ad autorità/eccellenze/esperti/guru che "vendono le migliori keywords per il tuo website".

Ma perché ora parlo di keywords relativamente ai siti web? Sono off-topic? No.

Ne parlo perché questo fenomeno, ora, avviene nei social network e nel web marketing basato sui social.

Diverso contesto, stesse parole, stessa fuffa.

Non è stato facile fare questo lavoro e dedicarci anni, ma ho ritenuto opportuno farlo perché credo che una persona non si possa definire esperta di qualcosa semplicemente perché "la usa usare" o perché ha grande dimestichezza su come utilizzare uno strumento in concessione d'uso.

Questa è esperienza, non professionalità e nemmeno competenza.

Unendo questo aspetto a "profonde conoscenze di marketing Kotler-Oriented" (che come tutti ho studiato anch'io), tutta teoria, pure scarsa e niente pratica, vengono fuori gli esperti che spiattellano la filosofia del "lei non sa chi sono io", dell'esperienza 30ennale e del "ma i nostri clienti sono felici", "i nostri numeri parlano per noi", "noi abbiamo 10/20/3000/un miliardo di dipendenti", "300 miliardi di follower", "700 fantastilioni di like", "noi" e ancora "noi, noi e noi".

Tutte argomentazioni fallaci basate sulla fuffa per vendere fuffa-SEO nei social nascondendosi dietro all'inganno di una conoscenza di un "complicatissimo" quanto "segreto algoritmo": il famoso trucco della scatola magica per i gonzi.

Ho pensato di esporre una piccola parte dei miei studi in campo web marketing e informatico. Avevo creduto, ingenuamente e a torto, che la mia indagine sarebbe stata utile agli addetti ai lavori per avere una conoscenza più approfondita di un mezzo potentissimo quale LinkedIn in effetti è.

Scomodando l'ovvio.

Con mio relativo "rammarico" mi sono accorto che non è così, o meglio lo è stato solo nel 70% dei casi, in base alle mie misurazioni (su un campione di 1000 utenti).

Quello che ho raccolto, pubblicando solo un'infinitesima parte delle mie analisi, corredate da spiegazioni ampie nonché semplificate, è stato un atteggiamento alcune volte avverso (intendo 30% avverso e 70% non avverso) e a volte avversamente diretto alla mia persona (1 su 5 di questo 30%, cioè un buon 5-6% del totale), per il semplice fatto che ho smontato negli anni la fuffa, sempre in buona fede e con educazione.

Per contro ho letto moltissimi commenti ed interventi altrui spesso creati ad arte al solo scopo di screditare gli altri per dare valore a chi li ha scritti.

Questione di onestà intellettuale dunque.

Posso capire che alle tiny-celebrities del web questo possa apparire scomodo e fastidioso (se un cliente sapesse che una campagna da € 10.000 alcune volte ne vale forse meno di € 1.000...), ma potrei capirlo ancor più se volessi utilizzare queste pubblicazioni come leva di marketing per invadere il campo di questi "esperti", dal punto di vista della loro visibilità, professionalità e potenziale clientela.

Cosa che non è: siamo su campi totalmente diverse, quindi non può esserci alcuna invasione.

L'amico dell'amico dell'amico: altro che "algoritmo"

Ho scollegato utenti che tentavano di fare questo con altri utenti (e non solo con me) perché mi ero accorto, durante l'iter analitico, che molti iscritti usavano bieche strategie di persuasione (social hacking disetico) solo per entrare in contatto con "le cerchie delle cerchie delle cerchie" al solo scopo di accrescere in modo artificioso la propria popolarità, in quanto l'utente medio ritiene, ingenuamente, che gli esperti siano quelli che hanno più follower.

Inoltre questi collegamenti vengono creati in modo artificioso e sono utilizzati in modo piuttosto fantasioso: fare i detrattori con una base di gonzi al seguito che li sostengano.

Domanda algoritmica, visto che molti "esperti" parlano di "algoritmi che premiano la qualità": pensate che il fantomatico algoritmo di LinkedIn sia intervenuto per "premiare la qualità" di queste interazioni farlocche?! Semplicemente non può farlo: questo è il problema del web, oggi.

Dal punto di vista delle connessioni (io) sono alla periferia, o meglio nel terzo mondo del web. Ma faccio anche "selezione", come ho specificato prima: questo è il "mio" algoritmo. Una tecnica che ho spiegato su LinkedIn attorno al 2017/2018.

Bisogna intendere ed immaginare l'algoritmo come ad un setup di cosa facciamo nel social.

Inoltre ho spesso condiviso le segnalazioni sulla fuffa, quelle più palesi. Quando a mia volta ho segnalato/messo-like sono stato alcune volte bannato proprio da determinate categorie...

Ho quindi stretto collegamenti con persone diverse dal mio settore, di tutte le età e luoghi d'Italia, senza cercare di scavalcare ruoli e nicchie sfruttando leve persuasive che oggi vengono incentrate prevalentemente sulla "conoscenza dell'algoritmo di LinkedIn".

Personalmente non so se esiste un algoritmo che ci stia portando in una "nuova dimensione" su LinkedIn. Credo con fermezza che non sia così, nonostante abbia sempre cercato di sconfessarmi utilizzando il principio einsteiniano:

una mente scientifica è una mente che dubita
Albert Einstein

Quello che ho sempre scritto nei vari post è che la piattaforma è molto equa e non ho mai notato sbilanciamenti immeritati verso alcuni utenti specifici. A LinkedIn questo bisogna darne atto.

Per un informatico o marketer, visto quanto sopra espresso, è difficile affrontare temi lavorativi relativi a questo settore se negli anni si sono create condizioni di percezione della realtà, diffuse tra le imprese e gli addetti ai lavori, basate su "ho la sensazione che", "mi pare", "credo che", "ho fatto un paio di test e", "il mio amico esperto mi ha detto che", "ma il massimo esperto di LinkedIn mi ha detto" , "eppure quando metto il testo succede che", "la mia agenzia mi ha detto che" e cose simili.

Perché ho scritto tutte queste cose? Non certo per polemica, ma per spiegare concretamente lo scenario in cui vengono diffuse le informazioni tecniche, creando disinformazione

Infatti:

Ciò che più danneggia la R&D non è l'errore sistemico, che può essere implicito, bensì il contesto in cui questa si trova a dover essere illustrata, dimostrata ed infine condivisa.

Vorrei ringraziare tutti quelli che mi hanno permesso, nel bene e nel male, di poter studiare questo sistema, perché anche dai commenti più crudi ricevuti (e a volte anche offensivi) ho potuto constatare che l'Italia non è un paese così uniformato dal pensiero unico come alcuni vogliono farci credere.

Ci sono molte teste e molte culture che si mescolano in modo proficuo, anche se non posso sottrarmi dal riconoscere che la tendenza all'apparire e al ricevere engagement sui social sia preponderante rispetto alla reale ricerca di collaborazioni per fare business, magari in tutto il mondo.

Anche questo aspetto impatta sulla visibilità dei post: la lingua...

Riassunto

  1. Buona parte di quello che certi "esperti di LinkedIn" chiamano algoritmo non è un algoritmo.
  2. La velocità delle ricerche non dipende da nessun algoritmo specifico.
  3. LinkedIn non ha un algoritmo che decide chi e cosa posizionare. Ha tuttavia dei filtri per eliminare determinate parole (cosa scritta tra l'altro anche nelle norme di utilizzo della piattaforma).
  4. La visibilità di un post è fornita da funzioni standard del sistema. Nessun algoritmo specifico oscura nulla in condizioni standard.
  5. È falso affermare che LinkedIn premi l'autorevolezza di un post.
  6. È falso affermare che per posizionarsi nei primi risultati delle ricerca sia necessario conoscere un fantomatico algoritmo di LinkedIn. La questione dipende in buona sostanza dalla densità delle parole e dai contesti con cui interagiamo. Questo aspetto non è un algoritmo di LinkedIn, ma uno dei parametri utilizzati dai database per restituire un risultato.
  7. La SEO su LinkedIn non è un'attività di posizionamento simile a quella effettuata con Google. È tutto legato alle actions, alle parole usate nel profilo e nei post: stop.
  8. È falso affermare che i testi su LinkedIn hanno una reach superiore rispetto alle immagini o ai video per via di un algoritmo. Tra l'altro ho pubblicato un articolo per una scoperta che ho fatto su LinkedIn dove ho evidenziato come il testo presente nei video influenzi la SEO.
  9. I veri algoritmi funzionali e proprietari di LinkedIn vengono utilizzati per collegare informazioni utili al loro business. Un esempio è la parte relativa alla correlazione che esiste tra profilo utente e target in una campagna di advertising. In ogni caso buona parte di questi codici non sono altro che semplici collegamenti basati su actions, cerchie e semantica delle parole.

Nulla di "algoritmico" quindi.