Actualizare lunară pentru dezvoltare web 4⁄2018: despre efort, părtinire și productivitate

Publicat: 2022-03-10
Rezumat rapid ↬ Anselm Hannemann a rezumat ceea ce s-a întâmplat în comunitatea web în ultimele patru săptămâni. De la știri din browser și instrumente utile până la subiecte fierbinți și lucruri despre care ar trebui să vorbim mai des.

În zilele noastre, este una dintre cele mai mari provocări să gândești pe termen lung. Într-o lume în care trăim cu dispozitive care durează doar câteva luni sau poate câțiva ani, în care cumpărăm lucruri pentru a le arunca doar zile sau săptămâni mai târziu, termenul „efort” capătă un nou sens.

Recent, citeam un eseu despre „Yatnah”, „Efort”. Am petrecut mult timp afară în natură în ultimele săptămâni și am creat un mic acru pentru a cultiva câteva legume. Am participat și la un atelier pentru a învăța meșteșugul altoirii pomilor fructiferi. Când tăiați un copac, vă dați seama că stilul nostru de viață rapid și pe termen scurt este foarte diferit de modul în care funcționează natura. Am altoit un copac care ar trebui să crească de zeci de ani acum, iar dacă tăiați un copac care a fost acolo de patruzeci de ani, va fi nevoie de încă patruzeci pentru a crește unul care va fi la fel de înalt.

Mi-ar plăcea să încercăm cu toții să creăm mai multe lucrări de lungă durată , software care să funcționeze într-un deceniu și, pentru a face acest lucru, să depunem eforturi pentru a afla cum putem face acest lucru. Atâta timp, vă las cu acest citat și o grămadă de articole interesante.

„În lumea noastră modernă poate fi tentant să renunți la efort și să îl înlocuim cu câteva fraze de gândire pozitivă. Dar pur și simplu nu există un substitut pentru practică”.

— Kino Macgregor
Mai multe după săritură! Continuați să citiți mai jos ↓

Știri

  • Safari Technology Preview 52 elimină suportul pentru toate pluginurile NPAPI, altele decât Adobe Flash, și adaugă suport pentru preconnect linkurilor de preconectare.
  • Chrome 66 Beta oferă modelul de obiecte tip CSS, API-ul Async Clipboard, AudioWorklets și suport pentru utilizarea calc() , min() și max() în interogări media. În plus, câmpurile select și textarea acceptă acum atributul de autocomplete , iar clauza catch a unei instrucțiuni try poate fi utilizată fără un parametru de acum înainte.
  • iOS 11.3 este disponibil publicului acum și, așa cum a anunțat deja, versiunea oferă suport pentru Progressive Web Apps pe iOS. Maximiliano Firtman împărtășește ce înseamnă asta, ce funcționează și ce nu funcționează (încă).
  • Safari 11.1 este acum disponibil pentru toată lumea. Iată un rezumat al tuturor noilor funcții WebKit pe care le include.
Aplicație web progresivă pe iOS
Aplicațiile web progresive pentru iOS sunt aici. Ecran complet, capabil offline și chiar vizibil în dock-ul iPad-ului. (Credit imagine)

General

  • Anil Dash reflectă asupra a ceea ce a fost intenționat să fie web-ul și asupra modului în care web-ul de astăzi diferă de acesta: „Într-un moment în care milioane de oameni își pierd încrederea în cele mai mari site-uri ale web-ului, merită să revizuim ideea că web-ul ar fi trebuit să fie făcut din nenumărate. site-uri mici. Iată o privire asupra tehnologiilor neglijate care ar fi trebuit să facă acest lucru posibil.”
  • Morten Rand-Hendriksen a scris despre utilizarea eticii în designul web și ce întrebări ar trebui să ne punem atunci când sugerăm o soluție, creăm un design sau o caracteristică nouă. Mai ales când credem că facem ceva „inteligent”, este important să ne punem pe primul loc întrebarea dacă într-adevăr ajută oamenii.
  • O mulțime de proteste și discuții au venit odată cu afacerea Facebook / Cambridge Analytica, majoritatea arătând problemele tehnologice cu modelul de permisiuni al Facebook. Dar cheia constă în modul în care Facebook și-a proiectat compania și ce linie de bază etică a stabilit. Dacă nu vrem să se întâmple așa ceva din nou, depinde de noi să proiectăm serviciul pe care ni-l dorim.
  • Brendan Dawes spune de ce crede că adresele URL sunt o capodopera și o experiență de utilizator în sine.
  • Transcrierea discursului lui Charlie Owen despre „Dragă dezvoltator, Web-ul nu este despre tine” este un rezumat bun al motivului pentru care noi, ca dezvoltatori, trebuie să ne gândim dincolo de ceea ce este bine pentru noi și să ne gândim la ceea ce servește utilizatorilor și cum putem realiza acest lucru.

UI/UX

  • B. Kaan Kavustuk își împărtășește gândurile despre motivul pentru care nu vom putea construi un design perfect sau o bază de cod de la prima încercare, indiferent de câtă experiență avem. În schimb, micile îmbunătățiri constante sunt cele care deschid calea către perfecțiune.
  • Trine Falbe ne face cunoștință cu Ethical Design cu un ghid practic de pornire. Arată alternative și lucruri la care să te gândești atunci când construiești o afacere sau un produs. Nu contează prea mult dacă ești proprietarul, un dezvoltator, un designer sau o persoană de vânzări, este vorba de a servi utilizatorii și de a stabili terenul pentru o încredere reală și durabilă.
  • Josh Lovejoy ne împărtășește învățările sale din a lucra la soluții tehnologice incluzive și de ce este nevoie de mai mult decât bună intenție pentru a crea o tehnologie corectă și incluzivă. Acest articol analizează de ce judecata umană este foarte dificilă și adesea bazată pe părtinire și de ce nu este ușor să proiectați și să dezvoltați algoritmi care să trateze diferiți oameni în mod egal din această cauză.
  • Sistemul de culoare HSB (Hue, Saturation, Brightness) nu este deosebit de nou, dar mulți oameni încă nu înțeleg avantajele acestuia. Erik D. Kennedy explică pas cu pas principiile și avantajele sale.
  • Deși există mai multe discuții despre designul incluziv în zilele noastre, acesta este adesea văzut sub pălăria de accesibilitate sau ca decizii tehnice. Robert del Prado împărtășește acum cât de importantă este gândirea de design incluzivă și de ce este mult mai mult despre utilizatorul generic decât despre anumite persoane cu dizabilități specifice. Designul incluziv reunește oamenii, indiferent cine sunt, unde locuiesc și ce își pot permite. Și nu este scopul fiecărui produs să aibă succes prin achiziționarea de cât mai mulți oameni? Poate că trebuie să discutăm despre asta și cu oamenii de marketing.
  • Anton Lovchikov împărtășește modalități de îmbunătățire a ajustărilor optice ale componentelor. Este un studiu interesant despre modul în care schimbările foarte mici pot face o diferență.
Echitabil nu este implicit
Frică sau furios? Ce emoție credem că arată copilul depinde dacă credem că este o fată sau un băiat. Josh Lovejoy explică modul în care părtinirile personale și judecățile ca aceasta duc la produse neloiale. (Credit imagine)

Scule

  • Brian Schrader a găsit o caracteristică necunoscută în Git, care este foarte utilă pentru a testa ideile rapid: Git Notes ne permite să adăugăm, să eliminăm sau să citim note atașate la obiecte, fără a atinge obiectele în sine și fără a fi nevoie să comităm starea curentă.
  • Pentru multe proiecte, prefer să folosesc scripturi npm în detrimentul apelării sarcinilor gulp sau direct webpack. Michael Kuhnel împărtășește câteva trucuri utile pentru scripturile npm, inclusiv cum să permiteți parametrii opțiunii CLI sau cum să urmăriți sarcinile și să avertizeze notificările în caz de eroare.
  • Anton Sten explică de ce noile instrumente nu sunt întotdeauna egale cu productivitatea. Cu toții ne plac noile instrumente de design, iar altele noi, cum ar fi Sketch, Figma, Xd sau Invision Studio, continuă să apară. Dar, în ciuda faptului că aceste instrumente rezolvă o mulțime de probleme comune și facilitează unele lucruri, productivitatea se referă în principal la ceea ce funcționează pentru problema ta și nu la ceea ce este cel mai nou. Dacă trebuie să creați o machetă statică și Photoshop este ceea ce știți cel mai bine, de ce să nu o folosiți?
  • Există un nou serviciu DNS rapid disponibil de Cloudflare. În cele din urmă, o alternativă mai bună la mult utilizate servere Google DNS, este disponibil sub 1.1.1.1 . Noul DNS este cel mai rapid și, probabil, unul dintre cele mai sigure, de asemenea. Cloudflare a depus mult efort în criptarea serviciului și în parteneriat cu Mozilla pentru a face DNS prin HTTPS să funcționeze pentru a închide un mare decalaj de confidențialitate care până acum a scurs toate datele dvs. de navigare către furnizorul DNS.
  • Am auzit deja multe despre învățarea automată iOS, dar în ciuda faptului interesant că sunt capabili să facă acest lucru pe dispozitiv fără a trimite totul către un nor, încă nu am aflat cum să folosesc acest lucru pentru aplicații. Din fericire, Manu Rink a creat un ghid frumos în care explică învățarea automată în iOS pentru începători.
  • Sunt vești grozave pentru fanii Git GUI: Tower oferă acum o nouă versiune beta care include suport pentru solicitări de extragere, fluxuri de lucru interactive de rebase, acțiuni rapide, reflog și căutare. O actualizare uimitoare care face lucrul cu software-ul mult mai rapid decât înainte și chiar și pentru mine, ca iubitor al liniei de comandă, este o opțiune bună.
Învățare automată în iOS pentru Noob
Manu Rink arată cum funcționează învățarea automată în iOS, creând o recunoaștere offline a textului scris de mână. (Credit imagine)

Securitate

  • HTTP Strict Transport Security (HSTS), în special cu preîncărcarea, a fost mult timp considerată una dintre cele mai bune caracteristici de securitate pentru a se asigura că un browser ar trebui să se conecteze în siguranță doar la un nume de gazdă. Cu toate acestea, agenții de publicitate au găsit o modalitate de a urmări utilizatorii cu HSTS și de a-l folosi ca identificator persistent între site-uri (cunoscut sub numele de „super cookie”). Dezvoltatorii WebKit au reacționat acum și, pentru a proteja confidențialitatea utilizatorilor lor, au slăbit fiabilitatea HSTS prin limitarea domeniului numelui de gazdă și ignorând o stare HSTS pentru solicitările de subresurse către domeniile blocate.
  • PagerDuty tocmai a publicat o versiune open-source a materialului lor de instruire în domeniul securității interne, plină de explicații interesante și ușor de înțeles despre problemele și strategiile comune de securitate. Acest lucru este deosebit de util, deoarece îl puteți oferi persoanelor fără experiență tehnică.
  • Christoph Rumpel spune cum a găsit o modalitate de a-și folosi Politica de securitate a conținutului cu pachetul Laravel Response Caching.
  • În timp ce Argon2 este algoritmul actual de cea mai bună practică de utilizat pentru hashing (parole, de exemplu), există câteva lucruri pentru care dezvoltatorii trebuie să se pregătească. De exemplu, este ușor să DOS folosind Argon2, așa că trebuie să evaluați interogările limită.
  • James Fisher împărtășește o modalitate interesantă de a înșela utilizatorii Gmail, așa cum este demonstrat în exemplul Netflix.

Performanța web

  • Săptămâna aceasta, a apărut o discuție despre dacă tehnica de servire a imaginilor compresive este încă o idee bună. Tim Kadlec a luat-o drept un declanșator pentru a-l revedea. Acum concluzionează că nu ar trebui să mai folosim tehnica imaginii compresive din cauza amprentei sale mari de memorie și să ne bazăm în schimb pe noile tehnologii de imagine receptive, cum ar fi elementul <picture> sau srcset and sizes .
  • Eric Portis împărtășește principiile sub capotă ale atributului de descriptori w și sizes pentru imagini. O postare destul de tehnică, dar revelatoare, care te face să înțelegi în sfârșit magia din spatele acestor noi atribute de imagine receptivă.
  • Tim Oxley împărtășește de ce preferă să se întoarcă devreme și să evite else acolo unde este posibil. Este ceva ce am făcut la începutul carierei mele, apoi am pierdut la un moment dat, dar m-am întors la asta recent. În special complexitatea redusă și logica mai simplă a funcțiilor este un avantaj cheie pentru mine aici.
  • Jeremy Wagner împărtășește cele mai bune practici despre cum să construiești un mecanism de încărcare leneș pentru imagini și videoclipuri. Cu siguranță nu este cea mai rapidă soluție, dar resursa împărtășește cum să construiți cea mai bună experiență și performanță pe baza celor mai recente tehnologii disponibile în browsere.

Accesibilitate

  • Marcy Sutton explică ce este nou în Ax 3.0, care acum acceptă Shadow DOM și pe care îl poți rula în suita ta de testare automată.
  • Patrick H. Laucke împărtășește despre ce este noul pseudo-selector CSS :focus-visible și cum trebuie să-l scriem pentru a asigura compatibilitatea cu browserele care nu îl acceptă încă.
  • Marco Zehe ne prezintă noul Inspector de accesibilitate din Firefox Developer Tools. Aceasta este o veste grozavă și ajută la inspectarea problemelor de accesibilitate mult mai ușoară decât înainte.

CSS

  • Amber Wilson împărtășește câteva idei despre cum se simte să fii aruncat într-un proiect complex pentru a face stilul acolo. Ea spune pe bună dreptate că „nimeni nu a spus că CSS este ușor” și exprimă cât de important este ca noi, ca dezvoltatori, să ne confruntăm cu situații incomode pentru a ne dezvolta cunoștințele.
  • Ana Tudor este cunoscută pentru abilitățile sale speciale CSS. Acum ea explorează și descrie cum putem obține colțuri în CSS cu câteva trucuri inteligente.
Colțuri scoase
Colțuri scufundate? Ana Tudor ne arată cum se face. (Credit imagine)

JavaScript

  • WebKit a primit o actualizare pentru API-ul Clipboard, iar echipa oferă câteva perspective foarte interesante asupra modului în care funcționează și a modului în care Safari va gestiona unele dintre provocările comune cu datele din clipboard (de exemplu, imagini).
  • Dacă lucrați cu magazine de valori cheie care locuiesc doar în interfață, IDB-Keyval este o bibliotecă ușoară grozavă care simplifică lucrul cu IndexedDB și localStorage.
  • Ați dorit vreodată să creați grafică din datele dvs., cu un aspect desenat manual, pe un site web? Rough.js vă permite să faceți exact asta. De obicei, se bazează pe Canvas (pentru o performanță mai bună și mai puține date), dar poate desena și căi SVG.
  • Dacă aveți nevoie de un modul de reordonare drag-and-drop, există o soluție simplă și accesibilă disponibilă acum: dragon-drop.
  • Timp de mulți ani, am putut obține doar valori CSS în valoarea lor calculată și chiar și asta nu a fost flexibil sau plăcut de lucrat. Dar acum CSS are un API adecvat bazat pe obiecte pentru lucrul cu valori în JavaScript: Modelul de obiect tip CSS. Este disponibil încă doar în viitorul Chrome 66, dar cu siguranță o funcție promițătoare pe care mi-ar plăcea să o folosesc în codul meu în curând.
  • Documentația React.js are acum o secțiune suplimentară care explică cum să gestionați ușor și programatic stările de focalizare pentru a vă asigura că UI este accesibilă.
  • James Milner ne arată cum putem folosi preluarea care poate fi anulată pentru a anula solicitările.
  • Există deja câteva articole despre Web Push Notificări, dar ghidul introductiv al lui Oleksii Rudenko este un prim excelent care explică foarte bine principiile.
  • În ultimii ani, am primit o mulțime de funcții noi pe platforma JavaScript. Și din moment ce este greu să-ți amintești toate lucrurile noi, Raja Rao DV a rezumat „Totul nou în ECMAScript 2016, 2017 și 2018”.

Muncă și viață

  • Pentru a conștientiza cât de comune sunt astfel de situații pentru noi toți, James Bennett ne împărtășește o situație jenantă în care a făcut o greșeală simplă care i-a luat mult timp să afle. Nu fac greșeli doar eu, nu ești doar tu și nu doar James – toți facem greșeli și, oricât de jenant par să fie în acea situație, nu este nimic de care să ne simțim rău.
  • Adam Blanchard spune: „Oamenii sunt mașini. Avem nevoie și de întreținere.” și creează o comparație pentru ca inginerii să înțeleagă de ce trebuie să avem grijă de noi înșine și, de asemenea, de ce avem nevoie de oameni care să aibă grijă de noi. Aceasta este o perspectivă a ceea ce fac inginerii de oameni și de ce este atât de important pentru companii să angajeze astfel de oameni pentru a se asigura că o echipă este sănătoasă.
  • Dacă există un lucru despre care nu vorbim prea mult în industria web, este pensionarea. Jan Chipchase a scris acum o mulțime de gânduri interesante despre pensionare.
  • Rebecca Downes împărtășește câteva informații despre doctoratul ei despre echipele de la distanță, dezvăluind în ce circumstanțe echipele de la distanță sunt grozave și în care nu.
Ce ar face oamenii inginerii
Oamenii au nevoie și de întreținere. Aici intervine Inginerul Oamenilor. (Credit imagine)

A merge dincolo de…

  • Acum că discutăm despre problemele serviciilor centralizate precum Facebook și Google, descentralizarea este văzută ca salvatorul web-ului independent. Dar sunt sigur că dacă nu încercăm să rezolvăm problema umanitară de bază cu tehnologie, nimic nu se va schimba.
  • S-ar putea să fi citit știrile despre primul accident mortal cu o mașină care se conduce singur. O etapă tristă care arată cât de nesigură poate fi această tehnologie și cât de departe suntem încă de a ne putea baza pe astfel de sisteme.
  • În urmă cu un deceniu, dispozitivele inteligente au promis că vor schimba modul în care gândim și interacționăm și au făcut-o, dar nu făcându-ne mai inteligenți. Eric Andrew-Gee explorează dovezile științifice că distracția digitală ne dăunează minții.
  • Fred Pearce a scris despre cum putem eficientiza cele mai mari centre de date din lume. Dacă vă întrebați de ce acesta ar fi obiectivul dorit, este important să știți că aceste centre de date sunt responsabile pentru 3% din totalul emisiilor globale de CO2 - la fel de mult ca industria aeriană.
  • „O centrală electrică dezafectată se va redeschide doar pentru a alimenta criptomonede.” Nu am cuvinte suplimentare pentru asta.

Sperăm că v-a plăcut această actualizare de dezvoltare web. Următorul este programat vineri, 18 mai. Rămâneți aproape.