Foto av Johan Kindgren

GOTO Stockholm

// Johan Kindgren

Årets tema för konferensen GOTO Stockholm var Cloud native applications, och de hade fått ihop en bra samling av talare från några av de mer kända bolagen inom området.

Microservices var ämnet på ungefär hälften av föredragen, och kanske främst vad det gäller på organisatorisk nivå. Jag skulle gissa att 75% av föreläsarna tog upp vikten av att ha en organisatorisk struktur som tillåter att ett team producerar självständiga enheter i kod, dvs att teamen är ganska små och självständiga. Conway’s Law verkar vara svår att undgå!

Zalando’s CTO, Roudrige Schaefer, presenterade hur de gått från en gigantisk monolit med ca 1000 utvecklare med rigorösa utvecklingsprocesser, för att nu släppa taget om tekniken och låta varje team själva bestämma hur de vill lösa sin uppgift. Dock hade de fortfarande kvar en central grupp som såg till att varje API följer deras standard, och ser till att man hittar rätt ansvarsfördelning mellan olika tjänster. Zalando har även tagit fram en arkitektur för microservices i front-end (Tailor), som (tillsammans med andra lösningar) kommer att släppas som Open Source framöver. Ett intressant koncept som kan vara värt att titta närmare på: https://github.com/zalando/tailor

En av de bättre föreläsarna var Fred George, som på ett intressant sätt diskuterade en hel del nya problemområden med microservices och tillhörande ny teknik. Bland många ämnen så pratade han en del om lösningar baserade på Kafka som eventbus, där har förespråkade att lägga in alla händelser i systemet i denna eventbus, t o m att systemloggning skulle kunna skickas genom eventbussen.

Som closing keynote under första dagen presenterade Adam Tornhill några av sina metoder för att hitta kod som ur förvaltningssynpunkt borde åtgärdas. Han använde inte de traditionella verktygen med statisk kodanalys för att hitta problemområden, utan analyserade commit-historiken från versionshanteringssystemet. Lite intressant tanke att kunna hitta kod som ändrar sig ofta, och delar av koden som ändrar sig tillsamman, även om de inte borde ha någon koppling. Ett av hans exempel tog upp .Net-kod, som visade sig vara copy-paste, och därför alltid ändrade sig tillsammans för varje bug/feature som hanterades. Mer information kan man hitta på http://empear.com/

Generellt sett tycker jag att föredragen höll hög kvalitet och att det var bra ämnen, men tyvärr var det lite för korta tider (40 minuter) för att hinna gå på djupet vad det gäller teknik.

Det jag tar med mig från konferensen är att det finns mycket intressant teknik som kan underlätta att gå från stora monoliter till en mer modulär microservice-arkitektur, men om inte organisationen förändras på samma sätt som arkitekturen är det svårt att komma i mål med en satsning på microservices.

Alla föreläsningar filmades och kommer att bli tillgängliga framöver.
Jag skulle rekommendera följande föreläsare:
- From Monolith to Microservices at Zalando, Roudrige Schaefer
- Pragmatic microservices, Randy Shoup
- It’s not just Microservices, Fred George
- Strategy on big programmes, Jamie Dobson

Buzzwords/teknik som jag skulle titta lite närmare på:
- Weaveworks scope, monitorering av docker/kubernetes
- Mantl
- Mesos