102 applikationer. Så mange er Henrik Møller fra udviklingskæmpen EG øverst ansvarlig for. Som CTO har han ansvaret for retningen for den tekniske udvikling for virksomhedens cirka 500 udviklere.

Det er et stort ansvar, og opgaven er ikke blevet mindre de senere år. Med relativt nye koncepter som functions as a service (FaaS) og containers har mulighederne ændret sig drastisk. Alligevel giver det ikke anledning til at de ansatte skal omskoles.

“De skal forholde sig til nye teknologier. Det er ikke fordi skal kode længere, men de skal gøre det anderledes. De skal videre mere om DevOps, for man er ikke kun udvikler, men også involveret i drift,” siger han og giver et konkret eksempel:

“Hvis du udvikler noget, der skal rulles ud i en container, f.eks. Docker, så er det andre ting applikationen skal spille op mod, end ellers. Det er et andet abstraktionsniveau, som de skal kende til, fordi tilgangen til f.eks. lagerplads og filsystem er anderledes. Men de bliver stadig ved med at kode i f.eks C# eller .net.”
Docker logo 

 

 

Faktaboks

FaaS og containers


Containers er en relativt ny måde at afvikle applikationer på. Det er et begreb, der dækker over at software kan sættes i drift i containere, der fungerer på alle typer af servere og systemer. Containerne kan dele resourcer og styresystem med andre containere på samme server og kan derfor give en meget bedre udnyttelse af f.eks. processorkraft, ligesom der meget lettere kan skaleres op og ned afhængigt af forbrug. Docker og Kubernetes er de mest udbredte containerløsninger.

Du kan læse mere om containers her: 
https://www.zdnet.com/article/what-is-docker-and-why-is-it-so-darn-popular/

Functions as a service (FaaS) er tanken om, at små scripts (funktioner) afvikles individuelt på servere og kan sættes sammen på kryds og tværs. Både Microsoft, Google og Amazon har cloudløsninger til FaaS.


Du kan læse mere om FaaS her: 
https://medium.com/@BoweiHan/an-introduction-to-serverless-and-faas-functions-as-a-service-fb5cec0417b2

Den internationale analysevirksomhed IDC forudser, at 80 procent af alle applikationer i 2021 bruger enten FaaS eller containerteknologi: https://www.itworldcanada.com/article/out-of-the-silo-into-the-container-how-developers-will-work-in-2021/404630

 

Skalering er gud

Både FaaS og containers er blevet voldsomt populære de seneste to-tre år. Rigtigt mange ny udviklingsprojekter gør brug af koncepterne, og mange ældre applikationer bliver skrevet om, så de kan gøre brug af de nye muligheder.


Det mærker Henrik Møller fra EG. Han er nemlig hovedansvarlig for, at virksomhedens 102 forskellige applikationer henover de næste tre-fem år skal køre i containers.

“Vi er i gang med en homogenisering af vores applikationer. Dér er containers meget smarte, fordi vi kan ensrette en masse ting, uden at skulle lave det hele, så det virker på samme teknologi og platform. Med containers kan vi let flytte rundt mellem forskellige platforme, ligesom det understøtter tankegangen med brug microservices, der allerede findes i økosystemet,” siger han.

I EG foregår derfor blandt andet en diskussion om hvilke applikationer, der giver mening at lægge ud i clouden og om det skal være en privat eller offentlig cloud. Mens mange af løsningerne er rettet mod private sektorer som logistik, frisører og ejendomsadministratorer, så har firmaet også offentlige kunder, hvor de juridiske forhold omkring persondata kan være anderledes, og derfor ikke egner sig til cloudløsninger. Men for langt de fleste brancher, er der noget at hente, fortæller Henrik Møller.

“Vi kan køre væsentligt flere containere end virtuelle maskiner på den samme maskiner, og de har en bedre oppetid. Der er en masse skaleringsfordele og vi kan snildt lave nye releases hver time uden nedetid. Der er supermange positive ting ved det,” siger han.

Om functions as a service siger han:

“Det ligesom at bygge med Lego. Med FaaS kan man sammensætte mange forskellige microservices og skalere dem op og ned løbende, samtidig med at man løbende kan udskifte de enkelte dele, når der kommer ny teknologi eller nye mulighed. Men man skal tænke sig om før man selv udvikler, for der kan sagtens være andre, der har lavet præcis samme tjeneste.”

Omtanke, ikke omskoling

Selvom de nye teknologier får stor indflydelse på fremtidens software, så er det ikke et helt nyt sprog, der skal læres. Der er i højere grad tale om, at udviklerne skal sætte sig mere ind i systemfolkenes verden og omvendt.

 

“Applikationsfolk skal kunne forstå infrastrukturfolk og skal kunne italesætte sine behov overfor dem - og det samme gør sig gældende den anden vej rundt. Hvis det skal blive rigtigt effektivt, så skal applikationsfolk vide, hvordan de bedst bruger infrastrukturen,” siger Philippe Bonnet, der er professor på IT-Universitet i København, og blandt andet beskæftigere sig med storskala-systemer og datacentret.

Selvom de nye koncepter vokser hastigt, så kommer de ikke til at overtage hele IT-sektoren, mener han.

“Det betyder, at man kan gøre tingene på forskellige måder. Det betyder ikke, at alt bliver ens. Nogen kommer til at køre på mainframes, nogen på serverbaserede løsninger, nogen kører virtuelle maskiner og andre i clouden. Det bliver et mix,” fastslår han og tilføjer, at FaaS vil gøre mange mere afhængige end de allerede er af giganter som Microsoft, Google og Amazon.

Derfor vil Docker og de andres vækst næppe få de store konsekvenser for dem, der uddanner sig indenfor udvikling.


“De fleste virksomheder har brug for et mix af udviklingsmiljøer, og det er dét, vi uddannede folk til. Det kommer mest til at betyde et tættere samarbejde mellem udviklere og infrastrukturfolk,” forudser han.

Docker selv mener, at overgangen fra udvikling til drift er blevet lettere.

“Det sænker tidsforbruget på opgaver uden for udviklingsprocessen og afkorter vejen til at produktet rammer markedet. De giver mindre friktion mellem udviklerer og systemadministratorer.”


Firmaet, der er vurderet på den dyre side af en milliard dollars, siger i en skriftlig udtalelse til Samdata, at containerization også får konsekvenser for den enkelte udvikler:

“Det betyder, at de kan bruge mere tid på at være kreative. Det vil frigive udviklerresourcer, der så kan lære nye teknologier. Docker kan eliminere ‘det virker på min computer’-problemet, ligesom de kedelige opgaver med at opsætte og konfigurere udviklingsmiljøer kan automatiseres.”