Press "Enter" to skip to content

GOTO 2014 • Kicking the Complexity Habit • Dan North


buon giorno è tecnicamente buono
pomeriggio
le dodici e dieci, buon pomeriggio
c’è una cosa britannica che succede
che quando la prima volta vedi qualcuno
in un giorno dici buongiorno , no
importa a che ora del giorno è e
c’è un buon giorno è un po ‘come
un protocollo di saluto buongiorno buono
mattina come stai io sto bene
non dirai mai mai come stai bene
questo è il protocollo di violazione del problema
succede intorno a mezzogiorno perché tu
so poco dopo mezzogiorno che non lo è
mattina più così ora sei un po ‘di
mentendo così puoi effettivamente usarlo
questo per individuare le spie britanniche okay, allora
lo fai è che dici come stai
vicino a loro all’interno di esso entro una linea di
vista ma non a distanza di parola
davvero vicino a mezzogiorno e se lo sono
I loro palmi inglesi inizieranno a sudare
perché come lui mi coinvolgerà
un minuto ho bisogno di dire il bene
parola Ono che così perché sulla terra sono io
parlando di queste sciocchezze perché
perché è perché è un è
idioma è un modello che usiamo è a
modo in cui ci identifichiamo
Britishness noi gente britannica ora abbiamo
questi buffi strani capricci americani hanno
le loro buffe stranezze vanno bene
stiamo andando essere guardando alcuni di quelli
ordina così non tieni a mente questi
genere di cose dette questo discorso
prendendo a calci l’abitudine della complessità va bene così
calci in un’abitudine di complessità c’è a
è come se tu potessi vederlo come un
la metafora al lavoro è come l’idea
che è una dipendenza è un’abitudine
che è eufemismo e tu guardi
il titolo prende a calci l’abitudine alla complessità
ci sono quattro parole lì e io sono
pensando che probabilmente non hanno bisogno di essere
quattro parole che stanno dando un calcio alla complessità
dice niente di meno lo fa ancora correttamente
calci di una cosa così ha il tipo di
è un’abitudine e stiamo cercando di rompere
l’abitudine ha anche un bel secondo
significato che è come se stessimo prendendo a calci
complessità così mi piace molto che anche
è una complessità un po ‘impegnata, okay, perché?
perché sto parlando di questo il titolo di
questa diapositiva perché la complessità è
ovunque sia la complessità inutile
ovunque anche in qualcosa come
non è curioso come il titolo di un discorso
chiamato kickin l’abitudine alla complessità o come
qualcosa sicuramente innocuo come un saluto
qualcuno va bene
c’è complessità in tutte queste cose
dove voglio provare a farti ragazzi
Oggi la cosa che ho intenzione di cercare di fare
e quasi certamente falliscono in modo spettacolare
è quello di aiutarti a sviluppare una sensibilità
attorno alla complessità voglio farti
consapevole della complessità va bene
quanti immagino che molti di voi non abbiano
hai visto il video con il
giocatori di basket e l’orso tipo di
vaga e balla la sua strada
okay se non hai visto questo
Google per la break dance dai un’occhiata
YouTube per break dance bear it’s
incredibile c’è letteralmente un orso
la breakdance è a rovescio
di persone che giocano a basket e tu
non si nota la prima volta che si guarda
e la seconda volta lo guardi comunque
Non ti dirò che il secondo spoiler
il punto su questo è una volta che sei
consapevole di ciò non puoi non vederlo e io
voglio strappare un po ‘il velo
quindi ho intenzione di provare e fare bene così io
sono stato a guardare un video non così tanto tempo
fa da un tizio chiamato brett vector
inventare per principio
usa il nostro libro di riferimento in modo che non lo facciano
sembrano essere riferimento video andare e
guarda inventare per principio è
meraviglioso è meraviglioso meraviglioso
parlare dell’idea che ci sono
certe persone sono un po ‘evangeliche
un po ‘un po’ ondulato a mano
forte e schietto che vuole cambiare
il mondo in qualche modo molto stretto va bene
quindi il principio di Brett Victor sei tu
dovrebbe ottenere un feedback immediato dal
la cosa che stai creando aiuta il
processo creativo in modo da stavo pensando
questo bel pensiero ho un principio
ho dei principi sì come a
Groucho Marx come questi sono i miei principi
se non ti piacciono, ne ho altri
quale sarebbe il mio principio guida
questo e e ho corso questo ho fatto il
Test della moglie Ho eseguito questo da mia moglie ed io
detto è questo il genere di cose che dico e
lei ha detto che tu lo dici sempre
in realtà non dovrebbe essere così difficile
e guarderò il codice che guarderò
progettare o guardare le organizzazioni che farò
guarda le squadre guarderò le persone
a sistemi esso
davvero Oh Dio davvero non dovrebbe essere
questo è difficile quindi cosa sto andando a provare
e parlare nel corso del prossimo gruppo di
tempo um io voglio che tu sappia il tuo nemico
okay, quindi c’è una specie di tre tre
parti di questo discorso per un certo valore di
tre la prima cosa è che voglio aiutare
noi impariamo a identificare la complessità
la complessità è ovunque ed è così
sottile e così insidioso che non si nota
va bene
una volta menziono la stanza che sei
in è pieno di piccole sedie d’oro con
schienali dorati
non puoi non vederli ora, sì, lo eri
ignorandoli completamente tu già
cancellato loro le persone nella parte anteriore
qui la stanza non è piena di poco oro
sedie con schienali dorati ma va bene
tutti gli altri vanno bene così per lo più quello che noi
fare è eliminare le cose ok cancellando i dettagli
eliminare la roba è un modo per farlo
i cervelli gestiscono la complessità
opprimente complessità a
identificando e quindi bene così ora abbiamo
l’ho identificato così caldo
Va bene l’individuazione falli – così che cosa prova in modo
cosa posso fare allora riducendo bene
complessità supponiamo di essere già
in questa massiccia e orribile palude di
cose che chiamiamo complessità cosa possiamo fare
per ridurlo bene e poi iniziamo
facendo quello e quello si sente bene e noi
Portare gradualmente in qualsiasi modo il contrario
di complessità è e quindi cosa noi
voglio fare è come andiamo avanti per fermarci
fare un tale casino
quindi la terza parte è come evitiamo
creare complessità in primo luogo
ed è quello che ho intenzione di cercare di andare
okay, prima di tutto parliamo di
identificando la complessità ce ne sono molti
definizioni di complessità cosa c’è
interessante è quando non appena inizi
esaminando i campi in cui è specializzato
studiando cose come la complessità loro
venire con il gergo tecnico che
sembra molto simile e significa molto
cose diverse e poi il modo in cui è
come un club perché poi i ragazzi da
l’altro club usa le stesse parole in
modi leggermente diversi e poi loro
sapere che non sono nello stesso club, okay
quindi è come una sorta di password così
nei sistemi pensando che tu abbia quello che loro
chiama dettaglio complessità e dinamica
complessità, quindi complessità dei dettagli
è un sacco e un sacco di molti po ‘
molti molti bit e devi imparare tutto
il bit con uno studio sufficiente è possibile
a volte impara tutti i bit dinamici
la complessità è un comportamento emergente così
se come un sistema è in realtà un bel
sistema semplice ha il tempo giusto
pressione dell’aria di umidità della temperatura che è
la maggior parte delle condizioni atmosferiche va bene il problema è
comportamento emergente
il problema sono i fronti meteo e
diverse bolle d’aria e
le temperature e l’umidità entrano in contatto
l’un l’altro, il che significa che è impossibile
per prevedere il tempo particolarmente bene noi
stavano venendo qui a Chicago da Londra
abbiamo esaminato quattro diversi siti Web per
le previsioni del tempo di una settimana a Chicago
quattro serie completamente diverse di
risponde a tutti e quattro dei quali era sbagliato
risulta perché poi è successo
che sono abbastanza come fuori c’è il sole
se stai guardando a casa e un genitore
sarà soleggiato tutta la settimana che è
fantastico così sì, questo è dinamico
complessità complessità dinamica che gentile
di vivere con il giusto emergente
comportamento che devi essere in grado di fare
reagire o cercare di reagire a questo non è
quello che sto guardando è il dettaglio
la complessità è roba fine in
teoria della complessità è un intero spazio
chiamato Kevin che è una parola gallese e
hai complesso contro complicato okay
perché non lo rende di più
complicato o forse complesso non lo faccio
ma tu hai questi diversi
ci sono queste cose e allora quando
i ragazzi conniventi nel sistema
pensando che i ragazzi si incontreranno, combatteranno
ma è rivalità fraterna perché lo sono
tutti cercano di capire la complessità
comunque non è la definizione di
complessità voglio andare con il
definizione di complessità che voglio andare
con viene da quest’uomo questo è James
Lewis è un che è in realtà un preside
consulente in questi giorni con opere di pensiero
che è tutto molto elaborato e significa così
più vai avanti più più gentile
principale diventi come consulente si
fai sempre meno e carica di più e
più per è un modello fantastico così lui è
ora carica la strada per fare quasi
niente è così buono, ma è venuto
con la mia metrica di complessità preferita
e ha detto che ha un interessante
testa grossa va bene così ha detto che non mi piace
per guardare qualsiasi codice che non si adatta
la mia testa è più grande della mia testa
okay, digli che la sua testa su questo grande okay così
qui ecco un codice su uno schermo questo
lo schermo è chiunque usi il testo sublime
editor poche mani questo è l’originale
post sul blog per il ragazzo che stava scrivendo
testo sublime è come questo è il mio mondo
Voglio risolvere quello va bene così ora guarda
abbiamo uno due tre schermi un altro
due piccoli mezzi schermi a lato
ci sta bene
cerchiamo di applicarlo alla James si inserisce nella mia testa
metrica ben evidentemente troppo grande per
in forma nella sua testa che ciò si adatta
la sua testa va bene però ce n’è un’altra
Asse qui chi guarda che è tre
questo richiederà più di tre
James è persino in grado di guardare
quella schermata di codice va bene così
incredibilmente più complesso di quanto vogliamo essere
guardando e questo giusto ce ne sono due
anche qui va bene, non è davvero così
fisicamente, altrimenti che cosa siamo
andando a dover fare se la testa di James
diventa la nostra unità standard di complessità
dovremo fare è tagliare
La testa di James e mettila al sicuro dentro
Parigi bene nell’Istituto SI e
questo non succederà e otterremo un
un po ‘, Damien Hirst a quel punto, quindi
non quello, ma quello che stai dicendo è
si tratta di lui non può che ragionare
qualcosa se si adatta alla sua testa e
questo ha molto senso per me e per quello
mi ha fatto entrare così bene in tutto il
fori di ratto sulla provante puoi dire
ora ha detto così non posso che ragionare
qualcosa se mi entra nella mia testa e io
immediatamente andato al contrapositivo
di quello per ogni logico che è questo
se qualcosa non si adatta alla tua testa
non si può ragionare su di esso si scopre
la maggior parte delle cose con cui abbiamo a che fare
non si adatta alle dimensioni delle nostre teste
i sistemi sono organizzazioni di software
i domini dei prodotti non rientrano nella nostra testa quindi
arriviamo con modi per farcela, okay
non va bene nella nostra testa non possiamo ragionare
su di esso quindi cosa facciamo invece che facciamo
quello che sappiamo ci ripaga delle nostre abitudini
ripiegare su routine okay questo sono
andando ad avvisarti ora sugli schermi
per diventare complicato ho intenzione di mettere su un
diagramma ma ho intenzione di provare e spiegare
il diagramma per te
in circa tre minuti quindi supponiamo
anche se tu se non hai visto niente
come questa cosa che stai per vedere
prima che questo provenga da un’area di ricerca
chiamato sistemi di pensiero e sistemi
pensiero
l’idea alla base del pensiero sistemico sei tu
il mondo è fatto di
componenti correlati e il
relazioni tra i componenti e
i cicli che formano queste relazioni
sono molto più interessanti del
i componenti stessi vanno bene così questo è
oltre la causa e l’effetto ai sistemi di
interazione e pensiero sistemico ha a
insieme di quelli che sono chiamati archetipi che
è per il software ragazzi è una specie di
come modelli così dicono archetipi di
cose che accadono ancora e ancora e
c’è un archetipo che sembra
Questo
si chiama lo spostamento del fardello
archetipo va bene il modo in cui lo spostamento
il carico funziona, lasciatemi solo spiegare il
anatra lascia i simboli qui questa è una linea
unendo queste due cose va bene così
tutto ciò in una scatola o è una sorta di
misura qualcosa che posso misurare o è
un qualche tipo di fenomeno è una cosa
va bene
così e poi quello che abbiamo sono connessioni
unendo le cose alcune di queste
quando formano un cappio formano uno
di tre tipi di loop
essi o formano un loop di bilanciamento è
è diverso dalle piccole scale che vengono disegnate
su scale e così l’idea è finita
tempo queste cose si bilanciano o
formano un ciclo di rinforzo che è
dovrebbe essere una foto di una palla di neve
rotolare giù da una montagna che raccoglie neve
e tu conosci la valanga e tutto il
il terzo che non è qui è un
loop oscillante quindi a volte è tipo di
continua a oscillare tra due stati stabili
come se fossi nella doccia e
si va è troppo caldo è troppo freddo è troppo
caldo freddo se la quantità di tempo
prende per la temperatura di cambiare è
semplicemente sbagli tu puoi fare questo per a
mentre va bene pur avendo il massimo
doccia miserabile quindi esemplare rapido
infortunio alla schiena quindi la lesione alla schiena il
la fonte del problema è la causa principale
a rimpiangere
cos’è questo diagramma mostrandoci questo
lo schema ci sta mostrando questo spostamento
carico dice per qualsiasi dato per qualsiasi dato
insieme di sintomi per alcuni che presentano
sintomo c’è tipicamente un qualche tipo di
causa sottostante al
e una sorta di sintomo per quello
presentando i sintomi che tendiamo a fare
scusami , non immagino, ma a cosa tendiamo
fare è il nostro attacco questo ciclo qui perché
vedi questo link qui è un media
qualcosa succede qui effetto immediato
qui questo ciclo di fondo qui è circa
attaccando la causa che assomiglia a a
ciclo simile gira intorno al cerchio
eccetto qui è dove avviene la magia
c’è un ritardo qualsiasi sistema in cui
c’è ritardo che diventiamo riluttanti a fare
perché c’è incertezza lì e noi
temere l’incertezza e quindi tendiamo ad andare
per il facile per la vittoria rapida in modo che
l’ esempio più comune di spostamento del
un infortunio alla schiena, quindi l’ infortunio alla schiena è mio
sotto ed è la mia causa sottostante non lo faccio
so che ho un infortunio alla schiena quello che so
Ho mal di schiena e vado tutto alle mie spalle
ho visto oh, quindi penso a tutto quello che dovrei fare
per un mal di schiena cosa faccio di tutto questo
torno Prenderò alcuni antidolorifici che farò
prendi antidolorifici lì andiamo soluzione rapida
prendere antidolorifici yay whew bilanciamento
il mal di schiena torna sotto controllo
è fantastico cosa dovrei fare
beh, quello che dovrei fare è quaggiù
esercizio dieta stile di vita fisico di tutti
quella roba che sta per lis sistemica
col passare del tempo alleviare il mio aiuto alla schiena
mi riprendo e quindi rimuovo la schiena
il dolore non lo faccio sebbene io faccia il
vittoria rapida prendo gli antidolorifici il
problema succede qui qui
ottenere un effetto collaterale inaspettato okay a
conseguenza non intenzionale del
antidolorifici in questo caso qual è il
conseguenza non intenzionale del
antidolorifici Comincio a piacermi
antidolorifici
io e gli antidolorifici abbiamo una cosa speciale
andando avanti e poi non solo quelli
antidolorifici perché non lo fanno davvero
è più l’altro dolore giusto e così
hai capito tutto , ma
Inoltre, non dimenticare che abbiamo ancora il
infortunio alla schiena che non è andato da nessuna parte
e così ora perché sto prendendo
antidolorifici la lesione alla schiena peggiora
e peggio ancora peggio finché non lo è
okay irreversibile e quindi cosa succede
qui ora questo è un ciclo di rinforzo
ancora
così lato di essa sono diventato dipendente da
antidolorifici che è male va bene che è male
questo significa che la mia schiena non ne ha
meglio va bene non siamo qui questo non è un
conferenza medica quindi diamo un’occhiata a
esempio diverso diamo un’occhiata al
esempio in cui abbiamo la complessità del sistema
ho capito il grande complesso codice brutto
bloccato nella mia base di codice e non riesco a ragionare
su questo codice non si adatta al mio
dirigo bene, ma io non sono a conoscenza di grande
complessità del sistema troppo astratta
una cosa quello che sto consapevoli è questo io sono
di cui sono a conoscenza una frustrazione
confusione trovo il codice in cui io
senti il più indifeso di te lo sappia abbastanza
una vasta gamma di codice di tipo enterprise-e
che riesco a guardare è di solito rotaie
app Non ho idea di cosa sta succedendo in a
app per rails okay e se qualcosa va
sbagliato nel database ho una profondità di 17
impilare la traccia di stafilococco da qualche parte in profondità
lì in alcuni modi criptici non lo so
Non so cosa sta succedendo lì dentro
c’è magia anche io non posso guardare il codice
e la ragione su di esso perché alcuni meta
il programmatore sì ha iniettato a
un mucchio di merda che non riesco a vedere e che ho lasciato
nessuna traccia che hanno iniettato un mucchio
di merda quindi il codice che sto guardando è
non il codice che vaga, grazie giusto
questo mi succede molto non ho mai sentito
più indifeso che in quello di qualcun altro
app per rails va bene, è solo una questione personale
cosa e io amo Ruby Ruby è un grande
binari di lingua non lo capisco
a quanto pare a molte persone piace così
Lo lascerò lì così frustrato
confusione su cui non posso ragionare
questo codice non posso ragionare su cosa
fa dove dovrei fare il cambiamento I
voglio fare analisi di impatto come
capire se il cambiamento che sto
far finta qui causerà a
un problema di talpa qui va bene io
non ho quelle cose a mia disposizione
quindi cosa faccio io vado a lalala è a
Codebase davvero complicato che lavoro
intorno ad esso
Di solito vedo questo enorme nidificato
wave Eve se nidifica cosa succede e io
solo spremere la mia nuova condizione in là a
un po ‘sì, potevo riordinarlo ma
Sono un po ‘di fretta ed è solo uno
poco se la condizione oh ed è lì come
bene sono andato lì e ne ho dimenticato uno
Esatto , spediscilo , sì, direbbe
niente di giusto quindi questo è quello che facciamo cosa
dovremmo fare noi dovremmo affrontare
la complessità di base che è davvero
di solito è solitamente molto difficile
abbastanza ingrato e anche non dimenticare
questo ritardo abbiamo una roba di nave e
Ma che dico alla gente che urla
per la roba, sono solo una specie di
prendersi cura degli affari qui e
Sto facendo un po ‘di pulizia e lo sono
riducendo la complessità e loro sono
andando per quello e io non posso rispondere che io
non so quando andrà a buon fine
che ci sia incertezza, io no
sapere quanto è profonda la tana del coniglio
e anche io non so quale sia il payoff
sarà se potevo mettere se potessi
quantificare uno di quelli in cui potrei essere
con un grido ma non sono così sono tipo
andare d’istinto ho davvero davvero che
dovremmo chiarire qualcosa qui
perché altrimenti la volontà sta per
cadi zitto e spediscilo okay lo faremo
fai questo quindi gli effetti collaterali qui che cosa
l’ effetto collaterale disperatamente triste qui è
che perdiamo le competenze chiave perdiamo il
capacità di essere frustrato con quel codice
e usare la loro energia diretta loro
energia – semplificare le cose come cose
semplice come avvolgere grandi quantità di cose
in una sorta di interfaccia un qualche tipo di
barriera o posso dire tutto dietro
c’è un po ‘strano ma in sostanza cosa
non è facile capire come ma
So se metto abbastanza dati commerciali e
dati di mercato e ottengo un numero indietro e
Posso prendere decisioni fuori da quel numero e
quindi ora posso iniziare a ragionare su questo
cose come cercare le cuciture in grande
basi di codice si perde la capacità di farlo
okay, perché non lo facciamo mai così bene
ecco le cattive notizie di quegli antidolorifici
sono ovunque voglio dartene alcuni
esempi e, si spera, ti facciano sentire
scomodo come il ghiaccio
su alcune delle cose che abbiamo e
anche io spero che tu guardi
questo e vai aspetta ma è solo una cosa
lo facciamo perché è per questo che è sottile
giusto una delle sfide è ma
questo è il modo in cui lo abbiamo sempre fatto io
non comprare ma è così che abbiamo
l’ ho sempre fatto così sì, vediamo
Ecco alcuni esempi che guardiamo
architettura guardiamo al design che siamo
andando a dare uno sguardo alle tecniche
tecniche di programmazione che guardiamo
processo di organizzazione solo pochi veloci
esempi okay, ho solo bisogno di avere un senso
di dove sono gli antidolorifici
mandati aziendali useremo tali e
un tale stack di progettazione chi è chi era chi
vissuto attraverso le gioie di tutto ciò che ha
essere il progetto del figlio j2ee voglio voglio
JSP sta parlando con servlet parlando
gli esseri di sessione parlano ai bean di entità
parlando con un dao che parla con un database
cambiare un campo in una pagina web che è così
ora voglio voglio cambiare il nome
del campo il cielo non toglie bene Oh
crikey o una cosa che era un INT ora
deve diventare un galleggiante okay, quindi suoniamo
imposti il ping pong ottieni quel set
è quello che capisce, è così
lasciare tornare a quell’inserto non funziona
impostato come un attivo oh non lo so
schierare boom okay Enterprise gestire io sono
lavorare con un’azienda al momento chi
recentemente ha deciso che tutto era
sta per essere in Python tutto nuovo
il software sarà in Python okay
c’è una citazione meravigliosa da una commedia
mostra nel Regno Unito dagli anni ’80 quelli che
stavano pubblicando un annuncio in TV per un
un tempo piuttosto lungo e stava provando a
portare le persone a trasferirsi in una nuova città nel
Il Regno Unito ha chiamato Milton Keynes e ha detto
non sarebbe bello se tutte le città erano
come Milton Keynes e ti mostrerebbe
questi sono i colpi di Dilek di Milton Keynes
questa città della città di Milton Keynes ma
comunque questo bellissimo e ed e così via
la risposta della sua commedia è questa
sarebbe terribile se tutte le città erano
come ogni città
non sarebbe terribile
sì, non tutti sembrano essere come nessuno
città e questa è la stessa cosa non lo farebbe
è terribile se tutti i sistemi sono come
qualsiasi sistema giusto perché sicuramente è così
non su misura per lo scopo che riguarda
un po ‘di mandato e quindi otteniamo molto
di questo otteniamo un sacco di questa coperta
mandato aziendale e di nuovo è per
il nostro bene è perché la maggior parte di noi lo è
scemo, non dovremmo lasciarlo uscire
comunque sicuramente dovrebbe essere codificato sul nostro
la propria coppia di programmazione è buona per un po ‘
come i genitori è un po ‘ che hai
hai un amico le mani giuste come se
non hai un amico, vai a pagare
Quella persona così mandati aziendali in modo
cos’altro progettare quindi locale indiretto
scelte mi ci è voluto molto tempo per venire
con questa frase sto bene con locale
scelte che amo le persone che mi fanno amare
federata decisionale fa bene
qualcuno sa cosa significa federato lo farò
dammi la definizione di riferimento federata
è possibile che la decisione accada
localmente in un ambito strettamente definito
quadro decisionale va bene così
la legge locale è ancora soggetta a una legge
fare framework è ancora eseguito
allo stesso modo di qualsiasi altro locale
la legge ci sono linee guida, non è tutto
le noci vanno bene così siamo nello Utah e stiamo andando
andare con l’anarchia, okay , non è così
succederà nello Utah perché tutti
c’è fin troppo bello okay potremmo andare
in Texas tutti facciamo la nostra parola
quel tipo di ciò che non è così così il
il punto è che questo non è diretto e uno di
le cose che penso sia accaduto come a
terribile vergogna negli ultimi 10 anni 15
anni con il tipo di assalto
l’avvento di tutti questi metodi agili siamo noi
parlato di cui abbiamo parlato di tipo di
responsabilizzare le squadre e noi diciamo ti voglio
ragazzi di auto-organizzarsi ok io sto bene
con l’auto-organizzazione ora ce n’è un’altra
termine però che si affianca a
auto-organizzante che è auto-diretto
l’autodirezione dice che decideremo cosa
abbiamo intenzione di fare auto-organizzazione dice
scopriremo come stiamo andando
arrivare lì così generale Eisenhower uno dei
tutti noi grandi generali del 20 ° secolo lui
usato per ottenere questi follemente
come se avesse avuto il tipo di risultati
dai suoi uomini che nessun altro generale
otterrebbe e hanno detto come si fa
che è veramente facile non dico loro
cosa devo dire loro quello che mi serve
capita ma non dico loro cosa fare
si dice se non dire alla gente cosa
rimarrai sorpreso da quanto geniale
e creativo possono essere così non lo dico
li dico loro l’obiettivo dove
stiamo facendo questo genere di agili mani-fuori
roba particolarmente in scala in
organizzazioni stiamo dicendo oh
la gestione è male dire alla gente cosa
fare è male ergo niente di tutto questo , solo
guarda cosa succede okay e cosa succede
si scopre che è un disastro nella maggior parte dei casi così
quello che in realtà vogliamo fare è quello che vogliamo
avere direzione su una direzione prestabilita
senza essere direttivo, vogliamo dire
questo è dove andremo senza
micromanaging the hell e poi lo farai
essere di nuovo stupito di come andrà la gente
diavolo è fantastico
senza dare loro un perché o cosa
faranno solo roba e se lo farai
abbastanza fortunato che quella roba coincide
con tutto ciò che ti interessa ben fatto
ok ma è abbastanza improbabile
le scelte locali così orientate non rotolano
su di te ottieni le scelte locali del caos
lingue o una scelta locale va bene così dentro
nel Regno Unito abbiamo inglese abbiamo gallese noi
avere Gaelico a Scott in Irlanda questi
sono tutte le scelte locali che possono unire
localmente e localmente stanno bene quando
le persone si incontrano ai bordi per lo più
combatti bene, certo che no
capirsi fino a quando non tutti
parla inglese okay, capita che l’inglese vinca
così in effetti francese e latino uno per a
mentre l’ inglese finì per vincere e
non c’è alcun tipo di transizione gentile
dal gaelico all’inglese si impara
Inglese
non c’è transizione gentile da gallese
in inglese sono lingue diverse
quindi queste decisioni locali avevano un senso
localmente non si arrotoleranno, non lo farai
ottenere quello che arrotolare che altro io des Eaux
il tuo ide è uno strumento per mascherare
la complessità va bene così in un fantastico blog
post e i commenti su di esso lo faranno
meravigliosamente da Lee e anche come osare
non si capisce voi la programmazione
pazzo ed è
Ho detto sostanzialmente che il tuo IDE è a
facciata su come la tua lingua è pessima
questo sguardo a qualcosa come Java va bene
Java come lingua va bene, voglio dire che l’ho fatto
ho usato Java per molti anni che ho
tipo di abituato alle sue verruche e
roba qui è la cosa che Java ha un molto
la decisione della prima lingua ha detto che lo faremo
Associare i nomi delle classi ai nomi dei file
sarà la stessa cosa quindi se cambierai
un nome di classe in Java dato se cambio a
nome di classe in Python Faccio un po ‘di battitura
Ho finito se cambio il nome di una classe in
Java dice che ho un punto pecorino Java I
conosci una classe chiamata pecora e io voglio
trasformalo in una classe chiamata formaggio per
qualche motivo quindi non mi limito a sostituire
la parola pecora con la parola formaggio I
crea un nuovo file chiamato formaggio Java
copia le pecore Java per lo più tranne che io sono
sostituendo alcune delle parole in arrivo
attraverso cancellare il file originale e
poi vai e cerca qualsiasi riferimento a
in qualsiasi altro posto nel codebase e
cambia quelli atomicamente inizia il divertimento
quando inizio a cambiare i nomi dei pacchetti
a causa dei riferimenti al nome del pacchetto di
directory così ora ho un arbitrariamente
sotto la struttura di file nidificati profondi
un punto e quello che ho intenzione di fare è
creare una struttura di file fratello accanto a
esso che replica tutto copia tutto il
file in gran parte perché cambierò il
nome del pacchetto ricorda e metti tutti quelli
in e quindi eliminare ricorsivamente
depth-first tutti i vecchi file e
quindi passa attraverso ogni riferimento a quelli
al nome del pacchetto e cambia tutto
atomicamente giusto se le persone dovessero usare
editor di testo regolari per utilizzare Java nessuno
starebbe usando Java è semplicemente troppo
di un dolore o quantomeno tutti si stanno rifattendo
in Java sì e cosa potrebbe avere
causato è che potrebbe aver causato abbastanza
contropressione presto nella vita di Chavez
hanno rescisso così ridicolo
decisione ma non l’hanno fatto perché gli ID
okay e così di nuovo questi hanno preso che è un
strumento fantastico per lo più quello che sta facendo è
mascherando la stupidità di parte del nucleo
le decisioni linguistiche quindi la maggior parte delle persone che conosco
chi sta programmando in Ruby o Python o
o JavaScript userà per lo più vim Emacs
no non Emacs ma come lo conosci TextEdit
o testo sublime ma non conosco nessuno
chi chiude le persone devi essere intelligente
abbastanza per capire che chiusura deve essere
abbastanza masochista per godersi Emacs I
non so in qualche relazione che costruisce
automazione ero un enorme enorme
avvocato di automatizzare le bollette
oh no, di cosa sta andando a dire?
build ho bisogno di accelerare sta andando a
dì così costruire l’automazione suona come un
cosa ragionevole da fare automatizzare la tua build
rendilo ripetibile, nessuna build diventa
il tappeto sotto cui spazzare ogni
decisione di infrastruttura schifosa che fai
tutto il percorso fino al tuo prodotto
si finisce con uno dei
i più grandi progetti su cui ho lavorato 10
anni fa ora c’era un build.xml
scusa c’era uno script di costruzione
prenderebbe un sacco di XML candidato
i file li mettono in una generazione XSLT
un mucchio di file di build che lo farebbero
generare file di build che sono finiti
essere circa due Meg di regole di costruzione o
un’app Java all’epoca in cui aveva senso
ognuna di quelle minuscole decisioni
ha senso, sì, oh mia parola, quindi non lo sono
dicendo che queste cose vanno male, sto dicendo
sono antidolorifici e qualsiasi altra cosa
altrimenti potrebbero essere a posto, quindi rivisitali
cose TDD Non ho bisogno di parlare di CV
perché a quanto pare è morto, no
male non è morto
la cosa con TDD faccio molto meno TDD
di quanto ero abituato a non fare nessuno, sono un
grande fan di TVD la cosa è TDD III
pensare TDD è deliberata ignoranza
Vado a al fine di ragionare su
questo pezzo di codice che sto andando dovere
isolalo davvero da tutti gli altri
bit di codice brutti e disordinati perché loro
non ha senso o piuttosto non posso adattarmi
nella mia testa non posso adattarmi al tutto
sistema nella mia testa quindi al fine di
prova questa cosa di cui devo ragionare
nel piccolo e così scrivo questi
test molto piccoli è fantastico per
è un design mirato in scala ridotta
un brillante metodo di design brillante
all’interno del costrutto di un più grande
strategia ok, c’è una seconda metà per
quella frase giusto così ancora non lo sono
dicendo non fare TDD non sto dicendo di no
automatizzare la tua build, sto dicendo di essere consapevole
così come sempre
ti sta dando anche recitazione
un antidolorifico per la complessità intorno a G
processare troppo processo troppo poco
processo interessante se si guarda
qualcosa come la mischia negli anni ’90
quando è stato inventato era esattamente il
la giusta quantità di processo ci vorrebbe
mesi e mesi e mesi da fare
tutto ciò che è successo è venuto e hanno detto
in realtà ci mettiamo degli anni per fare qualcosa
la mischia è arrivata e ha detto che possiamo farlo
in mesi e prova l’impossibile
lo stesso processo 20 anni dopo è ora a
un po ‘sciocco, è ora che siamo
andando a stare insieme ogni due settimane
bene se si sta ascoltando Adrienne
Cockcroft questa mattina può costruire
distribuire test distruggere e abbandonare metà a
dozzina di prodotti in due settimane
perché mai vorresti due settimane?
sii il tuo programma di pianificazione che è giusto
Bonkers due ore forse due giorni a
allungare due settimane mi è dispiaciuto di averlo fatto
cambiato società due volte giusto cosa
peso stai parlando di quello che abbiamo
imperniati su di noi non sono più disponibili
anche la cosa più e, infine
ad una dimensione la legge di Conway così
organizzazione quando si ha
complessità organizzativa che noi tamponiamo
noi stessi creando software
complessità se upstream e
i ragazzi a valle sono inaffidabili o
non risponde o non posso fidarmi di loro
allora quello che faccio è che ho messo che la sfiducia
nel mio codice e questo è il motivo
l’architettura su scala inizia a portare
l’organizzazione o la comunicazione
strutture dell’organizzazione in cui ti trovi
che è la legge di Conway è perché siamo
cercando di portare a termine il lavoro e il modo in cui
mettiamoci al lavoro, quindi ci isoliamo
il modo per fare davvero il lavoro è andare
a monte e parlare con quei ragazzi e
impegnarli o andare a valle e
parlare con quei ragazzi e coinvolgerli quando
stiamo parlando di sviluppatori che stanno andando a monte
creando collaborazione con le parti interessate
proprio quando stai andando a valle
si tratta di creare collaborazione con
operazioni di persone e DevOps e tutto il resto
roba buona quindi queste sono cose queste sono
cose che possiamo fare non lo facciamo
ci circondiamo di interfacce
questo mostrerà così bene che ho 12 minuti
a sinistra e solo alla seconda sezione
quindi va bene non so che suona a
riducendo quindi la complessità
ridurre la complessità davvero non lo è
questo è il più difficile da ridurre
la complessità sta riconoscendo la complessità
okay monitorando i tuoi carichi cognitivi
una ricerca cognitiva cognitiva
la psicologia suggerisce che c’è una cosa
chiamato carico cognitivo carico cognitivo è
quanto è difficile ragionare su una cosa
quindi monitorare un carico cognitivo significa
questo significa è la cosa che sto ragionando
circa dovrebbe essere così difficile da ragionare
su questa cosa Ward Cunningham ha un
bella illustrazione dice che dice
ci sono alcuni problemi che amo il wrestling
con I escono da quel problema in modo più intelligente
Esco da quel problema avendo
Sviluppato si sa come programmatore o come
un costruttore di prodotti o qualcosa che io vengo
su
ha detto che il collegamento a una stampante non lo è
uno di quelli che si connettono a
la stampante è la nostra merda, eccoci di nuovo qui
per connettersi a una stampante che stai scherzando
tre ore più tardi ancora cercando di
connettersi a una stampante proprio brillante
so che è così connettivo carico cognitivo
a una stampante tre ore davvero difficile
lavoro per un programmatore molto molto intelligente
non è Matt che non è così
abbinare bene, quindi se inizi a individuare un
carico cognitivo sproporzionato
carico cognitivo che dovrebbe essere un
Indicatore che probabilmente c’è
qualcosa che puoi fare bene così il prossimo
cosa da provare e sviluppare è vedere
cosa c’è davvero lì in spugna
scrive su queste streghe in questo modo
questo è libri del mondo e uno di
queste streghe ha il dono di prima
La vista che ho detto non intendi la seconda vista
dice di no, vede quello che c’è davvero
oh sì, vedendo cosa c’è davvero lì
questo è sorprendentemente difficile
così Joe si scalda i suoi grossi signori sanno così lui
Stavo lavorando con lui e lo eravamo
scrivere un sacco di roba Java ed è stato
abbastanza webby e quindi eravamo abbastanza gentili
Roba web Java e ha detto che servlet
cosa che usi che come oh dimenticavo che
era lì dentro è solo una parte di
il mondo giusto è solo quello che abbiamo appena
l’ha sempre avuto
abbiamo sempre avuto in Java dove abbiamo
sempre avuto il contenitore servlet e il
contenitore di servlet ha ha il ciclo di vita
filtri interceptor strappano lacrima
loro di un mucchio di attesa così Joe se ne andò
e re-implementato ha scritto un HTTP
server in Java perché non ci sono
abbastanza di quelli ma si scopre il suo
fa solo che il suo è solo un HTTP
server non qualsiasi altra cosa che ha come
consumatore ha un’interfaccia l’una
l’interfaccia è chiamata richiesta Handler
ha un metodo su di esso indovinare cosa
il metodo è gestire la richiesta che è gentile
di facile testare un tipo di facile a
capire iniziare in circa un millisecondo
okay, non è una brutta pila, sì, perché
terra qualcuno potrebbe sedersi lì e scrivere
un nuovo server web perché avrebbe visto
ciò che è veramente lì ha il dono di
vedendo cosa c’è veramente questo è il
grande se puoi creare coerenza
puoi creare idiomi condivisi condivisi
principi allora inizi a diventare enorme
vincere la parte posteriore di quella prima cosa
è questo è non vogliamo tutto per
Sii identico Non voglio tutti voi
ragazzi a fare la stessa cosa che è
sciocco
ma se stiamo lavorando fuori lo stesso insieme
di principi di principi condivisi più
in qualche contesto li applichi
determina le tue pratiche in questo
contesto basato su questi principi di condivisione
Farò questa cosa ha senso
fai questa cosa e cosa significa è se
qualcun altro doveva venire con il
gli stessi principi guida sono probabili
per prendere la stessa decisione che riduce
carico cognitivo Posso guardare in una situazione
e posso dire che hai fatto questa cosa
hai preso questa decisione, posso capire perché
l’hai fatto
perché è un po ‘simile a quello che io
avrebbe fatto bene
la differenza sono dati questo è un meme che ho
ho cercato di uscire là fuori al più presto
come tu hai un certo grado di
coerenza ora posso iniziare a vedere
incoerenza come segnale se abbiamo detto a
decidiamo tutti in questo particolare
architettura questo particolare sistema è
particolare qualunque cosa per lo più quando
stiamo inviando messaggi in giro per volontà
probabilmente lo sopravvalutano
probabilmente userà Jason è un
decisione arbitraria potremmo inviarlo
un messaggio bus e utilizzare AMQP non mi interessa
qualunque decisione prendiamo, decidiamo tutti
lo faremo eccetto che vedo
Matt ha scritto qualcosa e sta usando
allocazione diretta della memoria tra due
processi che parlano di un protocollo binario
cosa mi dice quello che ti dice
una delle due cose o una delle tre cose
mi dice che Matt non ha ricevuto il promemoria
giusto o mi dice che è tutto questo
questioni anche se non ha ottenuto il memo
o quello che potrebbe dirmi è che Matt ha avuto il
grazie
questo è un caso speciale che potrebbe essere un
caso di percorso veloce bassa latenza e questo è
perché ci sta su in ogni caso guardo
quello e perché non è come il
altri bambini che segnalano e io salgo
c’è qualcosa di interessante laggiù
se invece ogni singolo messaggio
decisione che era completamente locale
undirected e totalmente arbitraria,
sarebbe tutto rumore ogni singolo bit di
la messaggistica andando ovunque sarebbe solo
Okay arbitrario e quindi non lo farei
sappi che Matt aveva preso quella decisione
per questo motivo ha appena fatto che
decisione perché ha letto qualcosa su
Hacker News, quella mattina si sa che
Era bello, ovviamente, che non sarebbe successo
perché è una notizia degli hacker ma va bene così e
e immagino il più grande asporto che io
avuto per um per aver cercato di creare
la coerenza è è la legge è quando io
realizzare familiarità e semplicità di
cose diverse a cui sei abituato
crappiness
quello che sta succedendo è lo schifo
piegare il cervello in modo tale che
ora è ok con la schifezza in esso sei
tipo di scricchiolio in una forma del genere
in te stai andando oh non è poi così male
sì ho potuto fare questo diritto va bene sei
ha rotto quello che sta succedendo nel tuo cervello e
poi qualcuno arriva e dice come
fa quel lavoro uscì appena ricevuto
per essere questa forma e lo faranno tutti
senso okay e così siamo diventati
familiarità con una cosa ma non è così
fare la cosa semplice e così uno dei
le cose che provo e faccio ogni volta che posso
Prenderò degli occhi nuovi in ​​a
situazione e dirò qual è il
cosa più stupida vedi perché se dici
qualcosa come se ricevessero qualcuno di nuovo
la squadra e loro dicono
c’è qualcosa che vorresti cambiare
sono tutti sul loro miglior comportamento
perché sono di nuovo di nuovo no no no così bene
è come se fosse la cosa più stupida di te
dì e dicono che il tuo conto prende
dieci minuti che sembra un po ‘sciocco dato
la velocità si tenta di spostare questo e il
e poi improvvisamente vai hmm che ha criticato
la build oh no right lascia che ti dica
la storia di costruire il tuo secondo a
sei mesi per ottenere la build down
il fiume che è a dieci minuti dovrò
sai che abbiamo lavorato a lungo e duramente
ancora dieci minuti ancora dieci minuti
è ancora oltre l’ adrian Cockcroft
Soglia di oggetti lucenti come te lo sai
dieci secondi o qualunque cosa non sia ancora
va bene e ha ragione o ha ragione
hanno ragione vengono e dicono
quello lo costruisce ci vuole troppo tempo perché io
conosco la storia della build e l’ho
ho preso il bagaglio con quella build, sto bene
con dieci minuti in realtà non sto bene
con dieci minuti il mio cervello si è piegato abbastanza
in forma per stare bene con esso
okay, la nuova persona è come no, è una
cosa strana che non va bene
quindi prova a prenderlo in una breve storia
Due città questo non viene terribilmente
ben colpito questo è il centro di Londra qui
abbiamo banca per alcuni sondaggi e attraverso
a Tottenham Court Road
questa è Chicago questa strada qui americani
amo questo è un aspetto economico allora
diventa Holborn, diventa High
Holborn e poi diventa baldoria
Avenue vede che è tutta una strada loro
amore quando facciamo che continuano a cambiare
la strada numera il lato della strada
i numeri stanno accadendo sul nome di
la strada solo perché ci piace
e la ragione per cui è successo è Londra
è davvero molto, molto e molto
piccoli villaggi che si offuscavano al
bordi chicago ha programmato questo qui
lo so che puoi persino vederlo
quale è Randolph penso che sia
Randall Randall è a letto e basta
va avanti e va avanti allora
va avanti va avanti anche lì
infinito Penso che finisca come te
conosci il Giappone o da qualche parte
State Street State Street va a nord
stato e quindi stato vendite e poi
porta avanti verso il basso fino ad arrivare a yeah
avere l’ idea
incredibilmente lungo dritto molto semplice e
e hanno persino ottenuto la numerazione
lo annulli per ogni blocco e puoi farlo
si può capire dal numero civico
quanto lontano non lo facciamo noi
mettere 28
a 162 per le risatine questo sarà Fox the
Gli americani sì ora causano alcun qualsiasi
letterario qualsiasi letterato tra
conoscerai quel Racconto di due città
era niente a che fare con l’America era
circa le due città erano Londra e
Parigi Parigi è una città davvero interessante
questo sembra un po ‘un casino fino a quando io
ti dico che è progettato su una spirale così
questo è il primo di quelli di Ronda
che sono come i quartieri uno due tre
quattro cinque sei sette otto nove dieci
undici e dodici tutto intorno a 220
ok, fallo di nuovo
si chiama meno scala, va bene la lumaca
così hanno progettato loro così che cosa è successo
noi era nel XIX secolo hanno
si sono resi conto che avevo già un esistente
città che non potevano semplicemente radere al suolo
terra e griglia tutto okay quindi cosa loro
ha fatto è hanno preso l’ area che avevano e
li hanno posseduti in una spirale perché questo
succede che posso essere se sono qui da nessuna parte
ogni singolo angolo di strada ha il suo
questo Mont su di esso così come il nome di una strada
So di essere nel nono se cammino per a
poche centinaia di metri in qualsiasi direzione
non dirà più che nove inizieranno
dicendo due o otto o dieci o 18 e come
appena ciò accadrà, lo so esattamente
dove sono e in che direzione sono
viaggiare quanto è bello che tu non lo faccia
ho bisogno di una griglia su cui hanno hackerato
quindi questa è piuttosto una bella modella
in ogni caso, il significato di evitare complessi in
l’ultima cosa che devo evitare
complessità, immagino la prima cosa
è davvero essere consapevoli di stare bene
con il fatto che la complessità è sempre
lo stato predefinito cosa intendo con quello
Voglio dire, non c’è una fisica così nella nostra
universo abbiamo fisica quindi se guardo
attività qui e guardo l’attività
qui è governato da leggi simili okay
e poi se comincio a vedere un’attività finita
qui è strano come l’acqua che sale
il lato di un bicchiere o di elettroni
girare nella direzione sbagliata che posso essere
abbastanza sicuro che qualcosa di locale qui sia
molto molto insolito
va bene il comportamento soggettivo delle persone
non ha fisica che non ha
leggi governanti che disciplinano le regole
significa che
cose abbastanza arbitrarie stanno andando
accadono localmente anche suoni sensati
cose che il gaelico ha molto senso
Gli altoparlanti gaelici gallesi ne fanno molti
sentire gli oratori gallesi in questo modo
il linguaggio evoluto ha molto senso
va bene
i gallesi hanno probabilmente ventotto anni
parole per pecore e probabilmente 200 parole
per pioggia va bene, ma probabilmente l’inglese
avere cinquanta parole per combattere giusto è
solo una specie di video è solo così
contestuale così così perché c’è solo
decisioni locali se vogliamo qualcosa
arrotolare e abbiamo bisogno di creare il
fisica abbiamo bisogno di definire le regole noi
bisogno di tutti d’accordo quali sono le regole e
allora possiamo prendere decisioni locali
arrotolerà quello che diciamo che cresce
un giorno alla volta c’è un bel Fred
Brooks cita il mitico uomo-mese
dove sta guardando un progetto e il
il progetto è ora in ritardo di un anno e
è in piedi di fronte al Senato degli Stati Uniti
o qualcosa e dicendo bene lo sai
il professor Brooks come diavolo ha fatto
il progetto arriva ad essere un anno tardi è a
un giorno alla volta
è così che il progetto diventa un anno
in ritardo okay
la complessità cresce una piccola decisione in
un tempo va bene una coerenza a
scala che significa è una scelta quotidiana ogni
un solo giorno ci saranno forze sulla strada
il lavoro delle organizzazioni lavora modo di lavorare
ci saranno cose che stanno cercando di
ci inducono a creare incoerenza
l’incoerenza è come l’entropia , è così
la termodinamica della conoscenza se
ti piace bene sta andando a ottenere disordinato
mantenendo non disordinato è una scelta che ho tutti i giorni
saperlo di nuovo, dobbiamo essere d’accordo con gli idiomi
e principi guida una volta che siamo d’accordo
quegli idiomi e principi guida allora
almeno abbiamo una possibilità Sì, giusto
cos’altro diremo di sì e allora
cercheremo la semplicità noi
può lottare per esso può essere una cosa noi
può scegliere strumenti e tecniche che sono
andando a renderlo più facile certo certo
strumenti certi linguaggi certo strumento
le catene hanno le affordance che lo fanno
più probabile che avremo coerenza
alcuni non lo avrei fatto
menziono Scala e chiusura come un paio di
esempi Penso che gli studiosi di un grande
il linguaggio è davvero molto, uh
supponente potrei fare qualsiasi cosa in esso
Clojure ha parens che è la maggior parte di
chiusura proprio lì
okay, perché è così semplice che sono andati
questa è la mia programmazione troppo facile
dovremmo imparare Emacs che è quello
è così che è andato così lasciami solo
riassumere rapidamente prima che mi precipiti fuori
la complessità scenica è l’ impostazione predefinita
condizione ok
in assenza di decisioni che facciamo assenti
qualsiasi altra cosa crescerà
entropia aumenterà bene
le decisioni locali saranno fatte volontà
sembra avere senso localmente no
roll up si scontrerà ai bordi noi
sempre abbiamo sempre la scelta di
semplifichiamo solo la scelta
semplificare se siamo in grado di riconoscere dove il
la complessità è e se possiamo armare
noi stessi con le tecniche che stanno andando
per aiutarci a farlo e la coerenza è
la coerenza chiave è il meccanismo di
che possiamo farci ridurre
carico cognitivo possiamo o rendere cognitivi
carico appropriato alcuni problemi sono
intrinsecamente difficile, va bene loro
non c’è bisogno di essere più difficile di loro
Davvero non dovrebbe essere questo
difficile grazie
guidare il tempo per qualsiasi domanda una coppia
la matematica mette in discussione chiunque sia il divertimento che abbiamo
una quantità infinita di tempo per le domande
a questo ritmo
eccoci, in particolare, signore
davanti così quando stai mirando
coerenza se vieni in un
situazione particolare che potresti fare
uno dei due modi forse è una codifica
stile qualcosa del genere e tu no
sapere quale è meglio si
quando scegli uno e imposta a
lo standard è una bella domanda
quindi va bene così abbiamo una scelta
rendere
okay e c’è il delizioso Yogi
Berra citazione è quando si quando si arriva a
un incrocio prende molto bene
forchetta conforto nella strada prendere la
il problema è che è quello
radicato nel mondo fisico così quando io
imbattersi in una situazione in cui sai
okay, siamo sulla JVM che abbiamo usato
Java per un po ‘potremmo andare con Scilla
potremmo andare con il cloture che potremmo attaccare
con Java possiamo guardare qualche altro jvm
lingue cosa dovremmo fare la mia risposta è
sempre sì a destra sì che potessimo fare qualsiasi
quelle quattro cose proviamo quelle quattro
cose proviamo queste quattro cose in
Parallelamente proviamo queste quattro cose
parallelo su un vero esempio di cose reali
va bene si chiama ingegneria basata su set
quindi l’idea è che faremo tutto
le cose e ad un certo punto i dati lo faranno
emergerà ad un certo punto diventerà
ovvio che uno di questi è un migliore
adatto per il tipo di cose che stiamo facendo
rispetto agli altri e sospetto che non lo farà
essere quello che pensavamo di averlo avuto
un vero esempio di questo circa un anno fa
Stavo facendo il mio cliente in una classe chiamata
accelerato agile e stavo facendo questo
classe e due lezioni successive che ho avuto
la stessa domanda
siamo su JVM stiamo usando Java closure o
Scala giù cosa ne pensi del cloud o
scarlatto e ho detto di sì ho detto di sì
chiusura o Scala o forse Java proprio così
le squadre in entrambi i casi se ne andarono
circa sei persone nella squadra così hanno avuto
una coppia diversa ha speso un paio di
una settimana a pedalare a Scala un giorno
Clojure uno noto Joe Java per una coppia
di settimane e poi si scambiano tutti
uno così entro la fine di quattro settimane a tutti
avuto esperienza di due dei candidati
lingue nello stesso spazio problema e
dopo che hanno detto bene cosa facciamo
pensa come una squadra e sono andati tutti così
uno adesso il bello di
impostare l’ingegneria di base è inefficiente
ma è molto efficace, quindi costa
tre volte tanto per costruire questa cosa
tre volte ma qualunque sia la tua decisione
ti fanno già iniziare a farlo quattro
settimane fa sì , non ne hai perso nessuno
tempo che hai perso un po ‘di larghezza di banda
e così è così che Boeing progetta
le ali per esempio e oggi penso
è davvero legge per molta sicurezza
sistemi critici come se stai costruendo
un software di frenata in auto e antibloccaggio
frenando ne otterrai tre diversi
aziende per costruire lo stesso stesso codice
lo stesso sistema che paghi tutti loro non lo è
come una cosa del costo della vendita paghi tutto
loro e poi li usi come due
banco di prova per il terzo e poi tu
finisci per andare con quello che ti piace
e quindi di nuovo significa che costa tre
volte tanto ma si finisce con a
sistema che ora sei assolutamente
fiducioso è abbastanza stabile e tu
aveva una scelta di tre due tra cui scegliere
così Boeing lo fa con le ali
i sistemi lo fanno con sicurezza critica
sistemi fly-by-wire tutto questo
roba e poi butti gli altri due
via così non ti rimane
incoerenza sì esattamente
tutto quello che puoi fare è che potresti dire che lo siamo
andremo con questo che stiamo andando a
andare con Scala ma abbiamo notato davvero
bel mazzo di paradigmi di programmazione
abbiamo preso il recinto che sta per
informa il nostro stile di programmazione in rosso
ci piace che sia un percorso delicato
da Java anche noi non siamo soddisfatti
il fatto che ci siano 15 modi diversi di fare
looping quindi useremo la ricorsione
perché ci piace la ricorsione
andando a usare la mappa e ridurre non lo siamo
intenzione di usare iteratori e loop
okay, questo è un idioma
una scelta di design che abbiamo fatto in base al nostro
esperienza in alcune altre lingue e
quindi non è solo non uno binario uno due
quindi non è che non è una singola scelta che
potrebbe essere che prenderemo questo ma
lo informeremo con questi
altre cose Comprensione tra
le persone a pranzo sono sempre pessime
posto dove stare
faremo ancora una domanda e poi
pranzo sono in giro per dire tutto
okay la domanda quando sei un po ‘
cercando di ridurre la complessità quando sei
progettando qualcosa sul rilevamento
cose e in generale la progettazione per il
caso generale ma poi si verificano situazioni
dove le cose sono troppo generali e no
davvero risolvere qualsiasi problema ben oltreoceano
oltre a architettare qualcosa e
qualcosa era molto specifico ma lo è
molto fragile come si fa a mantenere
cose semplici ma evitate l’una o l’altra
quindi c’è un tizio che si chiama Chris Matz
parla molto delle opzioni reali e lui
ha un bel dire che guarda la frase
YAG me e lui dice che non ha intenzione di
ne ha bisogno quindi il punto delle opzioni reali o
pensare in opzioni è che dovresti
dovresti prendere decisioni deliberatamente
in altre parole dovresti differire a
la decisione va bene per tutto il tempo che ha senso
per rimandarlo non dovresti impegnarti presto
a meno che tu non abbia una buona ragione okay se
hai una buona ragione per impegnarti presto
di sicuro se non hai una buona ragione
non impegnarti presto a meno che tu non sappia il perché
quindi yagna è solo la prima metà di quello
la frase dice solo di non impegnarsi presto
giusto dice che non lo farai
ne hai bisogno , quindi non impegnarti presto
se non si conosce il motivo per cui è si potrebbe
ne avrò bisogno, sì, per esempio se
Sto costruendo qualcosa e lo so abbastanza
presto non ci sarà solo un
caso singolo ma due va bene
per essere più di uno allora non c’è niente
sbagliato con me progettando per di più
di un caso ora non ho intenzione di fare
una cosa molto generica di cui sarò consapevole
che questa cosa avrà bisogno di
è probabile che il supporto sia necessario
più di un caso abbastanza presto così io
non ho bisogno di codificarli tutti ora cosa
Probabilmente lo farò mentre sono
pensarci è lasciare le giunture
là lo rendono evidente quando arriva qualcuno
indietro e l’ovvia cosa di miss è
davvero importante rendilo ovvio quando
qualcuno torna dove hanno bisogno di
fai quel cambiamento oh guarda che ha lasciato il
agganciare qui che potrei fare questa cosa
è un gancio molto piccolo se nessuno lo è mai stato
ha bisogno che non entri nel
modo, ma rende solo più facile che io sia sorta
di pensare in anticipo perché la persona che
Potrei consegnare questo a potrebbe essere
ho ragione quindi è leggermente egoista ma
c’è anche qualcosa che sono stato
parlare a lungo e
è questa idea di un cambio di orizzonte degli eventi
quindi un orizzonte degli eventi di cambiamento è la durata
dopo aver preso una decisione stupida quanto presto
dopo aver preso una decisione stupida posso
ritrattare tale decisione stupida Posso Reverse
quella decisione quando scrivo nel mio
parola scriverò software aziendale I
scrivere software aziendale tipicamente il mio
cambiare l’orizzonte degli eventi è di circa una settimana
proprio in caso di emergenza può essere ore
Ho solo fatto questa cosa in poche ore
Lo avrò scartato se lo sei
progettando un’API un linguaggio di programmazione
una libreria molto usata come qualcosa
quello giusto
il tuo cambio di orizzonte degli eventi se lo metti
qualcosa di stupido in c-sharp il tuo cambiamento
L’orizzonte degli eventi potrebbe essere di 30 anni sì
significa letteralmente che ci sono dei muti
decisioni in Java che sono ancora lì
okay, le persone stanno ancora usando il nuovo Java
vettore utile va bene
il vettore è stato deprecato in Java 1.1
prima che molti di voi fossero nati proprio così
le persone usano ancora il vettore Java e così via
sono andati bene sembrano non possiamo sbarazzarci di
vector quello che faremo è bene, mi inclino
otterrà otterrà otterrà sotto
vettoriale e abbiamo effettivamente facciamo una lista
le persone di cui hanno bisogno non sanno whew destra
lì ho riparato un po ‘di nastro elettricamente
sotto, sì sì, se ne hai una lunga
cambia l’orizzonte degli eventi quindi significa che
devi essere molto più cauto
le decisioni che prendi così è di nuovo
è una cosa deliberata essere solo
consapevole del contesto in cui ti trovi e lascia
che informi quanto lontano potresti averli
le decisioni vanno bene penso che sia così
grazie ancora a nord, grazie

Please follow and like us: