Aggiornamento mensile dello sviluppo Web 8⁄2018: il costo di JavaScript, etica nell'open source e QUIC
Pubblicato: 2022-03-10Costruire tecnologia e software è diventato un lavoro molto responsabile. Le persone si fidano dei prodotti che creiamo e anche loro possono avere un impatto significativo sulle loro vite. Considerando questo, non dobbiamo solo pensare a soluzioni inclusive, ma anche difendere e difendere l'etica, l'affidabilità e la sicurezza. È una posizione che ci dà potere.
Eric Meyer ha pubblicato un articolo che elabora i problemi che un Web solo HTTPS sta portando con sé. In esso, rivela che i paesi in via di sviluppo soffrono molto di questo sviluppo poiché spesso hanno cattive connessioni Internet e, a causa della crittografia, ora riscontrano più errori del sito Web rispetto a prima . Ben Werdmuller è intervenuto e ha pubblicato l'articolo "Stop building for San Francisco" in cui sottolinea uno dei maggiori problemi che abbiamo come sviluppatori: utilizziamo hardware e infrastrutture privilegiate. Costruiamo esperienze utilizzando gli ultimi iPhone, MacBook con connessioni Gigabit o 4G veloci, ma non consideriamo mai che la maggior parte delle persone che stiamo costruendo per utilizzare dispositivi e infrastrutture che sono ben lungi dall'essere così ben equipaggiati. Rendere il Web più sicuro è un'ottima idea, fuori discussione, ma dovremmo anche tenere a mente le conseguenze che la tecnologia più recente e le nostre decisioni di progettazione potrebbero avere per gli altri.
Notizia
- TypeScript 3.0 è stato rilasciato con un paio di comode funzionalità e correzioni del linguaggio.
- Implementati in Chrome già da un po' di tempo, i suggerimenti per i client sono una funzionalità straordinaria. Per migliorare la privacy, la funzionalità dei suggerimenti client per le immagini reattive è stata modificata con Chrome 67. Colin Bendell spiega le differenze e il motivo per cui i suggerimenti client sono così utili per le prestazioni.
- Gli sviluppatori hanno chiesto molto sull'Intelligent Tracking Prevention (ITP) di Safari e su come eseguire il debug di siti Web con esso abilitato. Ora il team di WebKit condivide la modalità di debug ITP che ti offre molta più flessibilità e strumenti per rintracciare i problemi.
- A partire da ottobre, la maggior parte dei browser diffiderà completamente dei certificati Symantec TLS e, quindi, bloccherà l'accesso ai siti Web che ancora li utilizzano. Aggiorna il tuo certificato se non l'hai già fatto.
- L'ultima versione di Chrome (68) porta una nuova notifica "non sicura" quando si visitano le pagine HTTP. Sii consapevole di questo e aggiorna i tuoi siti di conseguenza. Un'altra novità in Chrome 68 è la nuova API del ciclo di vita della pagina, un'ottima nuova API per gli eventi della pagina, nonché l'API del gestore dei pagamenti. La cache HTTP viene ora ignorata quando si richiedono aggiornamenti a un addetto ai servizi, portando Chrome in linea con le specifiche e altri browser. A parte questo, i valori del
cursor
grab
egrabbing
ora non sono prefissati nella nuova versione, finalmente.
Generale
- Se stai creando per Open Source, devi decidere quale licenza dovrebbe utilizzare il tuo progetto. Ora c'è una nuova opzione, la Just World License. È per gli sviluppatori che “sono d'accordo in generale con i principi del software open source ma sono a disagio con il loro software utilizzato come parte degli sforzi per distruggere vite, il nostro ambiente e il nostro futuro”.
- Le macchine di deep learning sono un argomento importante in questi giorni, ma alcune persone stanno esplorando algoritmi ancora migliori che superano facilmente le macchine di deep learning nei videogiochi.
- "Semplice, corretto, veloce: in quell'ordine" di Drew DeVault è un ottimo promemoria per stabilire le priorità direttamente nello sviluppo di software e web.
- Jonathan Fulton ha scritto una risorsa utile intitolata "I concetti di base dell'architettura che vorrei conoscere quando ho iniziato come sviluppatore web", che è una grande architettura web 101 e una base per i nuovi arrivati nel nostro settore.
Interfaccia utente/UX
- Ethics for Design è un progetto in cui dodici designer e ricercatori di otto città europee discutono dell'impatto, a volte dannoso, del design sulle nostre società e di cosa possono fare i designer per lavorare per il bene di tutti e non solo di pochi.
Utensili
- Prashant Palikhe ha scritto una lunga storia sull'arte del debug con gli strumenti per sviluppatori di Chrome, che consiglio vivamente in quanto è un riferimento molto completo per conoscere gli strumenti di sviluppo di un browser. Se utilizzi un altro browser, non è un grosso problema poiché la maggior parte degli strumenti sono abbastanza simili.
- WebP è un formato immagine con un paio di caratteristiche interessanti e probabilmente uno dei nuovi formati più conosciuti oltre ai comuni JPEG/PNG. Tuttavia, la creazione di immagini WebP può ancora essere una sfida, quindi Jeremy Wagner ha scritto una guida su come convertire le immagini in WebP.
- Douglas Creager introduce la nuova registrazione degli errori di rete che consente di istruire gli agenti utente a raccogliere lo stesso insieme di informazioni che apparirebbero nei registri del server.
- Molti di noi sono dipendenti da strumenti di comunicazione come Slack. La gente di Wildbit ha deciso di chiudere Slack per una settimana, con un effetto significativo sul modo in cui funzionano. Un caso di studio interessante su come tendiamo a sentirci troppo a nostro agio con uno strumento utile e a non usarlo più come dovremmo. Di tanto in tanto, è importante ripristinare le nostre menti.
- Dennis Reimann ha pubblicato la prima versione stabile di UIEngine, un workbench per lo sviluppo basato sull'interfaccia utente.
Sicurezza
- È in arrivo un nuovo Observer: l'API ReportingObserver ti consente di sapere quando il tuo sito utilizza un'API obsoleta o si verifica un intervento del browser. Finora, è disponibile in Chrome 69. Puoi facilmente utilizzarlo per inviare errori che in precedenza erano disponibili solo nella console al tuo back-end o al servizio di gestione degli errori.
Prestazioni Web
- Ti ricordi QUIC (Quick UDP Internet Connections)? Il protocollo ingegnerizzato da Google che usano internamente e che si sta configurando abbastanza bene per un uso più ampio? Mentre l'IETF sta attualmente standardizzando il formato verso la fine dell'anno, gli ingegneri di Cloudflare ora condividono la loro esperienza di test.
- Quando si dispone di contenuto generato dagli utenti, spesso non si sa se si dispone di un solo elemento o di un elenco di elementi da generare. In Colloq, volevamo eseguire correttamente la semantica e creare un sistema che ci consentisse di produrre un tag
p
quando nel contenitore è presente un solo elemento, altrimenti un elencool
/ul
con vari elementi dell'elenco.
Accessibilità
- Dave Rupert condivide le A11Y Nutrition Cards, un progetto che tenta di digerire e semplificare le aspettative di accessibilità quando si tratta di creare componenti.
- I collegamenti salta sono caratteristiche di accessibilità abbastanza comuni. Hampus Sethfors ora ha scritto un articolo sul motivo per cui molti dei collegamenti sono ancora interrotti e su come risolverli correttamente.
JavaScript
- Un anno dopo aver introdotto la loro Progressive Web App, Zack Argyle del team di ingegneri di Pinterest guarda indietro. È importante notare il motivo per cui hanno deciso di creare una PWA: "La nostra esperienza sul Web mobile per le persone in ambienti con larghezza di banda ridotta e piani dati limitati non era buona". Ma i risultati per loro sono incredibili da vedere.
- Philip Walton introduce la nuova API Page Lifecycle che ci aiuta a determinare più facilmente gli stati della pagina nel browser tramite eventi, come la pagina in background (non visibile), attiva, bloccata o addirittura terminata.
- Ops, sapete tutti che
eval()
in JavaScript non è valido, giusto? Ecco perché di solito ne vietiamo l'utilizzo nelle politiche di sicurezza dei contenuti. Ma Remy Sharp ci ricorda che esiste una linea di codice che è ugualmente dannosa per la sicurezza. - Addy Osmani ha studiato il costo di JavaScript nel 2018 e ora condivide le prove che ogni byte di JavaScript è ancora la risorsa più costosa che possiamo inviare ai telefoni cellulari perché può ritardare significativamente l'interattività. Questo è un problema soprattutto per i telefoni non così capaci che sono ampiamente utilizzati al di fuori del settore tecnologico.
- Hidde de Vries spiega come possiamo rendere accessibili i titoli delle pagine nell'applicazione JavaScript a pagina singola.
CSS
- Max Bock ha esplorato alcune tecniche CSS Grid per costruire i layout di domani con un codice relativamente semplice.
- Sara Soueidan spiega come possiamo creare interruttori a levetta inclusivi con HTML e CSS moderni.
- Jen Simmons condivide gli errori comuni della griglia CSS e come risolverli.
- Ethan Marcotte spiega l'ancora relativamente nuova unità
fr
che utilizziamo principalmente per le griglie CSS.
Vita lavorativa
- Paris Marx ha scritto perché pensa che i nomadi digitali non siano il futuro. Sostiene che l'indipendenza dalla posizione è possibile solo grazie alle infrastrutture di comunicazione costruite con fondi pubblici e che non è giusto abusarne.
- Questa settimana ho imparato quanto può essere utile pensare fuori dagli schemi e come il lavoro a distanza e il perseguire il tuo hobby possono aiutare a risolvere le sfide tecniche.
- Non è la prima volta che un'azienda testa una settimana lavorativa di 4 giorni. Tuttavia, è fantastico vedere come il concetto può essere stabilito con successo e con vantaggi per entrambi: i dipendenti e il lavoro svolto.
Andare oltre…
- Tobias van Schneider ha scritto perché lo studio Sagmeister-Walsh ha così tanto successo rimanendo piccolo e perché sognare in grande ma rimanere piccoli è così importante per il pensiero creativo.
- Ben Werdmuller condivide i suoi pensieri su quanto sia diventato diverso avviare un'impresa quando, ad esempio, sei a San Francisco. Questa è una storia in cui $ 117.000 sono considerati un "basso reddito" a San Francisco e come questo limiti le idee.
- Jeremy Nagel ci fa riflettere sull'impatto del nostro codice open source: come sviluppatori tendiamo a credere che rendere il nostro codice disponibile gratuitamente sia una mossa sorprendente, ma dimentichiamo che lo rendiamo disponibile anche ai giocatori cattivi, ai minatori di carbone, ai aziende che contribuiscono all'inquinamento, a coloro che usano le persone per arricchirsi maltrattandole, a coloro che ti derubano indirettamente. Non è che non puoi farci niente; devi essere consapevole di questi problemi e applicare una licenza migliore o aggiungere una dichiarazione dedicata al tuo codice.
- L'India ha un grosso problema con i rifiuti di plastica. Da un paio di mesi, un paio di pescatori non ignorano più il problema della plastica, ma raccolgono tutti i rifiuti nelle reti e li riportano a riva dove vengono usati per costruire le strade. Un'ottima idea per utilizzare i rifiuti in modo efficiente.