"Det ændrer alt."
De tre bombastiske ord leveres af Mike Ehrenberg, der er technical fellow og chief software architect i Microsoft Business Solutions.
Computerworld møder ham under et besøg i selskabets udviklingsafdeling i Vedbæk til en snak om, hvordan cloud computing er med til at ændre måden, man designer software på.
"Det ændrer design-principper, det ændrer, hvordan vi bygger ting, og det ændrer, hvordan vi involverer os med kunderne," siger Mike Ehrenberg.
Han fortæller, at cloud allerede har været med til at ændre måden, man designer software på ganske radikalt - og det gælder ikke bare i forhold til selve cloud-løsningerne.
I Microsofts tilfælde skal udviklerne eksempelvis kunne levere applikationer både til den store offentlige sky, de lokale installationer og til de hybride løsninger.
"Det ændrer design-principper, det ændrer, hvordan vi bygger ting, og det ændrer, hvordan vi involverer os med kunderne"
"Hvis kunderne vil satse på on premise, skal de kunne gøre det, hvis de ønsker at hoste det i en privat sky, skal de kunne gøre det, og hvis de ønsker at være i vores offentlige sky, skal det også kunne lade sig gøre. Og det skal være den samme applikation."
"Så vi fokuserer på at levere det samme produkt, der så kan rulles ud på den måde, som de ønsker det. Det ingeniørarbejde, vi skal lave for at være gode til public cloud, gør også vores on premise-produkter endnu bedre," siger Mike Ehrenberg.
Latency er blevet en større udfordring
Han forklarer, at den offentlige cloud eksempelvis medfører udfordringer med http, latency, firewalls og så videre - og at Microsoft skal designe løsningerne ud fra den præmis.
Det smitter af også på on premise-løsningerne.
"Selv vores on premise-kunder har remote warehouses og lokationer."
"Public cloud har tvunget os til at ændre designet, så vi antager, at der er et større netværk, at der er latency og dårlige forbindelser. Vi skal kunne designe fantastiske løsninger i det miljø," lyder målet hos Mike Ehrenberg.
Flere menneskelige fejl end softwarefejl
Gør cloud software mere eller mindre komplekst set fra et udviklerperspektiv?
"Der er ting, vi nu er tvunget til at prioritere, som vi ikke gjorde tidligere," svarer Mike Ehrenberg.
"Hvis der er et problem, skal alle være tilgængelige til at kunne løse det. Når jeg løser det, skal jeg være rigtig hurtig til at gå fra at finde problemet til at ændre koden, udvikle og til at udrulle det."
"Jeg skal kunne bygge og udrulle på en automatiseret måde, for hvis du ser på de fleste af de problemer, der opstår med cloud-systemer, bunder det som regel i et menneskes finger, der har gjort noget forkert. Der er så mange flere af den slags problemer, end der er fejl i softwaren."
Mike Ehrenberg beskriver en af Microsofts store ledetråde for softwareudviklingen:
"Vi vil automatisere hele udrulningsprocessen, og derfor vil vi fortsætte med på tværs af Microsoft at investere i værktøjer, der mindsker tiden fra, at man ændrer i kildekoden, til at man ruller det ud i skyen."
"Alle de trin skal automatiseres, og man skal kunne lave rollback og så videre."
"Slut-resultatet er, at vores udvikklere i dag er langt mere produktive. De kan gøre ting langt hurtigere," forklarer Microsofts chief software architect
Langt lettere at spotte fejl og mangler
Mike Ehrenberg peger på en anden klar gevinst, som udviklere får ved cloud; at man kan anvende telemetri, så man indsamler data om brugen af løsningerne.
"Du kan vide, hvordan din software bliver anvendt, og hvordan den præsterer, på måder, som vi slet ikke kendte til tidligere."
Han nævner, at der i Dynamics AX bliver sendt hundredtusindvis af forskellige typer rapporter afsted sammen med produktet, som oversættes til 30-40 forskellige sprog.
"Vi ved, hvad der præsterer godt, og hvad der ikke gør, og vi ved, hvad der bliver tilpasset og ikke tilpasset"
"I gamle dage havde vi ingen idé om, hvem der brugte hvad - den bedste indikator var, hvis nogen ringede for at få support. Vi havde ikke gode data, så når det var tid til den næste release, og folk spurgte, om det var nødt til at opgradere til den nye release, vidste vi det ikke."
"I dag, når vi bygger telemetrien ind i cloud-systemerne, ved vi, hvilke rapporter der bliver anvendt, og hvilke der ikke gør. Vi ved, hvad der præsterer godt, og hvad der ikke gør, og vi ved, hvad der bliver tilpasset og ikke tilpasset."
"Det er data, vi slet ikke havde tidligere, hvor vi så ikke kunne se, hvis der var noget, vi ikke havde forstået."
"Der er en række ting, der er mere komplekse at håndtere med cloud, men vi investerer i de værktøjer og frameworks, der kan adressere de ting, og samtidig er der ting som telemetri, der gør det muligt at gøre tingene på en smartere måde," siger Mike Ehrenberg til Computerworld.
Læs også: