On Github odynvolk / qcon-sf-2015
Av Alexi Rahman
3 dagar - dragningar
(2 dagar - workshops)
Microservices. Skojades om microservices. Nästan ett krav om man ska kunna deploya ofta, speciellt om produkter/miljöer är komplexa. På Dockerhub har många repos miljoner pulls. För något år sedan, prat om ovanstående, nu används de faktiskt. Meetup på Trifork, bara ovanstående. JavaScript, klient/server/databas (Clusterpoint). Utsålda workshops React.js samt Docker.
2 stjärnor, "Excellent cooking, worth a detour"
Old school-distribution av mjukvara med lång feedbackloop
Fink (head of engineering) var på MS när de tog över Yammer. Började jobba som de gjorde på Yammer. Kom dock från Sharepoint där de hade långa releasecykler och därmed feedbackloopar.
Vi vet inte var vi är på väg, men vi får mycket gjort
Rörlig måltavla
Efficency vs responsiveness
Effektiva på MS, men inte spec responsiva. Responsivt ofta bättre i en dynamisk värld.
Lång feedbackloop gör att man vill undvika misstag. Med snabb feedback kan man lära sig från misstag, det tillsammans med en låg kostnad är viktigt.
"Failure is not trying things that don’t work.
Failure is failing to learn."
2 första tekniska, de andra mer av organisatorisk natur.
Continuous integration
Continous delivery / deployment
A/B-testning
Se upp med mikrooptimering
Ny feature gick ut, bra mätvärden för den, men var det bra för produkten som helhet?
Företagskulturen... Färre features som deployas, men de som gör det bidrar med ett större värde.
Dynamiska team, organiserade kring projekt
Hade klassiska frontend, backend, sök etc team. Nu temporära team med alla typer av kunskaper. Färre beroende till andra typer av kunskaper.
Minimera motståndet till förändring...
Arie DeGeus
Hur fungerar detta på mitt nuvarande uppdrag?
Organisationen/produktägarna med mera är medvetna om att allt som provas/utvecklas inte kommer att behållas.
Medlemmar/folk byts ofta. Snart 4:e teamet under min tid. Vet ej om det är lika mycket tanke bakom som hos Yammer.
Ägarskap
Jobbar med Chrome på Google samt sitter i komiteen för ECMAscript.
Väldigt många vill jobba med nativeappar. De har möjliggjort massor med saker som webben inte kunde leverera.
Alex går inte in på hur detta kan komma sig. Någon som vet?
Enligt de senaste siffrorna från Fiksu fortsätter kostnaden för att utveckla samt få apparna till användarna att öka.
Leta upp appen, godkänna, laddan ner, använda.
Finns i Chrome, Opera. FF kräver nightly build samt ändring i about:config.
Har i sitt API "fetch" samt "push"
Registrera
if ('serviceWorker' in navigator) { navigator.serviceWorker.register('/service-worker.js'); }
Installera samt cacha
function updateCache() { return caches.open('some-cache-name') .then(function (cache) { return cache.addAll([ '/offline-page.html', '/assets/css/main.css', '/assets/js/main.js' ]); }); }; self.addEventListener('install', function (event) { event.waitUntil(updateCache()); });
Lägga till statiskt innehåll. Vi ser att Promises används av Service Workers.
Hämta innehåll från cache alt. nätverket
self.addEventListener('fetch', function (event) { event.respondWith( caches.match(event.request) .then(function(response) { if (response) { return response; } return fetch(event.request); } ) ); });