DOM senza restrizioni

Come qualunque altro sviluppatore web mi sono imbattutto nel classico problema dell'accesso al DOM di una risorsa web di un differente dominio rispetto all'applicazione che stavo sviluppando. Le modalità di accesso ai nodi (o tag) di una pagina di un sito esterno, attraverso automazioni di eventi applicati su iframe o finestre popup in genere sono soggette a forme di protezione da parte dei browser e dei domini stessi che ospitano la pagina. Tali misure però sono aggirabili, perchè anche se le indicazioni sono date dai server, l'implementazione è lasciata ai browser e questi, se opportunamente configurati, possono ignorarle. Armato di buona volontà, e scelto Chrome come browser di lavoro per aggirare le politiche CORS (Richieste HTTP da domini incrociati), ho trovato online una configurazione che faceva al caso mio, ma lungi da farla funzionare senza adottare ulteriori accorgimenti: ho dovuto penare per arrivare alla soluzione completa e funzionante! Pertanto, con questo articolo, voglio fornire ai lettori la soluzione chiavi in mano, funzionante e testata alla versione attuale del browser (la 69) per facilitare il lavoro a chi necessita dello stesso strumento. Chrome, permette di accedere ai contenuti cross domain, attraverso l'opzione di avvio --disable-web-security (opzione che abbassa la sicurezza del…

Rendering asincrono dei CSS

Far convergere le esigenze di sviluppo web con le indicazioni di Google PageSpeed Insights è una vera sfida, soprattutto se si ha a che fare con piattaforme di gestione contenuti o ecommerce preconfezionati da customizzare. La condotta da adottare nell'integrare script o css dovrebbe rispettare le seguenti regole: Evitare collegamenti a file esterni, perchè ogni blocco esterno rallenta la velocità di caricamento Trovare un metodo per renderizzare subito i fogli di stile o gli script relativi alla zona della pagina above the fold, contemporaneamente al caricamento della stessa Caricare in modo asincrono css e script relativi alla zona non above the fold Per gli script lato client, il problema è superabile aggiungendo async o defer come attributo al tag <script>. Mentre per i CSS il problema si complica: Spesso si ha a che fare con piattaforme che aggiungono css dentro la sezione <head> con il tag <link rel="stylesheet" href="path/fogliodistile.css" /> Riuscire ad individuare il codice lato server che si preoccupa di fare questa aggiunta, è già un lavoraccio. Individuato il punto, si pongono i problemi di ottimizzazione: come spostare il caricamento del css in fondo alla pagina? renderlo asincrono e contemporaneamente evitare una chiamata di blocco HTML esterno? Ho pensato…

Un cyberspazio imperfetto, ma funzionale

Dopo anni di esperienza e approfondimenti sul tema, sono giunto a conclusione che la ricerca della perfezione nella stesura di codice per il web è un miraggio. La complessità dei problemi e le varie sfaccettature presenti in qualunque progetto, rendono impossibile trovare un giusto equilibrio nel prodotto finale, e così come accade per un abito stretto che quando viene tirato da una parte inevitabilmente lascia scoperte altre parti del corpo, cosi accade in informatica e nello specifico, nel Web development . Mi accorsi di questo problema quando in una chiaccherata su un famoso blog di web design, venne fuori l'argomento del rapporto tra captcha e accesso ai disabili e ancora ero un "neofita" del settore. Non essendoci una soluzione valida a riguardo, tuttora quel dibattito che girava intorno ad una domanda, attende risposta : "Viene prima la sicurezza o l'accessibilità?" Ho individuato 5 aree specialistiche che si contendono, di volta in volta, la priorità nello sviluppo web. Tutti sono ingredienti necessari, ma solo uno è indispensabile (il primo). Il contenuto informativo e le funzionalità di servizio. Questo è l'unico ingrediente indispensabile. Lo scopo per cui nasce un sito è quello di fornire un servizio e tale servizio deve funzionare anche…

Connessioni tra SEO e livello di trasporto TCP

Tutti i consulenti SEO sono consapevoli, più o meno, dell'importanza della velocità di caricamento di un sito web. Sanno che questo fattore influisce sia sulla riduzione del tasso di abbandono dei visitatori, sia sul buon esito della scansione degli spider-bot dei motori di ricerca. Ma perchè ? Cosa c'è dietro a questa ossessione per la velocità ? Un "mistero" che aleggia nientemeno che su un algoritmo usato per il controllo della congestione a livello di trasporto del protocollo TCP può influire addirittura sulla SEO ? ebbene si ! E' un argomento ostico, ma chi avrà la pazienza di seguirmi in questo articolo, sicuramente alla fine ne capirà qualcosa in più e avrà sprecato bene il suo tempo. Andiamo con ordine: La comparsa di reti telematiche sempre più veloci, non solo a livello di reti cablate ma anche mobile (pensiamo al 4G, e a breve il 5G) sta spingendo inevitabilmente l'utenza a ricercare delle esperienze di navigazione altrettanto veloci. Secondo Google, nel caso delle connessioni mobile (che in genere sono più lente di quelle cablate), l'utenza si aspetta in media una risposta per ogni richiesta web non superiore ad 1 secondo. Tale secondo però è così suddiviso: 300 ms di ritardo…

Il nazionalismo sportivo

"Questa è l'italia che vogliamo" o "Realtà 1 - Pontida 0" sono frasi senza senso. L'idea di indossare una maglia azzurra e sentirsi per tale motivo automaticamente italiani è una delle tecniche di addomesticazione umana che sono state adottate per dividerci gli uni dagli altri. Al confine con la francia, la svizzera, la slovenia, l'austria se si nasce 100 metri da un lato si è italiani, se si nasce 100 metri dall'altro lato si è stranieri? O si arriva al punto di dire che le gare sportive sono patrimonio di tutta l'umanità ed espressione della vitalità e della gioia umana e si tolgono i riferimenti nazionalistici o si finisce con l'ipocrisia di dire che una nazione non è individuabile dal fenotipo maggioritario che ne caratterizza la sua popolazione nonchè dalla cultura e dalle sue consuetudini dominanti. Oggi siamo tutti obbligati a non essere razzisti per legge (ovviamente e finalmente direi...). Ci siamo scrollati di dosso, almeno sulla carta, un'incomprensibile odio su base biologica , nata da una differenza che però non possiamo negare. Esistono altre forme di razzismo più subdole e delle quali non si vuol discutere...Siamo ipocritamente obbligati a rendere onore alla bandiera, all'inno, e a tutti i simboli…

Il codice si fece carne

La Harvard Medical School ha deciso di adottare come testo consigliato sia per docenti che studenti, il libro "Resi Umani" del Dott. Pietro Buffa e Mauro Biglino. A parte la soddisfazione di vedere un bioinformatico e ricercatore dell'Univ. di Catania sfidare il darwinismo da una parte e il creazionismo dall'altra, finalmente le "stravaganti" (o ritenute tali) ipotesi di esointerventismo e domesticazione umana cominciano a farsi strada nel mondo accademico che conta. Guardando l'uomo con l'occhio dell'informatico, egli non è altro che una macchina biologica dotata di un software, un sistema operativo (scritto nel DNA) e il cui kernel sta nella rete neurale celebrale (talmente complessa che l'intelligenza artificiale si è data come mission quella di riprodurla!) e un hardware (il corpo). Considerando che oggi l'uomo è in grado di pensare, teorizzare e dimostare algoritmi senza che vi sia una macchina reale sottostante, ma solo astratta (penso agli innumerevoli algoritmi di informatica quantistica), trovo un parallelismo con l'ipotesi esointerventista. Il nostro software biologico potrebbe essere stato pensato prima dell'hardware ed innestato successivamente in una macchina biologica pre-esistente. Parafrasando la bibbia tanto cara ai credenti, potremmo dire che ad un certo punto "il codice si fece carne". Se fosse così, il passo…

