Press "Enter" to skip to content

GOTO 2015 • Maximising Side Effects When Adopting Functional Programming • Dan Macklin


ciao grazie mille per prima cosa è un
onore di essere qui e parlare con te oggi
e per favore se tu se ti va di parlare
il pulsante verde è il più bello e
più semplice da premere sull’applicazione
così così oggi sono ho intenzione di parlare con te
sull’adozione di bet365 o funzionale
programmazione e Erlang e quando ero
ha chiesto di venire con il titolo per un discorso io
tipo di pensiero per me massimizzare
effetti collaterali per chi ha fatto un po ‘
di programmazione funzionale potrebbe essere
essere un po ‘di una buona idea può vivere a
lo rimpiango mentre passiamo qui ma
vedremo come va così iniziare
con ho pensato di darti un po ‘
di uno sfondo su una storia di
bet365 siamo stati fondati su stoke-on-trent
nell’anno 2000 siamo di proprietà privata
società e siamo ancora di proprietà privata
fin dall’inizio e il grafico è
fondamentalmente per parlare di crescita drammatica
nell’anno 2000 abbiamo consegnato no
sterline a tutti nel 2003 ci siamo alzati a 370
ultimo milione di sterline
anno avevamo 34 miliardi di sterline
fatturato così così fondamentalmente la crescita
all’interno dell’azienda è stato bello
sai piuttosto esponenziale è stato un
è stato un posto molto interessante dove lavorare
attualmente ha tremila più
impiegati in stoke-on-trent che è
a nord di Birmingham auto di Manchester
è la vecchia area delle ceramiche del Regno Unito
lupi mannari era una porcellana che era fatta
spendiamo circa 60 milioni di sterline
siamo un anno nel nostro budget IT
patologico di fare assolutamente
tutto noi stessi, quindi gestiamo il nostro
i data center abbiamo ragione riguardo al software noi
avere un ethos che se qualcosa sta andando
per rompere vogliamo il pieno controllo di esso e
vogliamo essere in grado di imparare dai nostri
errori al picco ci aggiriamo intorno a 2.5
milioni di tipi di clienti concorrenti I
ha una base di clienti di circa 19
milioni di gioco d’azzardo è un è molto
industria interessante nel rispetto che
tutto è davvero davvero altissimo
quindi puoi immaginare la finale della coppa del mondo
l’anno scorso il tipo di carichi che siamo
andando per il nostro sistema quando tutti quelli
le ragazze hanno iniziato a entrare finalmente
e stiamo ancora crescendo i numeri solo
da solo quest’anno sono ancora abbastanza
interessante e sono sicuro che li condivido
ad un certo punto nel futuro così attaccare
con uno spazio a tema cosa si prova
piace lavorare all’interno di un’azienda come
così bene la mia risposta onesta è tranquilla
intenso perché devi fare una miscela
di due cose la prima cosa che hai
fare è costruire caratteristiche che
coinvolgere ed emozionare i tuoi clienti e
devi continuare a farlo per ottenere
trazione con e mantenere i clienti in arrivo
la seconda cosa è è è quello
ogni settimana devi ridimensionare il tuo
sistemi perché sai che la settimana scorsa è stata
la scorsa settimana e la settimana successiva hai
improvvisamente sai raddoppiato e il
numero di scommesse che andrai
attraverso il tuo sistema e quindi è così
sei un tipo di corsa
costantemente facendo cose nuove ma tu sei
guardando indietro alle spalle per fare
sicuro che le vecchie cose si adattino al
Allo stesso tempo molte persone mi chiedono
sai come mai ti sei imbattuto in un?
business che è riuscito a una sorta di
fuori scala di una competizione sai cosa
è la cosa che è la salsa segreta di cosa si tratta
i fondamenti principali di ciò che facciamo e
in risposta a ciò lo direi ampiamente
arriva a due culture che conosci noi
Affronta davvero problemi al proprietario
della nostra compagnia è la sua convinzione personale
è che conosci nove volte su dieci
alla gente non piace molto fare il
cose veramente veramente difficili quindi se noi
concentrati su quelli davvero difficili
le cose poi naturalmente andranno meglio
rispetto alla concorrenza e così usciamo
il nostro modo di fare le cose difficili che cerchiamo
innovare il più possibile così in un
il gioco d’azzardo online siamo stati i primi
compagnia per mettere in diretta le quote in televisione
le pubblicità erano fondamentalmente le prime
le persone per trasferirsi a giocare a scommettere quali
fondamentalmente sta scommettendo sullo sport
eventi come stanno realmente accadendo
piuttosto che sul risultato finale e noi
sono state le prime aziende a iniziare
piuttosto spingendo i nostri dati ai nostri clienti
che tipo di tirarlo
diverse piattaforme e un’altra chiave
la cosa è che abbiamo un grande desiderio di
essere il migliore e penso che secondo
l’ultimo punto c’era uno di quelli
quella
questo mi rende felice di lavorare a
la compagnia è che molte aziende
annaffierà le cose quando andranno
diventa difficile quindi se diciamo che la nostra latenza
saranno due secondi e noi faremo a
intero carico di lavoro di sviluppo di due
secondi per ottenere le probabilità e questo
sembra che non abbiamo intenzione di colpirlo a
molte aziende andranno 30 secondi
va bene, sappiamo che vivremo con
che non ci proviamo e proviamo
prova e prova a ottenere quel cliente
sperimenta il meglio possibile
essere e perché siamo una compagnia privata noi
puoi sapere allocare il capitale e
risorse davvero molto bene se c’è
un grosso problema da risolvere metteremo il
soldi in metteremo le risorse in a
per ottenere fisicamente quello così tu
sapere se penso che sia quella cultura
che ci ha permesso di diventare credo
siamo il più grande sito di scommesse online o
sito di scommesse sportive nel mondo e io
penso che prenderemmo più scommesse online
di tutti i nostri concorrenti messi insieme
beh, sono i tre principali, quindi come
siamo arrivati ​​lì se dovessi descriverlo
il nostro stack storico di testo direi che è un
un po ‘come il fish and chips in questo
sai che era piuttosto gustoso ma giusto
come un buon fish and chip nel Regno Unito
riguarda l’appeal del mercato di massa e giusto
come con tutti i bruciatori ha dimostrato
modelli di consegna per la tecnologia così
che mantiene felici i project manager
era molto tradizionale e sai che lo usiamo
per risolvere i problemi in modo pragmatico
sappiamo che vogliamo mantenere le cose semplici come
loro possono essere e noi vogliamo il bene
soluzioni solide a causa di una dinamica
la natura del gioco d’azzardo online e la necessità
per ottenere funzionalità ai nostri clienti
e per scalare rapidamente eravamo concentrati
intorno alla consegna rapida così abbiamo cercato di non farlo
fare qualcosa di troppo intelligente per così dire
perché volevamo essere in grado di essere molto
incrementale e volevamo essere in grado di
ottenere le funzionalità rapidamente noi
basicamente uso alcuni ingredienti così i nostri
i vecchi testi erano per lo più netti con alcuni
middleware java e molto, molto e
un sacco di sequel server abbiamo avuto un enorme
database di server sequel monolitici con
molte procedure del negozio al suo interno
ma dicendo che non sembra quello
funky ma puoi costruire un miliardario
affari di fatturato libbra usando quelli
quelle tecnologie così ma
con la crescita sai che l’abbiamo scoperto
identificare se qualcuno inizia a determinare
nei film ma questo è il Terminator
addio scena sai che c’è una tempesta
venendo per così dire da tutto
l’aspetto esteriore era davvero Rosie
alcuni grandi problemi all’orizzonte il
il primo è che la produttività è stata
in calo per alcune caratteristiche
dei nostri clienti alcuni sono concorrenti
scusa ho iniziato per arrivarci prima
stava prendendo sempre più impegno per ottenere
code fuori la porta e per società come
noi questo è un problema assolutamente enorme
perché avremmo sempre letto da lead
il fronte e impostare l’ordine del giorno e il
il team di gestione è molto alto
aspettative sul coinvolgimento del cliente
e crescita e tu sai quanto siamo felici
i clienti sono e il gioco d’azzardo online è
ferocemente competitivo non c’è niente
fermando davvero persone diverse da a
un paio di controlli ID per spostarsi in un altro
fornitore se sei arrabbiato e vogliamo
tenere in mano sopra ai nostri clienti la
il secondo problema era che i nostri sistemi erano
diventando inaffidabile fondamentalmente il
complessità del nostro codice e modo
che stiamo scrivendo il nostro software
fondamentalmente significava che dobbiamo ottenere di più
e più hack di scalabilità all’interno del nostro
software per far funzionare le cose
conoscere l’evento di punta nel momento di punta
in una partita sportiva a calcio come
le cinque di quel sabato tu
non voglio davvero tempi di fermo dei tempi di inattività
a quel punto nel tempo costa molto
soldi ma ti costano anche in reputazione
perché alcuni dei nostri clienti ci vedono
transazioni quasi finanziarie e quindi se
vogliono essere in grado di scommettere su e
il tuo sito non è disponibile quindi sai
saranno molto molto arrabbiati per tipo
di Twitter uno dei motivi che ho già
ha detto è che i nostri Cobra diventano eccessivamente
complesso dovuto alla scalabilità degli hack della scalabilità
il software è in un multi-thread
l’ambiente è davvero molto
cosa difficile e una delle cose
quello che ci piace del nostro software è quello
il gioco d’azzardo è piuttosto complicato
molte regole diverse e quelle regole
sono abbastanza difficili da implementare
ma cosa vuoi essere in grado di fare quando
si guarda un po ‘di codice è che si desidera
essere in grado di vedere quale sia la logica aziendale
è e la nostra logica di business stava diventando
offuscato da un sacco di concorrenza
hack di scalabilità quindi ne hai avuti due
problemi nessuno veramente capito il motivo per cui
ridimensionato più
e nessuno ha veramente capito come
la logica aziendale ha funzionato tutto ciò che erano
di fronte a era era un casino per il
allo stesso tempo sai che c’era un
cambiamento significativo nell’informatica
precedentemente abbiamo usato per scalare verticalmente
e quindi quello che facciamo è ovviamente
siamo relativamente contenti che desideriamo
avremo un carico completamente nuovo per i clienti
per voi sapere che il proprietario dell’azienda dice
possiamo avere n numero di nuovi server così
parlare o possiamo sostituire il servizio
con un grande server orologio veloce e te
Sapere che andremmo avanti e indietro andremmo
non abbiamo mai veramente conosciamo e verso il
probabilmente gli ultimi tre o quattro anni o
così ha dovuto fare quella scalabilità
gli hack che scaleremo e spendendo
soldi questo è stato un cambiamento monumentale per
noi fondamentalmente significava che dovevamo
guarda un diverso tipo di calcolo
modello fondamentalmente il nostro software aveva
ho raggiunto i suoi limiti sono stato se questo è un
metafora per come stavamo costruendo
software che è affidabile e
quello è lo squalo balena e questo è il
il più grande pesce che puoi, puoi
possibilmente avere tutto in natura
limiti che avevamo iniziato a colpire
il nostro quindi dovevamo indossare per reinventarci
Sono un grande fan di Madonna la maggior parte dei nostri
i nomi dei progetti hanno stupidi nomi stupidi
associato a canzoni o film diversi
curiosità o cose del genere, ma Madonna
lei sembra davvero molto bene in questo
lei è in grado di monitorare il mercato e lei
sa quando è il momento giusto per reinventare
uno dei miei libri preferiti non lo farò
consiglio di leggere tutto ciò che ottiene
in una specie di fusioni e acquisizioni
dopo un po ‘c’è un libro chiamato break
dal pacchetto e ciò che fondamentalmente il
la sede è che viviamo in un copione
mondo e qualcuno si muoverà e poi il
il resto di un branco segue e c’è
qualcuno si muoverà e il resto del
il branco seguirà e tu avrai le persone
che sono leggermente di fronte a un branco e
hai persone che tornano indietro
e davvero molto indietro rispetto al pacchetto e
lottando sempre per recuperare bene cosa
vogliamo essere in grado di fare e cosa
Madonna fa davvero molto bene è che
lei è costantemente in grado di rompere bene
dal pacchetto e fare roba ma il
concorrente altri artisti e cose del genere
quello può solo immaginare e così via
così facendo lei reinventa se stessa e
questo è effettivamente quello che ci serviva per
necessario fare abbiamo bisogno di sollevare davvero il
BAR abbiamo voluto non essere solo meglio
cast di dinari dei nostri concorrenti ma noi
voleva essere tutto di una grandezza migliore
volevamo fare un grande salto
nell’ignoto volevamo davvero andare
là fuori e volevamo creare un
piattaforma in base alla quale ne abbiamo fatti alcuni davvero
cambiamenti radicali in modo da poter tornare a
facendo di nuovo il buon materiale incrementale
per mantenere felici i nostri clienti
torna a un’analogia pesce abbiamo voluto indossare
abbandonare lo squalo balena e volevamo
per diventare non so che tipo di pesce
in realtà sono un po ‘
la ricerca di immagini google imbarazzante no
dimmi di farlo volevamo creare un
cultura dove andava bene davvero
grandi rischi tecnici a tutti quelli che conosci
bene, dico che sono molte le persone
paura di fallimento e abbiamo voluto
creare un ambiente in cui fosse ok
fallire perché se hai intenzione di provare
e fare qualcosa di grande non lo farà mai
lavoro la prima volta che volevamo sperimentare
quindi volevamo praticamente provare un sacco di
cose diverse che vogliamo provare e ottenere
le mani sporche volevano vedere cosa fosse
lavorando quello che non funzionava e dove
alcune delle insidie ​​e e e
problemi e benefici sarebbero desiderati
mettere le mani su mani e provare
un sacco di cose, ma soprattutto noi
volevo mettere dove ho un sacco di
conversazioni con ingegneri del software
ed è tutto ciò che pensiamo e pensiamo
quello e tu sai e il grande
conversazioni e sono geniali per
costruire un trampolino per iniziare effettivamente
venendo per le idee ma quello che davvero
voglio sapere è che vuoi essere
in grado di parlare per esperienza che vuoi
per sapere che nel mio mondo a volte capita
altrettanto buono per essere in grado di dimostrare che
qualcosa è decisamente una cattiva idea allora
è in realtà dimostrarlo, signore, è un
buona idea perché alla fine abbiamo solo
riduce la dimensione dello spazio di ricerca
quando stai cercando di risolvere un problema così
ancora non tutte le società probabilmente lo farebbero
essere in grado di farlo, ma perché lo siamo
finanziato privatamente e siamo a posto
applicatore richiedente possiamo applicare il nostro
capitale bene a risolvere problemi noi
ha deciso di indossare per creare un team di ricerca e sviluppo
e uno dei motivi per questo è il
cultura bet365 è molto focalizzata sulla consegna
e quindi tutto deve avere un tempo
scala e il nostro senior management realizzato
che risolvi alcuni di questi problemi
sai che non sarai in grado di dire
sarà consegnato il primo
di gennaio tornando un po ‘
per noi le scale temporali sono
davvero importante perché nessuno lo farà
cambia la data di un evento sportivo per
così se dobbiamo prendere del software
fuori per il grande cittadino o abbiamo
per farlo uscire per la Coppa del Mondo lo sai
non possiamo certo chiamarci in vari modi
in modo efficiente come puoi respingerlo a
settimana per noi così così la nostra cultura di
le scadenze in realtà si basano su qualcosa
in quello c’era un sacco di irremovibili
eventi là fuori ma per questo scopo noi
volevo provare a ridurre i tempi
quindi abbiamo iniziato a reclutare persone e il
la cosa principale che stavamo cercando era
persone curiose che pensavano liberamente
e abbiamo ottenuto persone da vari
sfondi che abbiamo avuto alcune persone erano state
facendo informatica, abbiamo qualcuno
chi aveva fatto un dottorato di ricerca a guardare la vernice secca
è un ragazzo affascinante e gli è piaciuto
Il dottorato è molto, ma poi l’ha deciso
l’ingegneria del software era un problema
ha fatto ha fatto tutto il suo dottorato di ricerca
vernice bianca su tavole al sole e
vedendo come si è degradato, ci siamo presi
al di fuori del software giorno per giorno
problemi di sviluppo come ho detto che siamo
alla ricerca di flessibilità e imprenditorialità
la gente penso che l’imprenditorialità dentro
lo sviluppo del software è in maniera massiccia
cosa sottoutilizzate vuoi che la gente
prova a provare cose e fai piuttosto che piuttosto
di pensare troppo volevamo persone che
non hanno paura di grossi problemi e ma
questa era una cosa fondamentale che stavamo bene
risorse in modo che tu sappia che potremmo andare
e compra server e sperimenta e questo
tipo di cose ma buona sponsorizzazione e
una buona sponsorizzazione è qualcosa che farò
probabilmente andremo un po ‘più avanti
nel parlare così tornare allo spazio
tema quale era la missione della R & S
squadra quindi il nostro compito era esplorare la farmacia
le metodologie cercano nuove tecnologie
e lingue e andare pragmaticamente
dove nessuno è mai andato su bet365 prima
ora potresti dire bene perché l’hai preso
la parola pragmatica lì dentro e la principale
la risposta è è che non siamo un blu
squadra di ricerca e sviluppo del cielo che siamo
non cercando di trovare l’ultima o
miglior modo di creare nel nuovo
rete definita dal software cosa siamo
provando a fare è noi proviamo a noi architetto
la nostra piattaforma e dato l’azienda che
non importa ciò che abbiamo fatto alla fine
doveva essere pragmatico doveva essere relativamente
nel mondo reale sai che potremmo uscire
lì ma dovevamo essere in grado di ottenere
sviluppatori di software che sviluppano roba e
portare il prodotto fuori dalla porta che conosci
abbastanza velocemente per tornare indietro nel tempo
si sa che cosa il link per dovevano
programmazione funzionale in
in tutto questo e così la risposta è che è
come sai che tornare a quel branco
di pesce per raggiungere i nostri obiettivi vorremmo
bisogno di iniziare a scrivere distribuito
sistemi e questo è impegnativo perché
i sistemi distribuiti possono ottenere molto velocemente
molto molto complicato e avevamo bisogno di un
modo di esprimere queste cose difficili come
semplicemente il più possibile e noi tipo di
inciampò attraverso Earl con rabbia
il patrimonio funzionale e abbiamo pensato che
potrebbe offrire alcune risposte e me ne andrò
in quello e un po ‘più in profondità in seguito e
pensavamo bene se lo sapevi
settore delle telecomunicazioni se lo sono stati
risolvere questo tipo di scalabilità e
problemi di sistemi distribuiti per lungo tempo
forse dovremmo stare sul
spalla di giganti ma se proprio così
mi ha chiesto perché abbiamo iniziato a guardare
programmazione funzionale ed Erlang è
quello per tentare di risolverli
problemi veramente difficili che volevamo
fondamenta fondamentali davvero forti
e tu sai che il resto del mio discorso è
in realtà si sa tipo di descrivere su
come abbiamo trovato quelle fondamenta e come
abbiamo continuato a verificarli così ho pensato
ti darei una rapida panoramica di un ver
lang quindi siamo Erlang per cui sono stato progettato
elevati sistemi di tolleranza ai guasti simultanei
non è nuovo, quindi tutti pensano
ciao, stiamo cercando una squadra sviluppata
cercheranno tutti i nuovi
roba bene, non sai che spendiamo molto
tempo a guardare indietro perché forse suona a
un po ‘cinico ma non è proprio quello
molte nuove idee in informatica
ci sono solo un sacco di vecchie buone idee
non ha suscitato l’entusiasmo del marketing per il buzz
e non è diventato mainstream
così come sappiamo che guardiamo il
ultima una nuova roba di cui la roba
là fuori sai di voler guardare indietro
per la tua storia e mi piace andare
conferenze come questa e quella di questo
la maggior parte di voi conosce la NASA nel
note chiave ma a volte si va a piacere
codice misura un po ‘così e loro lo sono
parlando di te conosci i pionieri di
calcolo e alcuni dei problemi che
loro hanno risolto così tu conosci un pezzo
di consigli è non sempre cercare il
nuove cose guardano alle vecchie cose e
guarda come può essere riapplicato
comunque, Ericsson ne ha avuti davvero
problemi interessanti in quanto loro
ha sviluppato interruttori telefonici e nel
giorni prima di Internet se ci pensate
la concorrenza e affidabilità e
requisiti di tempo di attività di un telefono
cambia e giochi a quello di oggi
ambiente web moderno puoi vederlo
i due sono relativamente relativamente dentro
parallelo con
l’un l’altro ne parlerò molto
più avanti, ma l’ erland è più grande
che la somma delle sue parti ne ha molte
diverse caratteristiche che funzionano bene
insieme così per iniziare con il suo morbido
in tempo reale sostanzialmente il modo in cui Erlang
il lavoro sulle macchine virtuali è quello che tu metti
un computer 30 core e se tu fossi se
lo hai impostato correttamente partirà alle 30
scheduler e in pratica si romperà
il compito giù in piccoli lavori e questo
darà ad ogni lavoro una porzione di tempo su ciascuno
degli scheduler su ciascuno dei
processori ha questo concetto chiamato
processi leggeri così in Erlang è
perfettamente ok per girare su un milione
processi o mezzo milione di processi
fondamentalmente perché ogni processo è
molto piccolo calore indipendente e ha
questo e ci vuole un po ‘di tempo per arrivare
la tua testa intorno a esso è questo lo lascia
tipo di incidente tipo di recupero degli errori
modalità e qual è la sensazione che sta dietro
è che tutti in informatica sono sempre
tipo di paranoico su come si comportano
con errori o a loro piace mettere un
prova a catturare intorno a loro e portarli a
indossare ora vari file system
quello che vuoi essere in grado di fare sei tu
voglio essere in grado di costruire sistemi che se
hanno un fallimento in una sola parte o
un processo e ricordati di parlare
sui sistemi in cui quei milioni di
i processi fluttuanti non riescono
software o la macchina virtuale realizzata
che è fallito e automaticamente
riavvia e così uno dei veramente
le cose interessanti su Erlang è che è così
abbastanza difficile da uccidere completamente a
la macchina può essere fatta ma normalmente
è abbastanza difficile e conduce a
stile di codifica meno difensivo per cui tu
sai che ottieni qualcosa là fuori che vedi
perché si blocca e quindi lo modifichi
piuttosto che in anticipo cercando di preoccuparsi
su ogni singolo scenario in assoluto
mai lo sarà e ne scriverò davvero
software complicato questo ti sta dando
la sicurezza di dire che il mio software avrà
errori avranno problemi di bug
capita ma sono abbastanza sicuro che non lo sia
andando a spazzare via il mio intero sistema
modello attore, quindi tutti questi processi sono
si girano all’interno di Erlang lo faranno
supervisionare così se si schiantano loro gay
riavvio e il modo in cui è la programmazione
fatto o fatto concorrenza è che ciascuno di
questi processi inviano messaggi immutabili
l’un l’altro in modo così efficace che puoi
pensare e scrivere il codice all’interno di
ogni processo sta scrivendo un sacco di singoli
Programmi di Freddy che comunicano tramite
messaggio che passa e perché i professionisti
così leggero e tu hai distribuito
la tua elaborazione su così tanti processi
raccolta dei rifiuti diversa da binario
riferimenti che vanno tutti in genere
su un sacco è normalmente abbastanza
semplice perché l’arte di
programmare un uso precedente per avere un sacco
di processi di breve durata, quindi cosa succede
è che giri un processo che fa
qualcosa come nel calcolo del valore di
una scommessa o qualcosa che passa
messaggio acceso e muore ergo c’è il tuo
raccolta dei rifiuti che hai appena avuto un breve
processo di sollevamento è fatto qualcosa fatto
qualcosa di interessante è morto sai che
non andare d’accordo, GC mette in pausa un altro davvero
la cosa interessante di Erlang è OTP così OTP
sta per la piattaforma di telecomunicazioni aperta e
quello che è è una serie di librerie
che viene fornito insieme a Erlang
fondamentalmente i nostri modelli di design per
alcuni dei principali tipi di concorrenti
problemi di concorrenza che potresti risolvere così
hai cose come gin fsm che
ti permette di implementare lo stato finito
macchine hai cose come Gin
server che sostanzialmente ti permettono di
scrivere processi affidabili ed efficaci
in pratica significa che hai un
meccanismo affidabile o design affidabile
modello su cui costruire molto
il tuo codice e se li segui molto
del tuo codice sembra lo stesso e lo sai
quando si tenta di ottenere nuovi sviluppatori
capire il sistema o ottenere persone
coinvolto in un progetto o se vuoi
sviluppare una mobilità per essere in grado di guardare
diversi progetti e cose del genere
mantenendo il tuo codice simile allo stesso
mentre sulla faccia potrebbe sembrare
noioso ha enormi benefici per l’azienda
finalmente un aggiornamento di codice caldo e, naturalmente
si conosce un Angus sulla base di unfunctional
programmazione quindi cosa c’era di così speciale
programmazione funzionale bene quando lo fai
la programmazione funzionale è un calcolo
il risultato della valutazione delle funzioni
preferibilmente funzioni veramente piccole nella mia
credenza ogni funzione dovrebbe solo farne una
cosa bene un output dovrebbe solo dipendere
sugli input quindi effetti collaterali e lo so
Ho intenzione di essere parlare di effetti collaterali
che dovrebbe essere eliminato tanto quanto
possibile ora non puoi scrivere troppo
molti programmi pratici senza il
effetti collaterali occasionali ma per il tuo
core business logic che vuoi provare a
scrivere tante piccole funzioni testabili
come è possibile l’immutabilità e
inoltre per le persone come me da un Java
sfondo sai una volta che hai assegnato
una variabile non puoi cambiarla
di nuovo suoni un po ‘
auto-limitante ma una volta che hai la testa
arrotondare e si impara come programmare
più ricorsivamente sai che lo fa
senso perfetto ma abbiamo iniziato a guardare
sai che la nostra base di codice funzionale era noi
stavano costruendo e prototipazione e
si spera che dovrebbe essere un codice funzionale
intrinsecamente semplice, facile da capire e
prova l’unico tipo di cosa con Orlando
mette molte persone in ufficio
la sintassi richiede un po ‘di tempo per ottenere il tuo
testa e quando vado per il viaggio
di come in realtà abbiamo iniziato a prenderne un po ‘
i nostri sviluppatori coinvolti in quello che farai
vedi vedere perché quello è comunque
fondamentalmente credo che funzionale
il programma sarebbe una buona cosa per bet365
perché il sistema complesso dovrebbe essere
progettato nel piccolo e penso che
questo corrisponde molto all’etica di
programmazione funzionale comunque c’è
niente in programmazione funzionale
ti fa seguire queste regole che ho visto
altrettanto funzionale scritto male
codice come ho visto su qualsiasi tipo di codice
e sai davvero se ho davvero messo il mio
cuore su una manica direi che è di più
sulla nostra etica o definizione della gente
che complessità è che in realtà le mappe
su quanto sia semplice il tuo codice piuttosto che
Qualunque cosa tu conosca, il linguaggio di programmazione di
cose come quel linguaggio di programmazione
come l’angolo di Earl che diventa funzionale
la programmazione ti farà riflettere
il mondo in un modo e in una volontà diversi
speriamo di farti o di aiutarti a scrivere
almeno un codice migliore in qualsiasi lingua
questo è quello che penso che abbiamo fatto
un bel po ‘di ricerca e in teoria
abbiamo deciso che la programmazione funzionale
renderebbe più facile costruirle
sciami di sciami distribuiti affidabili di
pescare come i sistemi che volevamo
costruisci così come siamo andati a provarlo
perché dovevamo iniziare a provare a farlo
alcune cose nel mondo reale e
Ho semplificato un po ‘questo
perché potrei parlare di questo per quattro
le ore in cui ne abbiamo attraversate tre
fasi di adozione quindi la prima fase di
l’adozione all’inizio era quando
abbiamo iniziato a guardare Erlang e
e fondamentalmente volevamo solo sapere se
Le programmazioni funzionali di Erlang sono queste
questo tipo di buone idee così
hai un buon punto di partenza e
questo può essere un tipo incredibilmente caotico
di processo perché hai tutto questo
codice hai queste nuove lingue
hai queste nuove cose che vuoi
provare
da dove cominci come si fa?
attaccare questo problema non c’è un
il documento dei requisiti non è un
le specifiche si sa solo di sapere
vagamente vuoi migliorare le cose
hai tutti questi problemi sono e
sarà davvero un po ‘ caotico
e le immagini di google quando metto nel caos
questo è davvero abbastanza bello
quindi una delle cose che vorrei dire se tu
voglio entrare nella R & S all’interno di a
roba della compagnia come sai
abbracciare il caos perché il caos è in realtà
in realtà una buona cosa e sta provando a
tracciare la tua strada attraverso quella miriade di
diverse possibilità e cose a
per ottenere il tuo punto di partenza così dopo
in realtà siamo arrivati ​​a un intero carico di caos
con una metodologia relativamente semplice
dopo che stavamo correndo molto in giro
la prima cosa che abbiamo fatto dopo
tipo di apprendimento da programmare in Erlang
e preoccuparsi molto è che abbiamo trovato un
progetto ben definito quindi abbiamo trovato a
progetto ben definito che sembrava adattarsi
cosa sono queste lingue o cosa fa
il paradigma era circa e noi avevamo una chiara
definizione del successo, quindi quello che abbiamo fatto è stato
è che volevamo ottenere qualcosa
dove potremmo applicare qualcosa di nuovo noi
potrebbe confrontarlo con ciò che era accaduto prima
e potremmo misurare le differenze in
termini di come si è sviluppato
con quante righe di errore di codice e
per come alla fine prestazioni e
scalabilità orizzontale abbiamo fatto in modo che
avevamo una sponsorizzazione davvero buona, quindi il mio
la catena di segnalazione è quel tipo di base
riporta direttamente all’Amministratore Delegato un CEO di
La tecnologia Hillside è una specie di nostro CTO
e ho la testa del software
sviluppo e hai avuto modo di assicurarsi
che le persone sopra di te sono una specie di
comprato in quello che stai facendo e
capire i rischi e i benefici
devi davvero comunicare
con loro perché a volte tanto quanto
avrai bisogno del loro loro
aiuta Dio a mantenere le cose davvero semplici
si sa tornare al mio possibile un intero
la filosofia del software è semplice
ma lo sai davvero quando ci provi
per farti vuoi mantenere semplice come
forse puoi e vuoi misurare
assolutamente tutto ciò che conta e
se non sai cosa è importante misurare
tutto e vuoi misurare il
tipo di qualità dei numeri che conosci
sorta di quantitativo il numero come
veloce va mano le tue linee di codice come
molti fallimenti quanta memoria sta usando
yadda yadda tutto quel genere di cose ma
vuoi anche misurare ciò che prova
piace davvero fare
perché se sei in una forte pressione
ambiente che su come ottenere cose
fuori vuoi che le persone siano felici facendo
quello che stanno facendo e li vuole
entriamo nel flusso per così dire è così
altrettanto importante per noi cercare e trovare
qualcosa che è stato divertente che tipo di
persone infuse che conosci motivate
loro come è stato per costruire qualcosa che
che è stato scalato fisicamente molto bene
dei nostri problemi avevano a che fare con
prestazioni in modo che tu sappia eseguire ripetuto
test delle prestazioni durante l’intero
processo in modo da fare cose come replay
test in modo da catturare tutti eoni ed eoni
e molti dei nostri dati guadagneranno
Amin lo osserva e poi lo passeremo
indietro attraverso i nostri sistemi di test a
costantemente sai dirigere la nostra produzione
caricarlo e poi lo abbiamo ridimensionato
fino a due tre quattro cinque tempi di boom così a
parla così impariamo veramente cosa
qualcosa si rompe e un’altra cosa fondamentale
quello che abbiamo trovato è stato un sacco di nostri
i sistemi attuali avevano già misurazioni
sistemi in atto metriche e cose simili
così che li usiamo così nel tuo primo
prototipo puoi sapere come sai
confronta le mele con le mele perché è così
una discussione molto più facile da avere con
persone se stai parlando entrambi
banane piuttosto che se uno di voi lo sia
parlando di un mandarino così quando lo sei
facendo qualcosa di nuovo, lo sai
devi ricordare che stai facendo
qualcosa che devi ricordare
che queste cose avranno bisogno di tempo
la cosa classica è provare e costruire
qualcosa di troppo complesso per iniziare
e ho menzionato questo prima di quello che noi
fatto per il nostro POC che ho intenzione di ottenere
in un secondo è che abbiamo ottenuto il
cosa orso per lavorare l’iniziale
il risultato è stato spazzatura che abbiamo fatto
nel modo più noioso che noi
forse può, ma non appena abbiamo ottenuto
qualcosa su cui lavorare abbiamo iterato su di esso
molto rapidamente per risolvere alcuni dei
problemi e non saltare un punto qui
ma la complessità accidentale troppo spesso
pensi che ci sia un
problema e quindi metti qualcosa dentro
posto per risolvere un problema che non si fa
ho davvero ancora e tutto quello che stai facendo
dovrebbe davvero cercare di farlo
collina iniziale che stai cercando di spingere
la palla per andare avanti quel poco
più in alto vogliamo girarlo in testa
vogliamo fare la cosa più stupida possibile
misurarlo sotto carico di produzione e andare
ah è caduto laggiù che aggiusterò
quel problema caduto là ripareremo
quel problema non so se qualcuno di voi
conosco un ragazzo chiamato Garrett Smith lui
detto tipo parla molto della compagnia aerea
conferenze ma uno dei metodi
facciamo che noi seguiamo attraverso a
in certa misura viene da un discorso che
ha fatto tre anni fa si chiama il
ubriaco barcollare e in pratica cosa
fa è decolla uno sviluppo e
Dice che ne hai avuto uno di troppo
birre sai a malapena dov’è la casa
sai che una casa è e questo è il tuo
visione che è dove vuoi arrivare
e il modo in cui risolvi i tuoi problemi
è che barcolla un gradino a
tempo e se li barcolla via
può sempre barcollare e tipo ottenere
te stesso fuori di esso e per serie di
barcolla e barcolla alla fine tu
tipo di colpire il tuo obiettivo e tu lo sai
tipo di lavori per noi, quindi non lo siamo
davvero fare la parte bevente a parte di
lavoro così alcuni dettagli sul primo
progetto ora ho detto che tutti i nostri progetti hanno
nomi stupidi quindi il POC che abbiamo fatto
è come ho detto prima eravamo prima
compagnia da fare nel gioco push betting e
quindi abbiamo un componente chiamato a
editore che spinge i messaggi dai nostri
sistemi centrali fino a centinaia di
migliaia di clienti connessi al
stesso tempo e dal sale e pepe spingere
lo spinge davvero bene, davvero il nome era
nato quindi era un business critical
pub / sottosistema e la sua responsabilità
sapevi che dai nostri dati ai nostri
clienti a bassa latenza ora online
il gioco d’azzardo soprattutto nel gioco delle scommesse
la latenza è davvero davvero
importante perché i mercati si muovono e
ovviamente alleghiamo le nostre quote
spostare i mercati ora se prende il sopravvento a
periodo di tempo affinché una persona possa
per vedere un’opportunità di scommesse e un posto
la loro scommessa su di esso se un mercato si muove nel
sfondo da un certo intervallo di
tolleranza non possiamo accettare quella scommessa così noi
davvero bisogno di cose per uscire al nostro
i clienti davvero molto rapidamente il
gli editori hanno un sacco di dati
fluendo attraverso di loro così su un occupato
Sabato o conosci i campioni lo faremo
hanno come argomenti 3,5 milioni su tutti
sport diversi e noi spingeremo
più di adesso è più di
centomila aggiornamenti al secondo
ma gli obiettivi di un POC possono essere utilizzati
erlanger programmazione funzionale da risolvere
questo problema come sarà un sistema di erlang
eseguire in termini di prestazioni e
disponibilità perché è di nuovo tempo di attività
davvero molto importante per noi e poi
sai forse cosa fa uno sviluppo
sento come ho detto presto è davvero
importante per noi per costruire sai mettere
strumenti là dentro che la gente ama usare
quindi i risultati che ho intenzione di etichettare
questo troppo Ellen ha funzionato molto bene
e data la natura di un editore
sui messaggi di passaggio è fuori
centinaia di migliaia di persone era un in
il senno di poi è stato un po ‘un gioco da ragazzi il
due di voi conoscono abbastanza bene la vita L
abbinati l’uno all’altro sai che è un
caso d’uso leggermente diverso per whatsapp
perché stiamo inviando gli stessi messaggi
per tipo di tutti in una certa misura
ma ma sì, Erlang era buono e
siamo riusciti a far funzionare il PFC in a
un paio di mesi così che stava andando da
una partenza a freddo che non conosce nessun Erlang
davvero perché venivamo da diversi
squadre che non avevamo davvero
capire il problema aziendale così immagine
per fare il bootstrap e ottenere
qualcosa funziona da mesi anche il nostro
prima conosci un paio di prototipi
potrebbe gestire molto più carico e molto altro
client rispetto a quelli basati su Java esistenti
soluzione e sappiamo provandolo e
sono stati in grado di iniettare errori nel nostro POC
per vedere che sai che potremmo avere
guasti isolati su un gruppo o per
base del cliente ma il resto di un sistema
avrebbe iniziato avrebbe continuato a lavorare il
il codice era più piccolo ed era più semplice e
è stato facile capire che tu conosci noi
ho davvero speso un sacco di sforzi
riempire in piccole piccole funzioni
che erano molto facili da test unitari e
sai che puoi fondamentalmente il codice rosso
come una storia e per me questo è uno dei
cose che ho davvero preso in noi, lo farei
scritto molto Java scritto molto
conosci i sistemi basati su 00 e nel tempo
il significato del codice si perde e
diventa davvero difficile capire cosa c’è
sta succedendo e può succedere con lei
lungo e può succedere con funzionale
programmazione ma con la destra
disciplina ho finalmente trovato qualcosa
potrei andare, sì guarda il file 100
linee lunghe oh e questo fa e
questo lo fa e per me è stato reale
respiro di aria fresca così tu
sappiamo che potremmo lei come potremmo imparare
all’inizio del lavoro e divertito a usarlo
i risultati sembrano buoni sai cosa noi
è stato fatto è stato il nostro team di ricerca e sviluppo
lavorando per un dev di produzione molto piccolo
squadra che ha guardato questo prodotto così
abbiamo consegnato a loro e con loro
supporto lo hanno spostato in un completo erlanger
implementazione che è stata giocata
ci ora per circa due anni e mezzo
o così che quella parte della parte del
sistema e quella parte di passaggio perché
eravamo noi a parlare con una squadra molto piccola
era in realtà relativamente relativamente
semplice che mi porta a
fase due così
sai che non possiamo con una buona idea che abbiamo
abbiamo scritto un POC che abbiamo elaborato
lì lang è una buona cosa che ha avuto un buono
in forma avevamo giocato con qualcosa che aveva
ha funzionato quello che dobbiamo fare ora è stato ampliare
coinvolgimento quindi dovevamo fare il
primo grande passo di vendite ma in realtà quello
l’ultima diapositiva era uno scherzo perché lo sai
questo quando stai cercando di ottenere altro
persone coinvolte e persone come
entusiasta di qualcosa come te
non vuoi davvero dirti
non voglio che comprino ciò che vuoi
compra e così l’abbiamo presa, tu ci conosci
abbiamo impiegato molto tempo e ne abbiamo messe molte
energia in come possiamo convincere la gente
sentirsi entusiasti e felici
queste tecnologie come eravamo
così per questo quando vuoi allargare
coinvolgimento bene stanno raccogliendo a
problema che sapevamo di aver deciso di fare
scegli un nuovo e stimolante problema e noi
ha chiesto ai team di sviluppo di spec out
usando gli strumenti tradizionali e
tecnologie come avrebbero risolto
un problema non gli abbiamo davvero chiesto come
a lungo ci vorrebbe ma noi tipo di
hai detto che sai come andresti?
su come farlo e poi come lato o
sul lato mettiamo un POC per validare e
Conte e approccio dobbiamo formulare a
strategia per aiutare con i propri team a prendere il nostro
PC e fornire un sistema di produzione e
abbiamo scritto una vasta documentazione in giro
il dominio del problema ora lo dici tu
le spade erano davvero molto importanti
perché questo era un nuovo problema, quindi noi
in realtà ha fatto più ricerche su come
risolvere il problema e qual è il problema
era piuttosto che effettivamente come scrivere
qualsiasi codice perché quello che volevamo fare
perché questo era quello che volevamo
rendere il problema molto comprensibile
che la gente non si preoccupasse per il
problema del problema aziendale quindi
parlano hanno passato molto tempo all’aria
preoccuparsi di come implementare realmente
in erlend quindi abbiamo provato a dividere a
problema complicato in due così
alcune delle cose che abbiamo trovato quando
stiamo allargando il coinvolgimento sai che è così
allettante da provare e lo adoro davvero
lo amerai anche per così dire
sai che non puoi costringere le persone ad essere
entusiasta di cose e può essere
davvero stimolante per spostare le persone da
la loro zona di comfort e sì, ne avevamo alcuni
sviluppatori e io non sappiamo che tu sappia
nel Regno Unito a volte la tua carriera è più
definito da quanti anni sei stato
usando questa particolare tecnologia per
piuttosto che essere qualcuno che è disposto
amare un falegname ha molti strumenti che sono
un programmatore Java sono una rete di punti
programmatore
e così le persone si preoccupano delle loro capacità
e si preoccupano del futuro
carriere che aspetto avrebbe sul mio CV
se lo faccio ancora da anni
Erlang e io intendiamo fare un’intera Noda
java sai che ho cercato e io no
sapere qual è il sito web qui, ma nel
Lavoro nel Regno Unito e naviga in cerca di compagnia aerea
lavori e confrontarli al numero di Java
lavori là fuori e sai com’è
ordini di grandezza diversi e persone
davvero preoccupato e giustamente
sai che questo è il sostentamento della gente così
avevamo bisogno di passare un sacco di tempo
ascoltando dovevamo provare e davvero
enfatizzare o enfatizzare mai dire questo
problemi di indirizzo di parola ed essere positivo
e avere un essere di cultura dell’ascolto
in grado di funzionare proprio come tu conosci il discorso
stamattina potendo ascoltare
i problemi della gente ti mettono dentro
le loro scarpe lo vedono dalla loro parte e
provare e cambiare quello che stai facendo è
qualcosa che abbiamo cercato di spendere
un sacco di tempo, ma fondamentalmente
l’adozione richiede che la gente vada su a
viaggio e ho deliberatamente avuto più
percorsi lì perché tutti
viaggio di adozione quando ne stai facendo un po ‘
di questo è completamente diverso
non è qualcosa che è facile da imparare
e al fine di ottenere davvero hai
per capire come un numero diverso
concetti di programmazione funzionale
processi leggeri lo fanno schiantare tutti
questo tipo di cose collegate insieme è
non il tipo di cosa può essere una prenotazione
oh sì ho capito, e così vi ho avuto modo di
dare alle persone lo spazio per farlo
viaggio devi avere equilibrio quindi
una delle cose che abbiamo preso un sacco di tempo
dato anche alla nostra cultura aziendale
era sulla consegna che proviamo a dare alla gente
spazio per imparare quindi non abbiamo spingerla
facce di persone che dicevamo di sapere
questo è Erlang ne abbiamo avuti davvero
bene sai cose con noi siamo qui
per aiutare ma vai a sporcarti le mani
tu giochi con ciò che sai di dirci
cosa ne pensate e poi si saprà
offrirti le nostre migliori guide pratiche
sapere che condivideremo ciò che hai imparato se
trovi qualcosa che è veramente brutto e
è un problema insormontabile che faranno
ascolta e forse Erlang non è per sempre
per questo progetto quindi una delle chiavi
le cose che cerchiamo di fare è stato dare la squadra
spazio per imparare ma anche essere abbastanza vicino
entrare e aiutare quando lo sai
i problemi sorgono l’altra cosa è è
che si sa nel cercare di convincere la gente a
puoi spostare la loro zona di comfort
garantire che molti errori lo faranno
capita e ci sarà un po ‘di massa
bloopers dentro lì e hai avuto modo di
essere in grado di avere nel tuo DNA culturale
fare in modo che le persone facciano fronte a quello
perché tu lo sai in questo siamo stati
facendo tutto in modo completamente diverso
e sai come ti ha detto Albert Einstein
sai che solo impari facendo
errori si impara molto di più andando
lungo la strada sbagliata quando fai il
retta via e culturalmente ci conosci
prova ad andare là fuori quando ci conosciamo
ha ottenuto il massimo livello questo è dove la sponsorizzazione
è davvero importante perché senza il
sponsorizzazione di alto livello senza di loro
capendo che ci sarà
alcuni bar di cibo qui sai che sei gentile
di sopra per slegarlo nel nulla e come
appena qualcuno viene criticato per
fare un errore allora è così
culturalmente bang a tutti torna
beh, ho intenzione di farlo in questo modo
non verrai licenziato o nei guai
per aver fatto così il problema noi
scelto con qualcosa chiamato cash out così
il prelievo è molto interessante
e problema difficile quello che ti permette
fare è che ti permette di chiudere
le tue posizioni di scommessa presto quindi se
sei a metà strada per una partita di calcio e
il tuo team a Enlil è fortunato tu e te
posso chiudere quel bit in anticipo e lo faremo
darti un prezzo e puoi prenderlo
le tue vincite e quindi puoi piazzare
un’altra scommessa se anche tu dove puoi
ritirare i tuoi soldi il rovescio della medaglia a
questo è se la tua scommessa sull’altro lato
i tuoi dieci si inginocchiano ed è mezz’ora
ti daremo una parte del tuo denaro
indietro in modo che tu possa tipo di tagliare il tuo
perdite e correre ed è qualcosa
i nostri clienti assolutamente adorano
quindi fondamentalmente il problema era che per
molti milioni di scommesse aperte, quindi puoi
immagina sui bitties occupato tutto il sabato
per i campionati di calcio in corso ne abbiamo molti
milioni di scommesse aperte per qualsiasi cambiamento in
uno di quei mercati a cui è associato
loro ricordano che le persone possono migliorare molti
cose e multipli allo stesso tempo noi
calcolare un valore di cash-out e
nelle ore di punta i mercati si muovono davvero
rapidamente dobbiamo perdere la bassa latenza
dobbiamo sostenere molto complicato
logica aziendale e aggregazioni e scommesse
tipi e i prodotti devono fluire
davvero bene sai dove sta andando
per essere un interessante utilizzabile utilizzabile
la cosa in qualche modo è un po ‘ come un
problema imbarazzante parallelo dove
hai un sacco di semplici mappe ish da fare
e non puoi pensare che otterrò il
ismo parallelo ma poi non proprio davvero
bravo a fare matematica e quindi è stato un
chiamata di giudizio davvero all’utente a lungo da
quanto velocemente possiamo fare la massa contro come
parallelo e quanto affidabile possiamo costruire
il sistema
quindi quello che è successo al braccio successivo, in effetti, l’abbiamo messo
un POC la prestazione iniziale ha guardato
incoraggiare allo stesso tempo lo sviluppo
squadre costruite aa PFC nostra strategia davvero
era aiutare le persone a capire il
benefici e abbiamo messo uno sforzo significativo
nel far arrivare tutti a pieno
capire il problema come ho detto prima
abbiamo documentato il problema a morte
sapere di aggiungere il dominio del problema che conosci
che cashout era e cosa è oggetto
cosa stiamo cercando di ottenere e cosa
l’esperienza del cliente è stata la nostra che abbiamo dato
spazio per le persone per imparare abbiamo preferito un sacco
di presentazioni che ci siamo fatti
disponibile proviamo a mettere le persone a portata di mano
e proviamo a far iniziare le persone
i loro percorsi di apprendimento sfortunatamente
sebbene inizialmente nel più ampio
i team di sviluppo Erlang era
antipatico e c’era significativo
resistenza e quindi perché è stato abbastanza
hey sconcertante stiamo cercando di venderti e
paradiso eccitante o non mi piace e
come ho detto prima, questo è uno di questi
Magia che tipo di cose direi di imparare
Erlang è un po ‘come un occhio magico
persone come me non riesco mai a capirlo
Lo fisso per un ratto per ore
ma si tratta di imparare più cose
e rimproverandomi concentrandomi su qualcosa
leggermente diverso e messa a fuoco e messa a fuoco
e provare un sacco di cose diverse e
alla fine lo prendi e quindi non puoi
aspettatevi davvero molte persone a meno che non lo siano
eccezionale per prendere Erlang in quel modo
come fare un occhio magico ci vuole un po ‘di tempo
il tempo delle ragioni per la resistenza era questo
un problema davvero difficile ed è stato un
problema potenzialmente che vorresti sapere
ha avuto un sacco di impatto sul business quindi
come potrebbe farci o perde un sacco di
soldi l’intero dominio era enorme
paradigma e linguaggio spostano il nostro
sviluppatori nessuno di loro aveva davvero fatto
qualsiasi programma funzionale a tutti, ma loro
sono stati davvero bravi nella nostra codifica e
nonostante il fatto che stiamo cercando di dare
persone spazio per imparare a sapere un po ‘di
la nostra vecchia cultura della consegna tipo di
intrufolato anche lì e le persone si sentivano
che parte dell’apprendimento con ottenere
nel modo di consegnare dovevamo usare
il nostro tipo di supporto di alto livello per lei
andare in giro comunque strategicamente
nonostante fosse un po ‘
a disagio crediamo che questo fosse il
la cosa giusta da fare è perseverare con
essere gentile e positivo e aiutare
le persone fuori e poi alcune perdite dopo
qualcosa di interessante
iniziato ad accadere ad alcuni dei
gli sviluppatori sono davvero molto gentili
si sono immersi e hanno ottenuto il loro
mani sporche potresti cominciare a vederne un po ‘
piccoli germogli di luce in corso e poi
improvvisamente qualcuno ha detto che è uno squalo
sai quanti lo fanno è uno shock spero
non è quello che ero non sarà davvero preoccupato
perché non posso farlo ci sarebbero alcuni
tipo di foto davvero scortese così ho capito
persone che potrebbero verificare per credere
era uno squalo lì per favore dimmi se
è se non è così abbiamo le persone
fidanzato e sai che questi giochi di parole sono gentili
di sottile e hanno cominciato ad apprezzare
il tè sottile e hanno cominciato a vedere
quel complesso problema di concorrenza potrebbe
essere risolto abbastanza elegantemente con alcuni
linee di codice e loro la videro è lasciata
si è schiantato ho solo pensato che fosse un
tipo di marketing di cosa non lo so davvero
apprezzare cosa significa a livello di codice
solo per tipo di avere la libertà di andare
sì sta andando a andare male sarà noi
inizia da solo e loro si sono resi conto di loro
potrebbe attaccare problemi più impegnativi
e hanno cominciato a vedere alcuni di lei
benefici e capire la logica
per il cambiamento come nel motivo per cui stavamo provando
cercando di fare questo alcuni di loro lo sai
tipo di ottenuto oltre le latitudini e loro
davvero davvero iniziato a piacergli e così
eravamo così infusi da questo tipo apparente
dell’amore erlanger in alcune aree che noi
pensavo fossimo davvero contenti di aver combattuto
la raccolta è eccellente per te
conoscere alcuni dei nostri sviluppatori è stato come
quella scena in Titanic sai che abbiamo avuto
gli uomini adulti sono sinceri che posso risolvere
qualsiasi problema nel mondo è questo è
incredibile e poi ci siamo imbattuti in
alcuni problemi il problema principale era
è così che Erlang ha tanto amato
la gente ha iniziato a trovare soluzioni davvero
buone soluzioni per il problema sbagliato
la gente è un po ‘trascinata via
l’avevo immaginato quando togli
una fonte di complessità e tu dai
le persone hanno qualcosa di nuovo e ottengono davvero
in esso che improvvisamente solo tu
sai come andare a prendere forse un po ‘troppo
entusiasta e felice di ciò lo farò
tutti lo dicono, ma secondo me
di effettivamente cercando di fare soldi fuori
scrivere software che è una buona cosa
soluzioni per i problemi sbagliati è
assolutamente fondamentale perché tu sai che io
credo sia dove un sacco di tempo e può
mangiare è come se fosse sprecato
da un tipo chiamato John Caswell che
praticamente sembrava un tipo di visuale
pensando e cose del genere ma lui
scrive un sacco di articoli interessanti su
come effettivamente trovare e definire ciò che il
il vero problema è o come mostrare
gestione e tutte le persone anziane questo è
dove vuoi davvero passare il tuo tempo
e soldi quindi siamo stati tutti entusiasti
in realtà abbiamo perso un bel po ‘di tempo e
il tuo onore dei motivi per cui siamo andati
in una semplicità di linguaggio e abbiamo finito
con un sistema abbastanza complesso ma quello
abbiamo detto che abbiamo un prodotto fuori dalla porta e
nel complesso funziona bene il nostro errore
abbiamo investito tanta energia in
costruzione gamba amante che non abbiamo davvero
spendi troppa energia per allenarti
come gestire l’amore che
effettivamente è successo fisicamente ma tu
sapere che si tratta di errori nella cultura
questo è stato davvero un grosso errore, ma tu
so che abbiamo imparato da esso e nessuno ha capito
tipo di sai mettere contro il muro o
urlato o urlato e cose del genere
perché fin dall’inizio avremmo
venduto alla nostra direzione che questo è un
grande cambiamento strategico enorme c’è
sarebbero stati problemi ed erano solo
felice di ottenere qualcosa fuori dalla porta noi
ho scoperto che l’ altezza della stufa era sufficiente
forse sarà un po ‘più chip più maturo
e così abbiamo iniziato a pensare a come
formare una relazione più matura con
programmazione funzionale per alcuni dei
alcuni dei prossimi progetti che noi
non erano così abbiamo i nostri primi due grandi
sistemi di compagnie aeree in cui era il primo
nell’ottenere le quote ai nostri clienti
il secondo era in questo problema di incasso
il prossimo tipo di stage che siamo andati
attraverso era okay dove abbiamo avuto certezza
le squadre che usano come ci spostiamo di più
come al solito, come facciamo per il
i giusti problemi rendono questo lo strumento
quello che le persone usano, così abbiamo ottenuto
le nostre fondamenta così da quelle
fondazioni che siamo stati in grado o allora abbiamo avuto
la sicurezza di farne effettivamente
davvero una buona ricerca per entrare
sistemi distribuiti e tu conosci noi
spostato su molto più difficile
problemi quindi perché una volta ottenuto il
basi coperte e tu stai andando
beh questo è stato un problema davvero difficile e
hey, io so come risolverlo ora
sai che puoi davvero fare qualcosa
speciale e quindi c’è un nostro progetto
Progetto europeo chiamato sink free I’d
raccomandare che le persone prendano un a
Guarda
che fanno un sacco di interessanti
i sistemi di distribuzione funzionano e scrivono
molti linguaggi di programmazione meta
dove devi sincronizzare a fermo
essere deterministico ma creare sistemi in
scala abbiamo fatto molto e molto lavoro
eventuale consistenza finale
coerenza in un tipo di gioco d’azzardo
del contesto è interessante e quindi noi
fatto molte ricerche su come
controllo e una cosa se ce n’è una
cosa uscendo da questa conferenza
rispetto alla programmazione funzionale di un’altra linea
che consiglierei a chiunque di prendere un
guarda i suoi CR DTS che provengono da un ragazzo
chiamato Mark Shapiro efficacemente quello che
significa che se sei in grado di scrivere
algoritmo dove è commutativo come e
puoi capovolgere l’ordine delle operazioni
intorno ad associativo e adam lo hanno posto
significa che puoi quasi tutti i sistemi
nel giusto contesto che fanno le corse
riparazione in quanto non si sincronizza
in anticipo si consente ai dati di fluire per il tuo
sistema e quindi si spera finchè
il tuo caso d’uso lo consente nel tempo
che serve davvero all’utente per guardare
a tale informazione l’algoritmo di CRT
gli algoritmi saranno di un tipo qualsiasi
aggiornamenti simultanei o eventuali aggiornamenti non riusciti
insieme per rendere i dati sensati e
quindi abbiamo fatto molte e molte ricerche
su come puoi scrivere sistemi su scala
senza un sacco di un sacco di coordinamento e
noi non saremmo stati in grado di farlo
se non avessimo risolto la nostra fondazione
ora un numero di questi di prossima generazione
i sistemi sono ora in diretta Non posso davvero parlare
su di loro troppo e ne abbiamo molti
più di loro in cantiere e così via
passando attraverso questo tipo di processo
è stato abbastanza trasformativo dentro
il business così tornando a sapere
quali sono stati gli effetti collaterali di tutto questo
roba quello che il primo è stato trovato
le nostre solide basi abbiamo trovato qualcosa
per alcuni dei casi d’uso che abbiamo
abbiamo trovato qualcosa che potevamo solo
questo ha reso le cose difficili relativamente
relativamente semplice apriamo le menti
e così dando spazio alle persone e via
cercando di fare qualcosa che era molto
molto diverso da quello che era successo prima
mettiamo le persone in una mentalità dove loro
potrei sperimentare un po ‘di più e abbiamo liberato
persone e abbiamo permesso loro di immaginare a
un po ‘di più sai che aumentiamo il
Le possibilità che ho detto guardate voi conoscete noi
può fare queste cose veramente difficili
abbiamo scoperto che l’apprendimento motiva un felice
la forza lavoro è una forza lavoro produttiva è un
ottimo posto dove lavorare per dare il lavoro
le persone una sfida di apprendimento in cui sai
l’ambiente giusto con il giusto
il contesto ti motiva davvero
sapere con non solo tu sai adottato
erlang abbiamo adottato un’intera suite di
nuovi strumenti relativamente di recente
qualcosa di inaudito e così ora
quando siamo di fronte a un problema dove
Sto andando bene, tu l’hai fatto
ho Java e tu hai Earl e ora
ora siamo in grado di dire okay bene cosa
è davvero lo strumento giusto qual è il
il modo migliore per risolvere questo problema e lo siamo
sai che siamo molto più rilassati
sai non usare diverso
tecnologie che abbiamo dimostrato di poter
adottare nuove cose che abbiamo reso facile
risolvere problemi davvero difficili e questo è
chiave uno abbiamo guadagnato la settimana di fiducia e se
potrebbe essere per i miei altri lati in alcuni
aspetti che hanno guadagnato un po ‘troppo
fiducia ma abbiamo acquisito fiducia in
accetta di attaccare seriamente
problemi difficili apprendimento funzionale
programmazione penso che sia con
sistemi distribuiti come ho detto prima
difficile sapere e conoscere
erlanger e apprendimento di funzionale
programmazione e il modo in cui funzionano
nel modo in cui usarli efficacemente
Penso che sia davvero una buona preparazione per
chiunque stia per iniziare a muoversi
in quel campo che probabilmente conosci
la linea di fondo finanziaria che ora abbiamo
molto più disponibile e reattivo
sistemi che continuano a mantenere il nostro
clienti felici abbiamo una pipeline di
innovazione quindi prima eravamo soli
arrampicando per tipo di tenere il passo e io solo
mi sono sentito un po ‘come un
churn all’interno della società ora vorrei te
so che direi che le cose sono ancora
difficile lavorare lì e c’è ancora a
molte cose interessanti in corso, ma noi
senti ora abbiamo una pipeline di prodotti
in un modo di consegnarli sta andando
essere di ordine di grandezza migliore di
ciò in cui crediamo sarà la nostra concorrenza
metteremo fuori e abbiamo significativamente
meno tempi morti quindi all’inizio mi piace
di promesso su qualcosa riguardo
massimizzando gli effetti collaterali, quindi questi sono
i miei consigli per massimizzare gli effetti collaterali
ottenere il massimo mette più il lato
effetti per lo sforzo di cambiare questo
hai messo la prima cosa che hai
per essere sicuro di avere reale
motivi per cambiare a volte inizi
in un viaggio e stai cambiando per
cambia bene sai che non farlo così
convincente e così bello e fresco come è
potrebbe essere quello di giocare con roba da un
prospettiva aziendale o ottenere il
supporto della tua gestione
ora che il cambiamento accada, assicurati di se
hai delle vere ragioni e poi convalida
loro perché il mondo è dinamico
complesso vuoi andare da A a B e
c’è un ritardo di cinque settimane nel mondo
cambierà in quelle cinque settimane così
misurare la complessità dinamica convalidarlo
i motivi per cui si sta andando ad essere
cambiando ci sono e poi comunichiamo
loro sempre convincono le persone a farlo
capisci perché stai cambiando le persone
voglio sapere perché perché tanto quanto noi
come l’apprendimento anche noi non ci piace
cambiando ed è un processo doloroso e
devi spingere le persone a farlo
quello e bene per me personalmente e per
molti dei nostri sviluppatori capiscono
perché è la chiave a volte le ragioni per cui
stai facendo cose in un grande progetto ma
ho completamente perso mezza complessità
dibattito non abbiamo mai veramente avuto il
dibattito sulla complessità e con ciò intendo
parlare alla gente del perché il loro software
finisce per essere complesso capire dentro
il tuo contesto organizziamo cosa
la complessità è avere alcuni esempi di
codice diverso che la tua squadra ha tutto
attraverso diverse squadre hanno scritto get
persone diverse a guardarlo e
spiegare perché è più complesso
in definitiva in un ambiente di alto livello
vuoi la mobilità tra le squadre che vuoi
le persone per essere in grado di muoversi sono
non dovrò farlo facilmente se
le persone possono capire il codice che conosci
così il dibattito ha una certa complessità
c’è qualcosa che ha certo
parlato di coinvolgere le persone a sostenerli
istruiscile e guidali in modo che tu sappia
che il coaching è davvero il suo genere di
seduto sullo sfondo a volte e
lasciare che le persone arrivino da sole
conclusioni e chiedere il giusto
domande sapete che è inestimabile quando
stai cercando di spostare le persone nella loro
zona di comfort sai di averli
sarà come un buon allenatore di basket
ha scosso nostro nipote, non ti ha detto
buttala così non possono dire cosa
sembra come quando ti piace
questo e poi descrivono cosa
si sente e descrivendo ciò che il
processo è tipo di arrivare a
capirlo un po ‘di più lascia fare
essere noto che il fallimento come distinto
possibilità e fatelo sapere
va bene e questo è veramente vero
importante e infine se tu
in realtà capisci bene la prima volta
Probabilmente avete essere facendo male e
avrai qualche brutta sorpresa in giro
il dietro l’angolo che non hai fatto
in realtà non ti aspettavi fisicamente
sapere se qualcosa è troppo facile quando
stai facendo un grande cambiamento, sai che è così
probabilmente sbagliato che devi riconoscere
che non tutti saranno felici
sai che direi che tu conosci noi
abbiamo avuto alcuni veri amanti della sua gamba
alcuni
praticamente non voglio andare da nessuna parte
vicino ancora così non lo sai tutto
vai vai vai ma devi andare l’extra
miglio per far sì che le persone a bordo lo rendano divertente
l’umorismo può andare molto lontano
prenditi tempo ci saranno giorni difficili
quindi devi perseverare essere positivo
e devo pensare a lungo termine così io
voglio cambiare personalmente vorrei che tu avessi
ho provato questo presto penso funzionale
la programmazione ti rende migliore
programmatore in ogni lingua diversa
paradigmi è un pasticcio con il tuo
il cervello ti rende più creativo
vedere i problemi da diversi punti di vista
pensavamo che l’adozione sarebbe stata una salita
lotta se è sorpreso di quanto
alcune persone lo adoravano e io continuo a farlo
dicendo però alcune soluzioni eccellenti
ai problemi sbagliati che avremmo potuto fare
un lavoro migliore di spiegazione positiva
implicazioni di carriera a lungo termine di
programmazione funzionale il mio punto di vista è
che è molto meglio che moderno
programmatore è un problema pragmatico
il risolutore piuttosto che qualcuno ha X
anni di esperienza in un certo numero
cosa e conclusioni ce ne sono molte
effetti collaterali in qualche modo più facili alla missione
e altri, ma dal nostro punto di vista questo
è stato uno sforzo molto utile perché
aprire le porte ad una serie di grandi dimensioni
miglioramenti e ci ha dato quello spazio
ora per tornare ad essere un po ‘
più incrementale e basato su funzionalità e
ha davvero formato la base del nostro nostro
nuova piattaforma ma, soprattutto, tu
sappiamo che siamo cresciuti con le persone come parte di questo
progetto e siamo cresciuti come team e siamo cresciuti
come organizzazione e questo è quello che
la gente vuole davvero così i miei consigli lo sai
se non hai davvero provato a farlo
programmazione funzionale e hai a
progetto che ne ha bisogno e tu hai il
sai dove lo provi perché tu
sai che sei un viaggio e cambia
tu e questo ti rendono migliore e e
spero che tu sappia che crescerai
e lì andiamo Michael timer si fermò così
Non so quanto tempo ho avuto ora
praticamente nessuno ma è stata una bella chiacchierata
grazie mille grazie
quindi grazie per aver valutato le sessioni
grazie per chiedere alcuni dei
domande abbiamo solo il tempo per due di
li si sono fusi in uno va bene così mi limiterò
Chiedi loro direttamente così una delle cose
quello che è successo nelle domande era come
è stato difficile per te trovare nuovi
sviluppatori che conoscono Erlang o sei stato tu
trovare gli altri poi anche riqualificato e avere
ne hai perso qualcuno durante Andrew, era difficile
sì, è stato molto difficile trovare persone che
addestrato in Erlang perché lo sai
piuttosto una nicchia e soprattutto roba così io
direi che la maggior parte dei nostri programmatori
sono stati riqualificati e loro hanno
fondamentalmente ero sul posto di lavoro
Fatto, abbiamo avuto pochissime persone
in realtà lascia e perché ci sono a
numero di tipi di unicorno yukon
aziende o soffrire che stavano usando
queste queste diverse tecnologie e io
pensa che esista un vivace mercato del lavoro
là fuori, ma penso che le persone rispettino il
fatto che abbiamo dato loro la libertà e
l’opportunità di imparare questa roba e
quindi sai che devi fidarti delle persone se
tu vai a sapere, allora dacci
sai che tendi a trovare quella gente
volontà che restituirà così non abbiamo
davvero molte persone se ne sono andate via o
due ma ma nel complesso sì è stato
difficile molto tempo di allenamento ma il
le persone che abbiamo cambiato sembrano rimanere
questa è la tua domanda buona quindi grazie a
per favore, trovali per ulteriori domande
e spero di vederti per il prossimo passo
grazie grazie ancora

Please follow and like us: