Press "Enter" to skip to content

GOTO 2016 • Resilience • Jeremy Keith


[Musica]
dang kazoo, va bene, ho capito
tutto il giorno libero allora se lo sono se è tutto
pensato per essere un argomento lungo e bene
quello che vorrei fare è che vorrei calci
è fuori con la storia in realtà più simile a
mito della creazione potresti aver sentito questo
Internet è stato progettato per resistere
attacco nucleare e non è esattamente vero
quello che è vero è che Paul Baran era
lavora alla RAND Corporation era
indagando sui modi di fare
reti di reti resilienti che lo erano
resiliente al fallimento e parte di quello è
fare con il design della rete
stesso ma ha anche colpito questa idea di
pacchetto che cambia l’idea che si prende
il tuo messaggio e lo dividi in
piccoli pezzi e poi li instrada
piccoli pezzi intorno alla rete usando
qualunque sia il percorso più efficiente è il
stessa idea è stata scoperta contemporaneamente
di Donald Davies nel Regno Unito ma è Paul
L’idea di Barron che ha attirato l’attenzione
Leonard Kleinrock per il quale stava lavorando
l’ agenzia di progetti di ricerca avanzata
ARPA su qualcosa chiamato ARPANET e
per cominciare con ARPANET che è il
idea del tempo la condivisione di computer nel corso di un
la rete era molto piccola questo è dentro
1969 e il primissimo messaggio è stato inviato
da una macchina all’altra in ottobre
29 1969 alle 22:30 ed è stato un
comando molto semplice inviato da UCLA a
Stanford ed era semplicemente il comando
per accedere in modo che il comando è stato inviato e
l’intero sistema si è bloccato dopo le due
personaggi quindi questo era il primo messaggio
inviato su ARPANET ma hanno mantenuto
lavorando su di esso e la rete è cresciuta e
è cresciuto ha cominciato a crescere così tanto che l’altro
le reti erano collegate a questo
rete e ha iniziato a evolversi
più come una rete di reti o un
rete interna se vuoi e come
le reti hanno aderito a questa rete di reti
è diventato sempre più importante
stavano tutti parlando lo stesso
linguaggio di basso livello e questo è dove
questi due vengono in Bob can e Vince Cerf
e ora a quel tempo Bob cannone Vint Cerf
per sì
un idealista e non erano così tanto
preoccupato di creare una rete che era
resiliente per dire attacco nucleare ma loro
erano estremamente preoccupati di fare un
rete che era resiliente a qualsiasi tipo
di controllo dall’alto verso il basso qualsiasi tipo di
proprietà davvero e l’idea era quella
questa rete non dovrebbe avere un centro
che non hai bisogno di chiedere il permesso
aggiungere un nodo alla rete e loro
si avvicinò con il TCP / IP della trasmissione
protocollo di controllo e protocollo Internet
e la vera salsa segreta di tcp / ip è
quella semplicità è davvero un super
protocollo semplice per un deliberatamente stupido
rete l’intera idea di Internet
è che alla rete non importa cosa sia
in quei pacchetti che vengono instradati attorno al
nodi della rete e tcp / ip stesso
è stato progettato per essere davvero super semplice
ci siamo abituati a scherzare sul fatto che tu ti conosca
dovrebbe essere in grado di implementare tcp / ip usando
due lattine e un pezzo di corda ora
è stato così quando hai avuto questo molto
semplice protocollo di basso livello e tu pensi
su cosa un protocollo è protocollo e in
termini diplomatici, è un accordo
è tutto ciò che siamo tutti d’accordo che noi
utilizzare quindi lo stesso protocollo di basso livello
puoi costruire in cima a quello e puoi farlo
aggiungi su protocolli più complessi
migliori protocolli per l’invio e la ricezione
invia via email telnet a File Transfer
Protocollo gopher e chiunque potrebbe farlo
infatti si può ancora fare questo se si
voglio creare un protocollo oggi basta andare
avanti e farlo non è necessario chiedere
per il permesso, basta mettere il tuo
protocollo là fuori vedi fare il
il protocollo non è la parte difficile che è
convincere le persone ad usare il tuo protocollo
questo risulta essere un po ‘complicato
perché vuoi fare uso di Metcalfe
legge giusta Bob Metcalfe creative ethernet
dice che le leggi come il valore di una rete sono
proporzionale al quadrato del numero
di nodi qualcosa di simile in fondo
quello che sta dicendo è che più persone usano
una rete più preziosa è la rete
è giusto così che la prima persona abbia un
fax ha avuto un grumo inutile di
macchinario ma non appena uno altro
la persona aveva un fax che era
esponenzialmente più utile proprio così
fare un protocollo non è un problema
convincere le persone ad usare il tuo protocollo
difficile quindi questa è la situazione
con internet dove abbiamo questa bassa
protocollo di rete fissa è possibile creare di più
protocolli complessi in cima questo era il
situazione alla fine degli anni ’80 iniziano
Anni ’90 quando appare un nuovo protocollo sul
scena il protocollo di trasferimento ipertestuale
HTTP e HTTPS solo una parte di un tre
parte dello stack chiamato World Wide Web
progetto HTTP per gli URL del livello del protocollo
per identificatori e un super semplice
formato chiamato HTML per le risorse ora
questo progetto web mondiale come sapete
è il lavoro del giovane informatico
di nome Tim Berners-lee che lavora al CERN
beh, quello che amo di questo è il look
quanto è felice con questo progetto il mondo
progetto web wide a questo punto è solo
esiste su un computer eppure lo è ancora
lo ha chiamato il progetto del World Wide Web
che la sua conferenza e c’è un intero
un sacco di influenze è andato nel mondo
Internet progetta la stessa Internet
proprio questa idea che non dovresti aver bisogno
chiedere il permesso che non ci sia
centro alla rete ma penso anche
quella delle influenze sul mondo
c’era una larga rete in cui Tim berners-lee era
lavorando perché questo è dove era
giusto il CERN è un posto fantastico
sotto il confine tra
Svizzera e Francia quindi hai il
il pezzo più complicato di macchinari
Large Hadron Collider mai creato da
l’umanità condizioni del ricreando
inizia l’universo che hai questo
livello ridicolo di internazionale
cooperazione necessaria per fare anche il
cosa succede e poi hai
gli scienziati vincono premi Nobel
collaborando con gli studenti in estate
stage e praticamente no
gerarchia sono solo persone che lavorano su
esperimenti e in qualche modo funziona e
sta producendo enormi quantità di dati
e le persone stanno cercando di collaborare e
tuttavia essi sono autorizzati a usare qualsiasi
l’hardware che vogliono è consentito utilizzare
qualunque software vogliano lì io
userebbe tutti i formati che vogliono come
hai un senso di questo così questo era
tipo della sfida che affronta Tim
berners-lee e l’altro computer
gli scienziati del CERN hanno dato questo pazzo
caotico e tuttavia in qualche modo funzionante
situazione al CERN come abilitiamo il
flusso di informazioni e Tim
L’idea di Tim berners-lee di berners-lee era
era usando l’ipertesto che non ho creato
ipertesto
l’idea di hypertech è stata intorno
per molte decadi prima di conoscere Ted
Nelson e Vannevar Bush e persone come
questo e lo stesso Tim berners-lee
giocato con un sistema ipertestuale a
pochi anni prima era chiamato Inquirer
ed era basato su questo
Il libro di costume vittoriano chiamato indagare
dentro su tutto ciò che ho sempre
il pensiero sarebbe un grande nome per il
World Wide Web
giusto indagare su tutto così
ci sono tutte queste influenze che giocano
in questa idea del World Wide Web
e si riunisce in questa proposta
che Tim berners-lee si sottomette al suo
supervisore Mike mittente che ha un molto
gestione delle informazioni sul titolo poco interessante
un diritto di proposta ma il suo supervisore deve
ho visto qualcosa in questo perché quando
questo è atterrato sulla sua scrivania ha scarabocchiato
al di sopra della vaga ma eccitante destra
e così otteniamo il World Wide Web
che è eccellente ma come ho detto è
non abbastanza per creare qualcosa
Devo convincere anche le persone a usarlo
e quello che Tim berners-lee realizzò è
che il modo in cui ottieni l’adozione è di
fare le cose bene per usare l’apocrifo
Citazione di Einstein il più semplice possibile ma
non è più semplice, quindi non è così tanto
su come realizzare il miglior sistema o
il miglior formato possibile o il migliore
possibile protocollo sta facendo qualcosa
che la gente userà e penso che se si
guarda i pezzi del world wide web
c’è qualcosa in questo nessuno di questi
sono i migliori in ciò che fanno correttamente HTTP
non è il miglior protocollo ma è semplice
abbastanza per le persone può iniziare ma tutto
di queste cose hanno i loro difetti
sicuramente ma sono simultaneamente
abbastanza semplice e abbastanza potente per
consentire alle persone di iniziare a usarli
HTML è un buon esempio il primo
versione di HTML non c’era nessun funzionario
versione 1.0 di HTML tutto quello che c’era
questo documento era chiamato tag HTML
presumibilmente scritto da Tim Berners-lee
che ha documentato l’interezza dell’HTML in
il tempo che era 21 elementi che era
era tutto di HTML e di quelli 21
elementi quasi tutti sono stati presi
all’ingrosso da un markup esistente
linguaggio già utilizzato al CERN
giusto gli scienziati del CERN stavano usando
un sapore di standard sgml
linguaggio di markup generalizzato per il markup
i loro documenti in effetti si potrebbe prendere
alcuni di questi documenti SGML cambiano il
estensione del file per dot HTML e aprirlo
in uno di questi nuovi browser Web
e probabilmente funzionerebbe così è stato
molto circa invece di provare a
cambiare il comportamento delle persone
basta spostare leggermente il comportamento delle persone
giusto e poi sei obbligato ad arrivare
migliore adozione e si è rivelato essere
vero e la gente ha iniziato a scrivere
documenti in HTML che non erano nemmeno cosa
Tim berners-lee si aspettava Tim berners-lee
previsto che le risorse che
la gente condividerà sarebbe in tutto
tipi di diversi formati proprietari
ma ci sarebbero documenti HTML per
tipo di solo link a loro tipo di giusto
come pagine di indice ma risultò essere
abbastanza semplice e tuttavia abbastanza potente
che la gente ha iniziato a scrivere il vero
i documenti in HTML stesso sono cresciuti in HTML
e cresciuto nella misura in cui per il momento
si arriva a HTML5
ci sono 121 elementi e tuttavia è ancora
HTML ora questo tipo di colpi la mia mente
potresti avere un formato che cresce
sai da 21 221 elementi sopra il
corso di voi sa circa 20 anni e così
eppure rimane lo stesso formato
perché se sai qualcosa sul
la storia di te conosce i formati del tuo computer
renditi conto di quanto sia insolito questo se provi
per aprire un documento di elaborazione di testi
da 20 anni fa usando un computer da
oggi farai un brutto momento tutto
destra
e ancora HTML è ancora possibile un HTML
documento di 20 anni fa ancora
possibile in un browser moderno ancora meglio
in teoria se lo stai costruendo
giusto potresti prendere un sito web moderno
e aprilo con un browser web da 20
anni fa
e questo è veramente inusuale, giusto e dentro
termini di formati informatici che questo
questa longevità potrebbe accadere per 20 anni
e penso parte del motivo per cui è così
è possibile fino a una decisione di progettazione
con HTML quindi il rischio di insegnare
la grammatica succhia le uova voglio che tu pensi
su cosa succede quando un browser
incontra un diritto elemento HTML che hai
ha ottenuto un tag di inizio tag di chiusura di alcuni contenuti
tra forse ce ne saranno alcuni
attributi su quel tag di apertura ma
in pratica quando il browser vede questo
rende il contenuto tra il
aprire i tag di chiusura a seconda del
elemento che potrebbe
fare anche altre cose che potrebbero
stile in un certo modo che potrebbe aggiungere
comportamenti se si tratta di un collegamento o forum
elemento o qualcosa del genere
ma generalmente è quello che succede tutto
tutti voi sapete questo giusto dare un
browser un elemento mostra cosa c’è dentro
tra i tag di apertura e di chiusura ma
cosa succede quando dai un browser a
elemento non capisce un elemento
che non esiste in HTML ancora ottenuto
un tag di apertura ha ancora una chiusura
tag e ha ancora contenuto in mezzo
ciò che farà il browser è che lo farà
visualizzare il contenuto in mezzo come
fa con un elemento che non è così
capire cosa è interessante qui è
ciò che il browser non fa e questo è
le decisioni sul design credo fosse così
fondamentale il browser non getta un
errore per l’utente finale del browser
non smettere di analizzare il documento HTML a
questo punto e rifiuta di analizzarne uno
inoltre semplicemente ignora il tag
non capisce visualizza il contenuto
tra questi tag e continua ha
fatto niente era successo e cioè
come possiamo andare da 21 a 121 elementi
perché ogni volta che aggiungiamo un elemento a
HTML sappiamo esattamente quanti anni ha
i vecchi agenti utente del browser si comporteranno
ignoreranno i tag che non hanno
capire ma mostrare ancora il contenuto
quindi, solo come possiamo iniziare a usare nuovi
elementi anche prima di ogni browser
supporto per loro e questo comportamento è
qualcosa che possiamo persino sfruttare
per elementi più complessi così hai ottenuto
qualcosa come l’ elemento canvas giusto
molto complesso richiede lo scripting da fare
qualsiasi cosa se sappiamo che un vecchio
browser mostrerà ciò che è sempre tra
i tag di apertura e di chiusura
beh, questo è okay se sei un nuovo
browser conforme e capisci
la tela non mostra cosa c’è nel mezzo
aprire e chiudere tag e questo significa
possiamo usare quello spazio per il fallback
contenuto in modo che possiamo mettere le informazioni lì
proprio per i browser più vecchi giusto così
possiamo iniziare a usare un nuovo elemento complesso
e hanno ancora una sorta di fallback per
browser più vecchi ora che non è un
incidente che è un disegno deliberato
decisione perché l’ elemento canvas quando
in primo luogo ha iniziato la vita era un proprietario
elemento creato da Apple questo è come a
molti standard vengono fatti conoscere a qualcuno
il browser creerà solo qualcos’altro
i browser vanno ooh che è buono avremo
e poi si standardizzano su di esso
giusto ma quando fu inventata la tela
da Apple era uno standard
elemento non aveva un tag di chiusura
è stato durante il processo di standardizzazione
che aveva guadagnato questo tag di chiusura
in modo specifico per poterlo fare così
che potremmo inserire questo contenuto di riserva
in mezzo si vede lo stesso modello con
cose come video e audio ecco un
elemento interessante l’elemento immagine I
finalmente interessante per la sua storia um
perché ha iniziato il web non c’era
elemento di immagine c’era che c’erano no
immagini bene era solo un testo medio
e in quei primi tempi Tim berners-lee
ha creato il progetto di World Wide Web
inoltre stava facendo questo mailing questo www
parla che praticamente tutti quelli che erano
su internet o sul web scusa e
tutti erano sul web era praticamente
fare un browser web in modo fondamentalmente persone
fare in modo che i browser web si uniscano e
discutendo su come si sarebbero evoluti
questo progetto come si sarebbero evoluti
HTTP o evoluzione HTML e stanno avendo
questa discussione sull’idea che loro
potrebbero forse essere immagini sul mondo
Wide Web e stanno discutendo su cosa
dovrebbe essere chiamate saranno chiamati il
icona elemento forse dovremmo essere chiamati
l’ elemento oggetto perché un giorno lì
potrebbe anche essere il video sul web e
ne stanno discutendo avanti e indietro
quando Marc Andreessen sta lavorando al
progetto di mosaico suona e dice ragazzi
ragazzi, sto per spedirlo e basta
chiamato l’elemento immagine IMG ci vuole un
Attributo SRC che punti all’immagine e
sta atterrando nel mosaico e tutti gli altri
sulla mailing list è andato tutto bene perché
quello che avevano allora era un consenso approssimativo
e il codice di esecuzione e quello era carino
molto quello che ha brontolato tutto ma è
non come se fosse un grande ben progettato
elemento intendo che vedi che non otteniamo un
tag di chiusura correttamente spedito senza
tag di chiusura che significa che non possiamo mettere che
contenuto di riserva tra l’apertura
e chiudere i tag è per questo che finiamo
con questo attributo alt giusto per
il testo alternativo è un po ‘goffo
ma ha funzionato fino a un punto che ho sempre
sentivo come se ci fosse questo scontro in termini
di come il testo viene gestito sul web dove
scorre a prescindere dalle dimensioni
del contenitore
rispetto alle immagini bitmap in cui ti trovi
ottenuto come un set all’interno di un’altezza impostata e
è davvero venuto alla sua testa con
responsive web design proprio dove
improvvisamente stiamo cercando di essere fluidi e
eppure stiamo sbattendo contro questi fissi
Larghezza e così quel problema era
risolto con l’introduzione del
attributo sorgente e il design qui
ancora
Mi piace molto questo modello di progettazione è
non solo che c’è questo nuovo attributo
introdotto in HTML sai invece di
l’attributo source come questa fonte
imposta i lavori e gli dai un elenco
ecco alcune altre immagini che conosci
o forse maggiore densità più piccola più piccola
qualunque cosa tu abbia lasciato scegliere al browser
ciò che fa l’attributo set sorgente è esso
aggiorna effettivamente il valore della fonte
attribuisci ciò che significa che non puoi
usa il set sorgente senza utilizzare la fonte in
altre parole non puoi usare questo nuovo
funzionalità per i nuovi browser senza anche
fornire qualcosa per i browser più vecchi
la compatibilità all’indietro è integrata
perché sappiamo esattamente quanti anni
i browser tratteranno il set di fonti che faranno
trattalo nello stesso modo in cui trattano i tag
che non capiscono solo loro
ignoralo bene , non lanciare un
errore
non smettono di analizzare l’HTML e così via
quella soluzione di immagini reattive è il
lo stesso con i nuovi elementi che abbiamo ottenuto
questa compatibilità all’indietro e non ti S–
deve continuare a fornire qualcosa per il
browser più vecchi design molto intelligente
decisione e solo possibile a causa di
il modo in cui lo stesso HTML è stato
progettato è fondamentalmente è a causa di
la tolleranza agli errori HTML che possiamo fare
questo che possiamo simultaneamente
introdurre nuove funzionalità senza uscire
browser più vecchi dietro ed è un simile
storia con i CSS in termini di come
gestisce gli errori e se ci pensi
conosci tutti i CSS che sono là fuori
il web che è praticamente tutto il
web in questi giorni proprio come questi diversi
i siti Web ti sembrano sapere tutta la varietà
di cose trasportate da questi
siti Web e tuttavia tutto ciò si riduce a
un modello semplice e questo è questo
è tutto il CSS mai scritto sarà mai
scritto
hai le proprietà e i valori dei selettori
e questo è un paio di speciali
caratteri per le macchine da analizzare o
Le parentesi graffe: punto e virgola, ma questo è
questo è tutto di CSS naturalmente
parte difficile è il vocabolario del
proprietà nel vocabolario del
selettori e tutto ciò, ma io tipo di
trovare questo veramente bello è così
modello semplice in grado di evolversi in
tanta complessità e di nuovo se tu
pensa a cosa fa un browser se tu
dargli dei CSS che non capisce
se dai un browser un selettore
non esiste bene, semplicemente no
abbinare quel selettore e quindi niente
all’interno delle parentesi graffe viene eseguito
ma di nuovo
non genera un errore e non lo fa
smettere di analizzare il CSS e rifiutarsi di analizzare
ogni ulteriore dare una proprietà o a
valore non lo capisce solo
salta quella particolare dichiarazione
porta avanti per il prossimo non si butta
un errore non smette di parsing e se io
pensa a come si sono evoluti i CSS
tempo in particolare nell’ultimo tipo di
cinque sei anni penso che siano stati due
sviluppi importanti e uno sarebbe quello
useremmo cose come i pre processori
o post processori giusto sass e meno
roba del genere che sta usando qualcosa
come sass o meno o qualche tipo di okay
la maggior parte delle persone quando stanno scrivendo le loro
CSS e l’altro interessante
lo sviluppo è che abbiamo iniziato
avere queste convenzioni su come noi
struttura le nostre cose CSS come oggetto
orientato CSS max BAM sai chi è
usando un qualche tipo di sistema come quel BAM
o alcuni sì proprio ora cosa trovo
interessante di entrambi
sviluppi preprocessore postprocessori
queste metodologie se vuoi
per la strutturazione dei CSS non è così
istanza abbiamo sviluppatori di autori noi
Devo andare ai corpi standard o fare
dobbiamo andare dai creatori di browser e dire
oh per favore implementa questo giusto perché
nel caso di sass o meno è tutto
fatto sul tuo computer e ciò che viene sputato
fuori è ancora CSS, non c’è bisogno per il
organismi di normalizzazione per essere coinvolti e il
caso di queste metodologie siamo davvero
Sto solo parlando di come diamo un nome alle cose
e nemmeno guardando veramente il
proprietà dei valori è solo circa il
i selettori hanno le giuste convenzioni in giro
selettori e ciò che è interessante
di nuovo non ha richiesto nulla
nuovo e CSS in realtà la maggior parte di questi sono
tratta solo con nomi di classe e classe
i nomi sono stati in CSS proprio dal
iniziare avremmo potuto averli 15 anni
fa bene è come se fosse possibile
qualcosa del genere era lì il tutto
il tempo è come se ci stesse fissando nel
faccia e non l’abbiamo visto lo trovo
davvero interessante non qualcosa che voglio
per tornare a così CSS e HTML sono
potente in un certo senso perché perché
non sono così potenti se capisci cosa
Voglio dire, è il loro errore a gestirlo
li rende potenti la loro semplicità
giusto il fatto che lo siano
fault-tolerant e questa idea di
essere tollerante
di errori mi ricorda il
principio di robustezza probabilmente familiare
con la giusta legge sui pastelli John essere
conservatore e ciò che si invia e si
liberale in ciò che accetti
ora parlava di John Pastel
architettura di rete che si avvicinò con
questo – stava lavorando su ARPANET e
Internet e di cui stava parlando
questa idea di come si dovrebbe trattare
pacchetti di pacchetti in fase di routing
in giro per la rete che se tu se tu
ricevi un pacchetto che sai che è
male formato ma tu sai ancora cosa
fare con esso
beh, continua a girare intorno a a
rete essere liberale in ciò che accetti
non lanciare un errore giusto ma quando
stai inviando pacchetti che tu stesso provi a fare
renderli quanto ben formate possibile be
conservatore in ciò che invii ora questo
il principio potrebbe sembrare come se fosse
ha solo a che fare con l’ ingegneria giusta
c’è una cosa piuttosto tecnica, ma io
vedi la legge sui pastelli al lavoro in ogni momento
il mondo del design nel mondo dell’utente
esperienza come diciamo che stai mettendo
un modulo online su una pagina web
bene prima regola sai che tieni il tuo
compilare i campi al minimo non chiedere al
utente per un sacco di campi che puoi
mantenere i campi su un numero breve in
altre parole sono conservative in ciò che tu
inviare all’utente ma poi quando l’utente
sta compilando quel modulo che sai non fare
rendono loro formattare i numeri di telefono
con spazi o senza spazi o il
i numeri delle carte di credito devono essere liberali
cosa accetti
così le leggi sui pastelli sono una specie di intorno a noi
e penso che sia lì nel modo in cui i browser
gestire l’HTML e il CSS a cui hanno bisogno
scrivi se un browser sarebbe più severo
su HTML e CSS che riceve e
rifiutato di analizzare HTML o CSS non lo fa
capire bene l’utente sarà solo
cambia browser proprio così hanno i browser
essere liberale e cosa accettano ora
quando si tratta di CSS e HTML, penso
quello uno dei motivi per cui possono ottenere
via con questo errore liberale libero
la gestione è perché il loro dichiarativo
lingue proprio così con una lingua come
HTML o CSS non stai istruendo il
computer esattamente cosa devi fare
semplicemente dicendo che è quello che voglio
capita che tu capisca che voglio
questo è un paragrafo che voglio che sia
leggi qualunque cosa ma conosci il reale
istruzioni al computer come te
fare qualcosa di leggere o fare qualcosa a
paragrafo che è stato lasciato al
ambiente di runtime e
per questo motivo penso che ci possiamo permettere di
sii tollerante nel nostro errore
gestire ora è diverso con un
linguaggio imperativo come JavaScript noi
ho molto più controllo di cui sto parlando
JavaScript sul lato client qui dove
puoi dire che questo è esattamente ciò che io
voglio che tu accada molto più potere
ma proprio per questa ragione e questa potrebbe
essere un po ‘di una dichiarazione radicale credo
che deve essere intrinsecamente un po ‘di più
fragile quindi un po ‘di una dichiarazione radicale
dillo, ma penso che la chiarezza di
il linguaggio tende ad essere più resistente ma
è potente
mentre le lingue imperative sono più
potente ma un po ‘ più fragile, giusto
perché non puoi davvero avere lo stesso
gestione tollerante degli errori in un imperativo
lingua se si tenta di scrivere effettivamente a
programma per computer ma fai un errore
e il computer proprio come ah no
preoccupati di ciò che non sarà
utile quindi nel caso del lato client
JavaScript se c’è qualcosa che
il browser non capisce che lo farà
lancia un errore e smetterà di analizzare
il file JavaScript a quel punto e
rifiutare di analizzare qualsiasi ulteriore diritto è
devo avere una gestione degli errori più rigida
tipo di modello di bisogno di farlo perché
è un linguaggio imperativo e questo è
bene finché siamo consapevoli di che
può essere più attento quando stiamo scrivendo
le nostre lingue imperative di quanto siamo
scrivendo i nostri dichiarativi ora
interessante un punto nella storia di
nel web abbiamo quasi ottenuto il peggio di entrambi
mondi in termini di resilienza e
fragilità abbiamo quasi ricevuto XHTML 2 a
problema che potresti ricordare XHTML 1
era carino
XHTML 1 era semplicemente l’idea di prendere
la sintassi di XML e applicarla a
HTML perché la sintassi di XML era quella
bene tutti i tuoi elementi devono essere
in minuscolo tutti i tag
conosci i nomi degli attributi dei nomi dei tag
gli attributi in lettere minuscole devono essere citati
va tutto bene e in effetti lo è
tipo di forzato un po ‘di uno standard
su come scriveremmo HTML perché
HTML non si preoccupa se è maiuscolo
quotati minuscoli non quotati
va bene così XHTML 1 andava bene lo era
solo prendendo la sintassi di XML e
applicandolo all’HTML ma in realtà non lo è stato
cambiare nulla su HTML XHTML 2 era
sta per essere molto diverso sta andando a
cambia radicalmente il vocabolario
deprecato l’elemento immagine per esempio
ma più
Courtney avrebbe assunto l’errore
gestire il modello di XML e l’errore
gestire il modello di XML è questo se ci
è un singolo errore nel file XML no
analizza correttamente il file XML
errore draconiano che ora gestisce mai
è venuto per essere
XHTML – non è mai esistito perché noi
come sviluppatori come autori e browser
anche i produttori hanno respinto questo abbiamo detto di no
è assolutamente pazzesco perché dovremmo metterlo
questo davanti agli utenti qualcosa che è
così fragile che potrebbe rompersi così facilmente
non ha senso sto andando a
stare con te conosce le lingue resilienti
quindi abbiamo rifiutato XHTML due a causa della sua
rigorosa gestione degli errori draconiani e ancora
eccoci qui circa dieci anni più tardi e
in qualche modo abbiamo deciso che è così
perfettamente accettabile per usare qualcosa
con il rigoroso errore draconiano nella gestione di
rendere un po ‘di testo su uno schermo che ho preso
lo strato più fragile della pila e
usandolo per il più importante
funzionalità che ricordo un paio di
anni fa c’era un giorno in cui nessuno
il mondo potrebbe scaricare Google Chrome
nessuno ricorda questa pagina web per
il download in Google Chrome era rotto
clicchi sul link tutto ciò che vuoi
Scarica Chrome non funzionava e
il motivo era che c’era un errore in a
file javascript che non sembra a
ha senso perché perché dovrebbe
JavaScript ha qualsiasi effetto su qualsiasi cosa
facendo clic su un link ma il motivo era questo
il collegamento era stato codificato in questo modo
che stava usando lo pseudo JavaScript
il protocollo non è proprio un valore href
e quindi quello che avevi era il più
fragile strato della pila che viene tirato
giù nel livello più resiliente
stai facendo conoscere tutto il
altre cose che vengono con quello
fragilità ma abbassa fino a lì
quello dovrebbe essere più resiliente e
e in grado di rispondere a errori come
questo intendo che l’hanno risolto tutto
alla fine alla fine e l’errore è stato
probabilmente completamente estraneo
probabilmente qualcosa potrebbe essere diverso
ma a causa del modello di gestione degli errori
di JavaScript dove è sufficiente un errore
per interrompere l’analisi del file lì
era un tempo in cui nessuno al mondo
caricare Google Chrome e penso che questo
indica un’altra legge che sul web è
proprio come
pourtant come pastelli legge e questo è
La legge di Murphy tutto ciò che può possibilmente
andare male, andrà male che era un vero e proprio
persona dal modo in cui era un aerospaziale
ingegnere e perché aveva questo
atteggiamento nessuno è mai morto sul suo orologio
ora non ci piace pensare in questo modo noi
piace fingere che tutto vada
stai bene e sai nel caso dell’HTML
e CSS possiamo farcela con
pensandoci perché il peggio è
succederà che il browser sia
salterò su qualcosa che hai fatto
un errore in un elemento o hai fatto un
errore e alcuni CSS non è un grosso problema
JavaScript può essere un grosso problema
La lingua Stewart ha messo insieme una specie di
elenco di tutte le cose che possono andare storte
con JavaScript sul lato client e alcuni di
queste cose sono sul server e alcune
di loro sono sulla rete e alcuni di
sono sul browser all’altra estremità
ma il punto sta facendo anni che tu
non posso prevedere questo non è come lo sai
oh questi particolari browser non otterranno
il tuo JavaScript è come bene a
tempi diversi in diverse situazioni
persone diverse non otterranno necessariamente
il tuo JavaScript va bene usando l’hotel Wi-Fi
Credo che siamo stati tutti familiarità con
alcuni di questi problemi e abbiamo bisogno di
accetta questo ed è ok che questo
non è la fine del mondo altro
le industrie sono riuscite ad accettarlo
pensa che conosci l’industria automobilistica
e ok, probabilmente il motivo per cui
lo fanno a causa della regolamentazione
ma sai che testano accuratamente i loro
le auto si legano nei manichini dei crash test
e li distruggo in muri, voglio dire
immagini se l’industria automobilistica un giorno
ho detto che sai che siamo stati
pensando a questo e non lo siamo più
andando a strapazzare manichini manichino di crash test
nelle macchine e le gestisco nei muri di
ad alta velocità perché stavamo pensando
su di esso e in realtà pensiamo che
queste macchine saranno guidate da esseri umani no
manichini di crash test anche noi anticipiamo
che questi umani guideranno le macchine
strade piuttosto che sfondarle
muri ad alta velocità e avrebbero ragione
ma sì è quello che speriamo tutti e
speri per il meglio ma tu ancora
Preparati al peggio e non penso
ci stiamo davvero preparando per il peggio
la nostra mentalità puoi sperare per il meglio
e prepararsi al peggio allo stesso modo
ora queste due cose non sono contrarie
e il mio amico Trent Walton che è un
designer di Austin di cui ha scritto
questo ha detto come macchine progettate per
eseguire un caldo estremo o strade ghiacciate
siti web dovrebbero essere costruiti per affrontare il
la realtà del web è intrinseca
variabilità la realtà
della variabilità intrinseca del web che è
quello che non ci piace accettare che lì
è questa natura intrinseca sconosciuta al
web a causa del browser di cui parliamo
il browser non è il browser che è
il browser è giusto ci sono molti di
li su molti tipi di dispositivi e tu
non posso sapere per certo quale sia la situazione
è con la rete con il browser tutto
le cose vanno male quando va bene
ho solo bisogno di riconoscere che siamo molto
bravo a creare consensuale
allucinazioni proprio come ricordare
quando tutti i siti web erano 800 pixel di larghezza
o 640 pixel di larghezza o mille di 24
larghi pixel quando in realtà potrebbe essere
tutto bene, quindi dobbiamo riconoscere
la realtà del web è intrinseca
variabilità e ho capito che questo suona
molto mi fai e mi ha fatto esplodere fino ad ora così
potresti pensare come sei tu
dicendo che non dovremmo usare JavaScript
a causa del suo modello di gestione degli errori n
questo non è quello che sto dicendo a tutti che ho fatto
non vieni a darti problemi a cui sono arrivato
darti soluzioni ecco cosa penso
possiamo fare questo è l’approccio che prendo
quando costruisco siti web , succederà
suono apparentemente semplice ma qui va
tre passi uno identifica il nucleo
funzionalità di ciò che stai costruendo
due tu fai quella funzionalità
disponibile utilizzando il più semplice possibile
la tecnologia e poi si migliora okay
sembra piuttosto semplice andiamo
attraverso di esso, passo dopo passo, per primo
identificando la funzionalità di base e
noti qui ho detto il nucleo
funzionalità il punto qui non è quello
identificare quali sono tutti i possibili
cose che gli utenti potrebbero voler fare con
questo servizio il punto qui è quello di restringere
giù a destra convergono qual è l’unica cosa
vuoi che tutti siano in grado di fare
indipendentemente dal tipo di dispositivo che hanno
avere indipendentemente dal tipo di browser
l’hanno ristretto al centro
funzionalità imposta la tua linea di base così per
esempio diciamo che sei un fornitore di notizie
bene direi la tua funzionalità principale
sta fornendo la notizia che è finita
lì non andare oltre non siamo
anche parlando di tecnologie qui no
importa come fornirai notizie
identifica solo quello che farai, facciamolo
dì che stai facendo una specie di social
piattaforma di rete dove le persone possono
inviare messaggi e ricevere messaggi da
l’un l’altro in tutto il mondo bene
è proprio lì che è il nucleo
funzionalità la capacità di inviare
messaggi la possibilità di ricevere messaggi
interrompere se si dispone di un servizio di condivisione di foto
l’indizio è nel nome della capacità di
condividere di nuovo le foto che voglio essere in grado di
vedere le foto che voglio poter condividere
funzionalità core foto identificate e
diciamo che hai una specie di
strumento collaborativo per la scrittura di editing
e condividendo con le persone quei verbi
proprio lì voglio essere in grado di scrivere
un popolo modifica voglio essere in grado di
condividi bene ok abbiamo identificato il nucleo
funzionalità e non abbiamo nemmeno
pensato a questo punto sulla tecnologia
e questo è il modo corretto per farlo
non iniziare a pensare al
la tecnologia prima pensa a cosa cosa
quello che l’esperienza è prima cosa
vuoi fornire alle persone ora inizio
pensando alla tecnologia, ma questo è
i chrismas rendono quella funzionalità
disponibile utilizzando la tecnologia più semplice
non la migliore tecnologia il più semplice
la tecnologia la ragione per cui vuoi iniziare
fornendo tale funzionalità di base
voglio che tutti siano in grado di accedere con il
la tecnologia più semplice è quella più semplice
la tecnologia è più probabile che stia bene
supportato da tutti mantenendolo come
il più semplice possibile, quindi nel caso di
fornire notizie online direi bene
la tecnologia più semplice che potrei usare
sarebbe HTML per contrassegnare le notizie intendo
tecnicamente la tecnologia più semplice per
essere un semplice file di testo contenente le notizie
ma mi permetterò di crescere
la barra leggermente e dire che possiamo usare HTML
è tutto ok hTML è il più semplice
possibile tecnologia inviata da un server
a un browser fatto nel caso di a
sito di social networking ho bisogno di essere in grado
per vedere i messaggi probabilmente al contrario
ordine cronologico bene abbiamo HTML
per quello ma devo anche essere in grado di farlo
invia messaggi ok questo è il punto in cui inizio
per ottenere un po ‘ più complesso dove
elementi di forma interessanti lo inviano al
server e ora sono in grado di inviare a
messaggio ad altre persone va bene così
il modo più semplice possibile per farlo
nel caso di un servizio di condivisione di foto
molto simile avrà ancora un
lista cronologica inversa ma questa volta
non è messaggi di testo questa volta è così
saranno fotografie quindi dobbiamo usare
l’elemento immagine e di nuovo una forma è
cosa useremo per inviare le fotografie
ma leggermente diversa questa volta invece
del tipo di input è uguale al testo è l’input di utilizzo
il tipo equivale al file per quanto posso pensare
questa è probabilmente la tecnologia più semplice
puoi usare per abilitare il core
funzionalità di condivisione di fotografie
invia questo file al server il server
quindi si prende cura di
di mostrarlo ad altre persone e in
il caso di qualche tipo di collaborazione
strumento di scrittura devo essere in grado di scrivere
bisogno se tu dovessi modificare e lui era
condividere l’area di testo va bene, questo è il
la tecnologia più semplice a cui potrei pensare ma
se se dovessi fermarmi a questo punto giusto
con quei quei servizi non sarei
trattenendo il respiro in attesa che l’IPO è
farei schifo l’esperienza farebbe schifo
abbiamo qualcosa per cui funziona
ognuno che è grande ma non lo è
funziona particolarmente bene
assolutamente bene perché abbiamo ottenuto il passaggio
tre e questo è in realtà dove tu
voglio passare il tuo tempo il primo
due passi non dovrebbero richiedere molto tempo a tutti
destra abbiamo appena visto lì si sa molto
semplice roba di basso livello questo è dove tu
vuoi passare il tuo tempo sta migliorando
migliorare l’ esperienza che lo rende
veramente dicendo che questo è dove tu
differenziarti dal
concorrenza bene nel caso di
fornire notizie quello che abbiamo ora è un
Facciamo la pagina HTML inviata dal server
rendilo bello aggiungiamo il layout usando
I CSS ora potrebbero sembrare strani a pensarci
sul layout come un miglioramento giusto ma
se pensi al design reattivo
in particolare quando stai progettando
prima il cellulare e poi l’aggiunta nel
stili e query multimediali per grandi e
schermi più grandi è esattamente quello che
stai facendo come stai trattando il layout
un miglioramento e nota ogni volta che dico
il miglioramento non interpreta ciò che sono
dicendo solo un miglioramento o semplicemente
un miglioramento come ho detto il
i miglioramenti sono ciò che importa
miglioramenti in cui si fa davvero il
differenza Sto solo riconoscendo che
sono miglioramenti sul nucleo
funzionalità in modo che possiamo farlo sembrare
bello nel layout possiamo farlo sembrare
bello con i caratteri web scrivi bene
tipografia sul web ce l’ abbiamo ora
che non avevamo prima che sia
incredibile e di nuovo è un miglioramento
non tutti avranno quel web
tipografia e va bene così
ognuno ottiene la funzionalità principale
che è l’accesso alle notizie ora nel
caso del social network che abbiamo costruito
sì tecnicamente funziona che posso vedere
messaggi che posso inviare messaggi ma dio
sai bene un’esperienza terribile
fermiamo l’intero aggiornamento della pagina intera
ogni volta che invio un messaggio, facciamolo
introdurre alcuni JavaScript di Ajax così
quando invio un messaggio che non ho
per aggiornare l’ intera pagina e andiamo
inoltre ciò che altre persone inviano messaggi
che posso vederlo senza avere il
l’intera pagina si aggiorna correttamente usando alcuni
tecnologia come WebSockets o quando
siamo entrati nei browser che funzionano
conosci e forse non tutti i browser
supporta queste tecnologie
di nuovo va bene perché il nucleo
la funzionalità è ancora disponibile per
tutti stiamo stratificazione questo in cima
quella funzionalità principale nel caso di
l’app di condivisione delle foto facciamolo
tutto ciò che abbiamo già detto layout
con i font CSS far web Ajax WebSockets
tutta quella roba buona andiamo oltre
cos’altro possiamo fare quando sai di essere
caricando il file molto prima di noi
inviarlo al server possiamo iniziare a utilizzare
l’ API del file che conosci moderna
i browser hanno quello che potremmo fare con quello
l’API del file può iniziare a giocare con
immagine ancor prima che vada al server
fare cose come aggiungere filtri CSS mettere a
tono seppia dolce su quell’immagine giusta e
ancora non tutti i browser supportano tutti
queste tecnologie ancora e va bene
questi sono miglioramenti in cima al
funzionalità di base che stai fornendo
ciascun browser secondo i suoi mezzi e
nel caso di questa collaborazione – bene
ovviamente useremo Ajax e
WebSockets e layout e web font tutti
che roba buona ma andiamo oltre
non fare affidamento su Internet
connessione iniziamo a usare
stoccaggio locale di qualche tipo e abbiamo
molti tipi di archiviazione locale nei browser
in questi giorni in modo che possiamo sapere iniziare
memorizzazione di cose a livello locale e sul
server e andiamo davvero lontano, facciamolo
iniziamo cominciando a renderci pari
indipendente dalla rete stessa Iniziamo
trattare la rete come un miglioramento
usando qualcosa come i lavoratori del servizio
questa è probabilmente la tecnologia che sono
più entusiasta di adesso
sviluppo front-end ci si sente come a
corretto cambio di gioco nello stesso modo in cui
L’Ajax ha fatto dieci anni fa che può
cambia radicalmente il modo in cui costruiamo e
progettare queste cose eppure è stato
progettato molto vero quei principi di
il primo web e il primo HTML
elementi che hai detto che puoi usare solo
ServiceWorker
come un miglioramento devi già
avere qualcosa che funziona prima di te
introdurre il servicestore per farlo
funziona meglio perché la prima volta a
l’utente visita il tuo sito non c’è
ServiceWorker installato quindi è una specie di
un geniale pezzo di design perché quello
significa che possiamo iniziare ad adottare
serviceworker adesso anche se lo fosse
supportato solo in un browser che potremmo
iniziare a usare il servicestore perché è
interamente un miglioramento un molto potente
aumento
sì, i lavoratori del servizio sono una specie di
fantastico tutto bene, ecco un tre
processo di passaggio
che puoi costruire qualcosa
funziona per tutti
e ancora premia il più nuovo più moderno
browser usando l’ultimo e
la più grande api ha ragione in un certo senso è gentile
di dare voi stessi dando il
libertà di giocare con questi nuovi fantastici
Gamma per trascorrere un po ‘di tempo a passi uno
e due ti viene data la libertà di impazzire
al terzo passaggio e cosa mi piace di questo
modello questo è davvero solo un modo di
pensando che sia una sorta di scala libera
Funziona su scale diverse che sono stato solo
parlando a una scala dell’intero servizio
giusto qual è la funzionalità principale di
l’intera cosa che stai costruendo ma tu
posso immaginare di applicare questi stessi tre
passi al livello di un URL proprio il
livello di una pagina qual è il nucleo
funzionalità di questa pagina come faccio
quella funzionalità disponibile con
la tecnologia più semplice e poi come posso
migliorare o si può prendere più lontano siamo
tutti entrano nei nostri sistemi pensando
e design modulare e componentizzazione
tutto ciò che potresti applicare a questo al
livello di un componente qual è il nucleo
funzionalità di questo di questo modulo
questo componente come faccio a farlo
funzionalità disponibile con
la tecnologia più semplice possibile e poi
come posso migliorare come potresti
dì prova di fornire indicazioni
da qualche parte va bene, questo è il nocciolo
funzionalità di questo widget qui bene
la tecnologia più semplice per questo è un po ‘
testo con l’indirizzo bene fatto
abbiamo fatto i passaggi uno e due ora come fare
Miglioriamo aggiungiamo una mappa che è
migliorato di più facciamo una mappa sfuggente
andiamo oltre, è fantastico
animazioni e sai effetti speciali
può continuare a migliorare al livello tre
perché ti sei dato da solo
la libertà di scrivere quello che sto ottenendo
qui è che io voglio andare via da
questa idea che c’è una dicotomia
che puoi avere un accesso accessibile
esperienza disponibile per tutti ma
è noioso o hai questo ricco
un’esperienza coinvolgente ma funziona solo
negli ultimi e migliori browser e
dispositivi che sto dicendo che puoi avere entrambi
può avere entrambi con lo stesso codice base non
a diversi URL o diversi
sottodomini ma lo stesso sito lo stesso
il servizio può fornire entrambi allo stesso
tempo sai che tendiamo a parlare molto
sul debito tecnico giusto dove alcuni
la decisione presa in passato è
ora morderci sul culo è una specie di venire
di nuovo a perseguitarci bene cosa cosa questo
ti dà passando il tempo con i passaggi
uno e due cosa questa coda
sei un credito tecnico, va bene
sicuro di avere la funzione principale
disponibile a tutti, allora puoi andare
pazzo passaggio tre e hai dato
te stesso quel tipo di credito tecnico
per usare l’ultima e più grande API così
indipendentemente dal supporto del browser
è come e c’è un po ‘di mito io
pensa quando parlo di questo alla gente
pensa ah se sto considerando quanto è più vecchio
i browser si comporteranno quando sto costruendo
significa che trascorrerò il mio tempo
browser più vecchi e in realtà niente
potrebbe essere più lontano dalla verità
nella mia esperienza perché so esattamente
come si comportano i vecchi browser
fai a conoscere la tecnica semplice te
conoscere la semplice funzionalità che funziona
per loro non ho bisogno di passare il mio tempo
con i browser più vecchi ho passato tutto il mio tempo
nei nuovi browser che provano questo nuovo
roba interessante provando l’ ultimo AP
sicuro e la conoscenza che conosco
esattamente quanti anni avrà il browser
comportati ora mi sto spostando da un po ‘di tempo
per domande ma voglio prevederne alcune
delle domande che potresti avere
Generalmente ottengo due categorie di
respingimento su questa idea e il primo tipo
di pushback contro persone che dicono questo
è troppo facile
piuttosto è troppo semplice è troppo ingenuo
giusto l’idea che si questo questo
la tecnica funzionerà per un semplice sito web
ma non potrebbe mai scalare per il
cosa davvero complessa che sto costruendo
giusto e ciò che è interessante è quello
Ho sentito questo pushback prima che tu lo sappia
quando non avremmo mostrato la mia età ora
ma quando stavamo cercando di andare via
dall’uso di tabelle per layout e font
i tag e invece usare i CSS c’erano a
sacco di gente ha detto bene che va bene per
il tuo piccolo blog semplice ma non lo è mai
rimarrà una scala per te come te
conoscere i siti web aziendali e in Doug
Bowman lancia wire.com Mike Davidson
espn.com e le porte si aprono
e ora tutti usano i CSS per il layout
proprio quando è arrivato Ethan
design reattivo ce ne sono molti
respingimento da parte di persone che dicono che è così
bene Ethan per i tuoi piccoli siti qui
un piccolo blog semplice ma non potrebbe mai
lavorare per questa complessa applicazione web che
Sto costruendo e poi il Boston Globe
lancia il telefono di progettazione Microsoft
pagina elogiata per essere reattiva e ora
le cateratte si sono aperte là ed è
la stessa opportunità qui alle porte
potrebbe aprire per costruire ricchi coinvolgenti
applicazioni che sono contemporaneamente
disponibile a tutti indipendentemente da cosa
dispositivo o browser stai usando
qualcosa che funziona in Opera Mini su a
connessione lenta
funziona anche incredibilmente sull’ultimo
versione di Chrome con tutte le ultime
L’API è abilitata correttamente, quindi questo è il
respingere ciò è troppo facile
ma l’ altro ostacolo che ottengo è quello
questo è troppo difficile da guardare
processo in tre fasi e vanno te
dicendo che tu sai che sto per farcela
devo passare il mio tempo a fare qualcosa
funziona e lo sai sempre
richieste del server client e poi quando I
ho iniziato a migliorare sostituendo tutto ciò che ho
duplicare tutto ciò che funziona e ora ha
a tutti capita nel cliente bene no
esattamente no, non è quello che sto dicendo
perché ricorda che ho detto che ti identificavi
la funzionalità di base non tutto il
funzionalità la funzionalità principale
c’è un sacco di cose che puoi aggiungere
nel passaggio 3 che non ha corrispondenze
funzionalità e nei passaggi uno e due
fintanto che crei quel nucleo
Funziona funziona bene Matt Marcus
che ha lavorato al design del Boston Globe lui
detto che sai che ci sono molte funzionalità
su Boston Globe con cui non lavori
JavaScript non disponibile ma leggendo il
le notizie non sono una di quelle caratteristiche giuste
quindi di nuovo si tratta di questa differenza
tra la funzionalità principale e hey
conosci questi giorni con JavaScript su
lato server e sul client
lato puoi sbarazzarti di un po ‘di quel tempo
– come lo chiamiamo oggi?
isomorfico universale qualunque esso sia
ora c’è la possibilità che tu possa
hanno letteralmente lo stesso codice base sul
client e il server
ma anche così no, non sto parlando
riproducendo tutto sul server e
quindi sul client o viceversa è
solo avendo quella base quella che tu
può ricadere su e di nuovo su questa spinta
indietro che è troppo difficile e guarda che lo farò
vi dico la prima volta che si esegue questa operazione si
sarà dura la prima volta che proverai e
pensa in questo modo e crea una build di servizio
un sito crea un’applicazione in questo modo
ti porterà più tempo garantito
ma l’ ho provato anche prima
la prima volta che ho provato a costruire con i CSS
invece di tabelle e tag dei caratteri ci sono voluti
me molto più tempo ma la seconda volta
dopo di ciò non ci è voluto più tempo
e poi la terza volta è stata più veloce e
poi è diventato normale ora io
impossibile creare usando tabelle e font
tag se volevo e uno reattivo
il design è arrivato se avessi speso il
ultimi dieci anni di riparazione con il web
pagine e poi improvvisamente decidi di farlo
prova a creare un sito web reattivo
un mondo di dolore giusto allora il
la seconda volta bene ancora probabilmente un mondo
di dolore ma non così male e poi
la terza volta diventa
e poi diventa più facile di nuovo e ora
è solo normale che è solo come lo facciamo
le cose quindi ci vorrà del tempo che darò
voi, ma vale la pena investirlo
il tempo è fondamentale che cosa lo fa
sostituisce le ipotesi e queste
desideri per il controllo che abbiamo avuto per
anni, con l’accettazione della della
caos dell’inconoscibilità del web
ed è il caos del web e non
sapendo che il browser non conosce il
dispositivi smette di essere qualcosa di te
paura e inizia a essere qualcosa di te
abbracciare ed è molto molto liberatorio
ma vedo il pushback come ho detto e quello
A volte mi sento un po ‘triste quando lo faccio
vedere la natura del pushback
in particolare la gente dice che è troppo difficile
E ‘difficile c’è un lungo periodo di tempo che cosa
stanno pensando allo sviluppatore
convenienza e non fraintendermi
come sviluppatore sono uno sviluppatore molto apprezzato
convenienza voglio che la mia vita sia
conveniente e penso sviluppatore
convenienza è importante, ma non è
importante quanto l’utente ha bisogno ogni volta che
arriva a queste due cose ha bisogno dell’utente
per vincere la convenienza degli sviluppatori
il più delle volte non ci sono
opposizione più il tempo si arriva ad avere
entrambi ma nelle situazioni in cui essi
sono in opposizione, vado per utente
ha bisogno ogni volta che ho spesso detto che se
Mi trovo di fronte a un problema sul web
e ho la scelta di farcela mia
problema o rendendolo il problema degli utenti
bene rendilo il mio problema ogni volta
perché quello è il mio lavoro, vengo pagato
per fare questo giusto così perché si chiama lavoro
sembra che siamo sempre stati così
giusto gli sviluppatori costantemente ah
è troppo difficile, è troppo difficile
è se abbiamo bisogno di fare vita
più facile come il web design sarà così tanto
più facile quando abbiamo più di 216 colori
giocare con è vero una volta sola
avere 216 colori proprio sul nostro web design
sarà molto meglio quando possiamo iniziare
utilizzando font diversi da questi sistemi
tipi di carattere preinstallati sui computer
giusto il nostro sviluppo web web sia così tanto
meglio una volta che le persone si aggiornano da Netscape
4 allora tutto sarà grandioso
se le persone volessero semplicemente aggiornare
Internet Explorer 6 quindi la vita sarà
essere fantastico
sono gli utenti di Windows XP che devono
aggiornamento in modo che tutto andrà bene
se quegli utenti di versione 2 di Android lo farebbero
basta scendere e aggiornare il loro sistema
destra
c’è sempre qualcosa c’è sempre
qualcosa che stiamo lamentando
e il mio amico Frank Mirror ha scritto questo
la storia di alcuni anni fa chiamata c’è a
cavallo nell’Apple Store
e poi descrive il reale
esperienza di vedere un piccolo cavallo nel
Apple store e descrive come vedere a
piccolo cavallo nel negozio Apple ma lui
descrive anche la reazione o completa
mancanza di ciò da parte di tutte le persone nel
Apple Store guardando i dispositivi Apple
c’è questa cosa fantastica in
davanti ai tuoi occhi
Non c’è nessuno vede il piccolo pony nel
Apple store e ha preso a chiamare
queste cose sono piccole cose da pony
miracoli incredibili proprio di fronte al nostro
occhi, ma noi non li vediamo siamo cresciuti
sono abituati a loro e penso in questo modo
il World Wide Web è il world wide web
un piccolo pony proprio questa cosa incredibile
proprio di fronte a noi roba siamo
lamentarsi costantemente di ciò che io
non può fare se fosse cd-rom o flash
o nativo, stiamo sempre confrontando il web
ad altri media e vedere cosa il web
non posso ancora fare il confronto con gli altri
medium e manca completamente ciò che solo
il web può fare e questo è questo
la superpotenza del web questo è il
tiny Pony URL così semplice come potrebbe questo
essere una superpotenza e tuttavia la capacità di
distribuire immediatamente il software direttamente da a
semplice link diamine da una nota post-it è
incredibile l’abilità di averlo
persistere a questo identificatore che tu
non può semplicemente costruire qualcosa per le persone
da usare adesso ma puoi costruire
qualcosa nel tempo
che le persone possono usare ora e nel
futuro che puoi estendere la portata di
le nostre reti per le generazioni future
estendere la portata del collettivo
conoscenza della nostra specie che è molto
responsabilità che significa che dobbiamo essere
buoni antenati e lasciano una rete
che dura una rete che è resistente grazie
tu
[Applausi]
quindi la domanda è ci sono esempi su
il web, sì c’è un sacco di loro fuori
ci sono cose che non dovresti notare è il
cosa la cosa bella del lavoro
in questo modo è che si sa non importa quale
tipo di dispositivo che stai usando
non dovrebbe notare che è stato costruito in
in questo modo ti accorgi solo di sotto
le circostanze estreme, siamo d’accordo
quando sei su quella rete schifosa
e tu esegui quel dispositivo più vecchio o
qualsiasi situazione in cui le cose vadano storte
quindi ci sono molti altri esempi là fuori
di oh guarda come è andata a finire questa cosa
circostanze inaspettate persone 10 è
come l’aria condizionata e nessuno mai
indica quando l’aria condizionata è
perfetto va bene nessuno mai si ferma la
incontro e dice posso solo dire chiunque
impostare l’aria condizionata è giusto
lo noti solo quando fa troppo caldo o
troppo freddo, quindi ci sono un sacco di siti web
e servizi là fuori costruendo in questo modo
ma non è non è una caratteristica è
proprio come si costruisce potete vedere alcuni
esempi in progress progressment org
che è un sito web che raccoglie
roba di esempi di tutorial ed articoli
così, ma in generale è più un modo
di pensare penso allora mette a
cosa particolare un sacco di grandi giocatori
finì per muoverci in questo modo
direzione c’è solo una sorta di pendolo
oscillazioni che tendono ad accadere come me
ricordo che alcuni anni fa tutti lo erano
andando giù per il percorso reso client per
tutto JavaScript tutte le cose
giusto Twitter ha fatto l’intero hashbang
struttura degli url, siamo letteralmente
javascript è requisito solo per
navigare da una pagina all’altra e loro
finì per andare via da quello e andare
a un’architettura più resiliente per
che ora la ragione per quello non era questo
idea di renderlo disponibile al
il maggior numero di utenti e tutti lo sanno
semplice prestazione si scopre che
caricamento frontale di tutto in JavaScript
significa che devi aspettare tutto questo
JavaScript da scaricare prima dell’esecuzione
l’utente ottiene tutto così il tempo per
l’utente che è in grado di interagire con
qualcosa è non è abbastanza buono se
stai facendo quella Susan molto del grande
siti web hanno avuto
sapete oscillare in quella direzione ma
rispondi ai progressi della verifica della domanda
org di miglioramento per alcuni esempi ma
sì, è difficile individuare queste cose
perché è più un modo di livello basso
di lavoro non essere timido tutto bene noi siamo
andando qui dove ti fermi intendo fare
bisogna sostenere pensare a mio avviso
c’è un compromesso tra
retrocompatibilità e impegno sì
ed a me suona come si pensa che
si dovrebbe sempre andare con i all’indietro
compatibilità che sembra essere un po ‘
ingenuo nel mio ingenuo così che è esattamente il
il pushback con cui stavo parlando è anche questo
semplice è troppo ingenuo sì, prima di tutto
frame internment il browser sei tu
sostenere è esattamente il modo sbagliato di
vai in giro perché pensi di non esserlo
pensando a quali browser farò
supportati a pensare a qual è il nucleo
funzionalità che voglio rendere disponibile
e poi qualunque browser lo abbini
funzionalità di base otterrà lo farà
il mosaico di supporto dipende da come lo si imposta
quella funzionalità di base l’esempio di
novità sul web sì mosaico lo farà
effettivamente essere in grado di ricevere quel nucleo
funzionalità l’esempio della foto
condividerlo non perché non c’era
il tipo di input è uguale a file in
mosaico ora non ho intenzione di aggiungere in a
fallback per mosaico perché non lo faccio
design per i browser che disegno per le persone
quindi invece di pensare a cosa sono
il browser che sto supportando e poi
costruendo affinché tu pensi a cosa sia
il nucleo funzionalmente voglio fare
disponibile per i browser che non so nemmeno
esiste e sì, c’è assolutamente un
trade-off ma se fai il trade-off
presto il costo del cambiamento è estremamente
basso se si tenta di prendere un sito esistente
o applicazione e riadattarla per funzionare
lo sai in questo modo, quindi stai fornendo
la funzionalità principale si
avere un momento difficile direi lo stesso è
vero di provare a fare retrofit per
accessibilità o cercando di adeguare per
reattività stai prendendo qualcosa
che già esiste e cerca di
riadattarlo è sicuramente difficile se a
nel momento in cui inizi a costruire, inizi
pensando a questa roba ti assicuri
è accessibile, assicurati di essere il tuo
la funzionalità di base è disponibile
quindi non è davvero tanto duro lavoro
Non mentirò, c’è sicuramente un
un po ‘ di lavoro per fare quel nucleo
funzionalità disponibile ma ancora
ricorda che non sto parlando di fare
tutto a disposizione di tutti
parlando di fare una distinzione
tra qui è la funzionalità di base
e poi da li avrò tutti i tipi
di funzionalità che devi davvero avere
i browser più recenti e migliori a
ricevere ora in termini di dove si disegna
quella linea tra watt core
funzionalità e che cosa è un miglioramento
sarà completamente diverso
su diversi progetti, ma lo farei
incoraggiarti a disegnare quella linea sulla base di
l’utente ha bisogno piuttosto che tu conosci il tuo
particolare testo impostato o altro
librerie che ti piace lavorare
con e tutto questo sì, è dove tu
disegnare la linea ed è sicuramente più facile
per fare questo fin dall’inizio
che provare e adattare qualcosa
questa è già una buona domanda
ok grazie mille sicuro

Please follow and like us: