Arctic Cloud Developer Challenge 2021

Arctic Cloud Developer Challenge er et hackaton som hvert år egenlig arrangeres på Voksenåsen Hotell, men som i år ble arrangert virtuelt. Dette er vel mitt 8. år jeg er med som deltaker, og det 10. året på rad Skill deltar. Så dette er en fast rutine februar hvert år.

I år hadde egentlig Skill planer om å stille to eller tre lag, men etter litt frem og tilbake endte vi opp med å å stille ett kjempestort lag på 10 mann. Mer om det senere 😊

Teambilde til Skill 2021-style. I matchende kule Felleskjpøet-capser som hadde sponset ACDC med litt SWAG 🙂

Først stor cred til arrangementskomiteen som faktisk klarte å stable et arrangement på bena på tross av restriksjoner. Selvfølgelig hadde det vært enda bedre å kunne sitte sammen på Voksenåsen, men det å jobbe på Discord fra hvert sitt hjemmekontor fungerte faktisk det også.

Også stor cred til Felleskjøpet som vant konkurransen til slutt.👑 Skill sitt lag kom på en finfin andreplass, og klarte dessverre ikke å forsvare seieren fra i fjor. Vi vant dog flere av del-konkurranser, blant annet “Code in the Dark” og “VippsChallenge”

For meg er det flere ting jeg synes er bra med ACDC

  • Får leke med ny teknologi helt uten begrensinger
  • Tidenes teambuilding for folka du jobber sammen med
  • Knytter nye kontakter i fagmiljøet utenfor eget selskal

I år synes jeg ACDC leverte bra på de to første punktene, vi fikk virkelig testa Power Platform- og Azure-stacken til det fulle og vi ble godt sammenristet innad på laget, men det var kanskje litt vanskelig å bli så veldig kjent med folka på de andre lagene.

Vipps Challenge

Vipps var en av samarbeidspartnerne i år, og en av delkonkurransene på ACDC var å benytte seg av Vipps sine API-er på best mulig måte. Vi fikk tilgang til både testbrukere og ekstra teknisk support hos de, og klarte til slutt å vinne den konkurransen med følgende tilbakemelding, veldig moro 🥳

Hva lagde Skill?

Jeg har en idé om at man ikke skal forberede seg sånn alt for mye før ACDC. Man må gjerne sette opp det man trenger av demomiljøer og Azure-abonnementer etc før konkurransen, men selve planen på hva man skal lage synes jeg gjerne kan komme litt underveis.

I år ble idéen vår at vi skulle lage et system som støttet ansatte på hjemmekontor og dens familie med oppgaver de støtte på der. Vi så for oss et Team som kunne være et slags “kommandosenter” der man kunne styre de forskjellige delene av løsningen.

Første ideskisse på hva vi skulle lage

En av hovedideene var en løsninge for tilordning av oppgaver til barn i hjemmet – for eksmpel “ta ut av oppvaskmaskina” og “rydd rommet” Her fikk barnet ved tilordning av oppgave pushvarsel på mobilen, og som en ekstra feature fikk vi også lest opp oppgaven på Sonos-høyttalere i huset.

Vi så for oss og etterhvert bygde følgende løsnigner – med lenke til mer tekniske beskrivelser fra ACDC-bloggen. Alle blogginnleggene som beskriver det tekniske finnes her: https://acdc.blog/category/skill/

Vi døpte løsnigen “Dynamics 365 Family Engagement”, lettere inspirert av diverse Microsoft-produkter.

Under kommer en beskrivelse av det vi lagde

Oppgaver i hjemmet

Tilordning av oppgaver i hjemmet var en av hovedidéene vi jobbet rundt. Først har vi Appen i Teams. Her er idéen at man som forelder i familien kan tilordne oppgaver til barna. Dette skjer i en Canvas Apps.

Når oppgaven blir sendt ut kommer dette som en push-varsel på barnets mobil (via standard Power Apps-pushvarsler)

I tillegg til pushvarsler til mobilen lagde vi en løsning som leste opp oppgaven på en Sonos-hyttaler ved hjelp av en “Text to Speech”-tjeneste. Dette fungerte egentlig helt fint, og slike type løsninger kan vi egentlig se nytten av.

Bilderesultater for sonos 1
Liste over oppgaver man kan gjøre
Ta bilde av utført oppgave og spør foreldre om betaling når du er ferdig

Når man var ferdig med oppgaven kunne man ta bilde av oppgaven, og forespørre betaling fra sine foreldre med Vipps.

Vipps var en av samarbeidspartnerne på ACDC i år, og vi hadde lagd en Vipps-integrasjon der man med Power Automate kalte Vipps sine API-er for å sende betaling, sjekke betalingsstatus etc. En mer detaljert forklaring på hvordan vi gjorde det (inkludert nedlasting av solution) finnes her. Det skal sies at Vipps ikke har API-er for å sende betaling person-person, kun person-bedrift.

Push-up app

Vi tenkte at det kunne være nyttig med flere mindre aktivitetsapper for å holde seg i bevegelse på hjemmekontoret.

Vi lagde en Power App som tracker pushupus. Tanken var først å bruke gyro og legge mobilen på nakken etc og bruke gyroen til å beregne antall pushups, men vi kom ikke i mål med det og valgte heller å lage en løsning der man legger mobilen på gulvet og trykker på mobilen med nesa for å øke en teller som viser antal armhevinger

Legobyggespill

Aktivitetsapp nr 2 var et lite legobyggespill der vi trente opp en AI-modell til å kjenne igjen forksjellige legofigurer

Her får man et bilde av en ferdig bygd legofigur man skal forsøke å gjenskape, og så bruker vi bildegjenkjenning for å kjenne igjen om man har bygd riktig. Skal ikke si så mye om hvor treffsikker algoritmen var, men idéen er god

Teknologier: Power Apps, AI Buidler

Dude, where’s my dog

Dude, where’s my dog er en løsning for å funne hunden din i hjemmet. Her var tanken at man ved hjelp av overvåkningskamera i huset kunne bruke bildegjenkjenning for å finne ut i hvilket rom hunden var

Dette ble eksponert gjennom en chatbot slik at man kan spørre den om hvor hunden er.

Her ble en kombinasjon av Power Virtual Agents, Azure Functions og Cognitive Services brukt.

Utsendelse av ukeplaner og undersøkelser for familien

Ved hjelp av Dynamics 365 Marketing ble det satt opp utsendelse av ukeplaner til de forskjellige familiemedlemmene

App for turforslag

“Family Hike Advisor” er en app som er bygd for å kunne gi turforslag. Opprinnelig tanke var å bruke “Nasjonal Turdatabase” som kilde, men API for denne er dessverre ikke offentlig lengre så da måtte vi mate den med testdata i stedet

Her var tanken at man får opp hvem man kjenner som er i nærheten, og har mulighet til å avtale turer med de.

API for eksponering av data eksternt

Det ble satt opp et API eksternt for å kunne tilby tredjepartsapper å koble seg på. Dette API-et eksponerte i utgangspunktet informasjon om familier og roller i en familie

API-et ble satt opp med en kombinasjon av Azure Functions, API Management og Azure Key Vault

Eksempelapplikasjon som benyttet seg av API-et

Hva bør vi gjøre annerledes neste år

  • Færre deltakere på laget. 10 personer blir for mye
  • (Mye) mer fokus på endelig leveranse og storytelling. Vi fikk aldri lagd en stor oppsummering av hva vi lagde, ble litt mer en oppramsing
  • Kanskje lage en mer spisset gjennomført løsning enn flere ikke like gjennomførte. Faller litt tilbake på at vi kanskje var et litt stort lag og hadde behov for å ikke trå hverandre i bena.

Så hva lærte vi?

  • Masse masse greier om nye duppeditter både i Azure og Power Platform
  • Funker ganske greit med virtuelt hackaton
  • Fikk jobbe sammen med folk man ikke kjente så godt fra før

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s