L'impatto del REG. UE 2016/679 sulla Net Economy

A due giorni dall'entrata in vigore del nuovo regolamento europeo sulla privacy noto come GDPR 2016/79, sono ancora enormi le perplessità del mondo informatico, ma anche delle aziende che si sono affidate da tempo alla new economy per accrescere le loro potenzialità di vendita e di marketing. Agli albori del web, non solo il protocollo HTTP era (ed è tutt'ora) senza stato (tanto per ricordare che i cookies furono un'invenzione successiva), ma dopo si diffuse l'idea che la net economy avrebbe proiettato l'economia verso un capitalismo più snello, veloce e flessibile. Oggi, invece, ci ritroviamo sommersi in un mare di burocrazia, creata da eurocrati privi di ogni contatto con la realtà lavorativa quotidiana ed incapaci di legiferare col bisturi. Tanto per essere chiari, le nuove regole non sono errate, anzi vanno nella direzione giusta. Non tengono conto però delle difficoltà implementative sia a livello di codice, sia a livello di organigrammi aziendali da porre in essere e "mantenere" economicamente. Prima di tutto, è logico pensare che non vi sia differenza tra piccole realtà aziendali (piccole e medie imprese) e big data. Chi si registra in un negozio elettronico sconosciuto fornisce i propri dati personali così come accade su amazon, ebay,…

Questioni di Sovranità

Leggo ricostruzioni per le quali nella trattativa lega-5s, la lega sia indispettita sul piano dei migrati e del rapporto con l'europa. Francamente ritengo che questi temi non siano più confinabili nell'alveo del centrodestra, cosi come i temi ecologici che fino a 20 anni fa erano argomento di sinistra o di partiti d'area (es. Verdi) sono diventati inevitabilmente di interesse collettivo (e finalmente, direi, visto che a Taranto o nella terra dei fuochi, si muore senza distinzione di colore politico). Aggiungiamo che Mattarella vuole porre dei paletti, come accettare il premier, imporre il rispetto dei vincoli europei, o far di tutto per evitare che Salvini vada agli interni. Dobbiamo porci una domanda: Se al posto del m5s, ci fossero stati gli altri compari di destra, i Brunetta, i Berlusconi ecc. i commentatori televisivi da strapazzo se lo sarebbero chiesti se il loro programma di governo sarebbe rimasto solo un libro dei sogni, senza cambiare quei paletti? Oppure in quel caso, Mattarella si sarebbe frenato nel ricordare Einaudi e il suo ruolo non notarile ? Il punto è che la sovranità appartiene al popolo...ma solo se il popolo è compatto e marcia tutto in un'unica direzione, e in particolare se i rappresentanti…