Hvilken skal jeg velge?

Vidar Moe
Vidar Moe
Nov 19 · 4 min read

Vi vil hele tiden lage de beste og smudeste løsningene for kundene våre. For å få til det, må vi innimellom oppgradere teknologiene og verktøyene vi bruker. Men hvordan skal vi egentlig velge et nytt produkt / teknologi / plattform når det er flere gode valg, i en industri der det som er State of the art i dag gjerne er worst practice i morgen?

Det finnes mange jevnbyrdige konkurrerende produkter innenfor de fleste områder, det være seg databaser, byggesystemer eller skyleverandører. Hvordan skal vi finne de teknologiene som er best for oss når det er så mange alternativer å velge mellom?

Hvilken skal vi velge?

Top of the Pops

Vi tror det er lurt å basere oss på teknologier som er populære i industrien generelt, og godt likt blant utviklere spesielt. Det er det flere grunner til:

  • Sannsynligheten er stor for at også våre utviklere vil like, eller allerede liker teknologien

Men det er ofte flere teknologier som er populære, og har sine følgerskarer. Hva gjør vi da?

Spør en venn

Det kan være lurt å finne ut om noen andre en kjenner og stoler på, har erfaring med en eller flere av de aktuelle teknologiene. I så fall, inviter til en prat og få dem til å fortelle om både fordeler og ikke minst ulemper og ting å tenke på. Da er det også fint å få høre mer om konteksten de bruker teknologien i — er den lik nok ditt behov til at deres erfaringer er relevante?

Et annet tips er å gå utover venner og kjente, og rett og slett gjøre et moderne literaturstudium. Det består av å se talks, lese reviews, bloggposter og artikler om de aktuelle teknologiene. De mest populære teknologiene kan ofte gjenkjennes på at det også er de det er flest artikler og talks om.

Det viktigste

Hvis dere har noen absolutte krav, så er disse bra for å snevre inn valget. Er det noen egenskaper med produktet som er ekstra viktige for dere? Kanskje har dere for eksempel en del absolutte sikkerhetskrav rundt autentisering og autorisasjon? Eller kanskje har dere et konkret problem dere trenger å løse? Det hjelper ikke om en teknologi er aldri så bra på aldri så mye, om den ikke leverer på de viktigste kravene.

Har du troen?

Hvem er det som backer teknologiene? Har dere troen på firmaet eller personene som står bak? Hvis det er en open source teknologi, er det aktivitet og videreutvikling på teknologien? Vil det sannsynligvis også være det om to år?

Det kan være mye å velge mellom.

Bli skitten på hendene

Når dere har en shortlist på to-tre produkter, er det på tide å bli skitten på hendene for å finne ut av hvordan produktene faktisk fungerer i din kontekst. Dere må prøve dem ut.

Vi anbefaler å lage et testcase som er så enkelt som mulig, og samtidig stikker fingeren inn der det gjør mest ondt. Dere må verifisere at dere får løst utfordringene som er grunnen til at dere startet denne vurderingen.

Trenger dere en ny database fordi den gamle er for treg når den jobber med store JSON datasett? Da lager dere et digert JSON datasett og utstetter testkandidatene for dette. Eller kanskje dere trenger et nytt byggsystem fordi det gamle ikke takler at dere bygger de 400 nye flotte mikroserviceappene deres i parallell? Starte med å teste ut bygging av 800 apper i parallell.

Med reell uttesting kan dere også samtidig verifisere at for eksempel sikkerhetsmekanismene faktisk fungerer som beskrevet.

Utvikleropplevelse og brukervennlighet

Reell uttesting er også den eneste måten å få en følelse med brukervennligheten til teknologiene dere vurderer. Er APIene hensiktsmessige og enkle å bruke til for eksempel automatisering? Hvordan føles det å jobbe med dem? Er de lett å bruke i konteksten som er viktig for dere? Er de raske? Er dokumentasjonen rett? Eller mangler kanskje de viktigste APIene for dere helt, og eneste mulighet for automatisering er screenscraping av triste pek-og klikk-grensesnitt?

APIene gir også røntgensyn som lar oss se inn i firmaet som utvikler dem. Gjennom APIene kan vi se hvordan utviklerene tenker og hvilket fokus de har på utvikleropplevelse. Skal dere for eksempel vurdere en ny partner som leverer tjenester via APIer, ta med en utvikler på det første møtet. Gå rett på sak. Det kan spare dere for mye bortkastet tid.

Hvis dere til slutt sitter igjen med mer enn en teknologi som svarer godt på punktene over, så er dere heldige. Da spiller det trolig ingen rolle hvilken av disse dere starter med. Skulle det senere vise seg å bli utfordringer, så har dere allerede en alternativ teknologi klar til å ta over.

Lykke til med valget.

SpareBank 1 Utvikling

Vi jobber med digitale løsninger hos SpareBank 1.

SpareBank 1 Utvikling

Vi jobber med digitale løsninger hos SpareBank 1. Vi liker å skrive om det vi brenner for

Vidar Moe

Written by

Vidar Moe

Loves creating great, simple software solutions using continous learning and respect for people.

SpareBank 1 Utvikling

Vi jobber med digitale løsninger hos SpareBank 1. Vi liker å skrive om det vi brenner for