Nils Larsgård

Nils er genuint interessert i teknologi og liker alt som kan programmeres, automatiseres og optimaliseres. Han lærer fort og er opptatt av at programvareutvikling er et håndverk man skal være stolt av. Han er glad i utfordringer og liker å samarbeide for å finne de beste løsningene.

Favoritter for tiden: Elm, Go og Kotlin
Bruker på jobben: Java, Spring, Kotlin og Elm
Vil lære mer: Kubernetes, Kotlin og Elm

Nils' anbefalinger

Concurrency is not parallelism

Concurrency og parallelisme er to begreper som blandes sammen. Rob Pike, en av skaperene av Go, forklarer forskjellen og hvordan dette concurrency kan håndteres i Go. Det foretrukne patternet i Go er ‘Communicating Sequential Processes’ (CSP) som også blir brukt av andre språk. CSP implementasjonen i Go er brukt som grunnlag for implementasjon i flere andre språk som Clojure og Kotlin. Til video/slides

Teach Yourself Programming in Ten Years

Kan man plukke opp en programmeringsbok og lære programmering på 24 timer eller 21 dager? Nei. Peter Norvig skriver litt om hva som skal til for å bli en dyktig programmerer og kommer med tips til veien man kan gå for å bli en god programmerer. Les artikkelen

Snakker gjerne om

Stisykling

Jeg er overbevist at det ikke finnes noen bedre måte å slappe av på enn å sykle i marka, opp og ned bratte stier. Lykken er en fulldempet sykkel på blåstier og noen timer til overs for å forsere sleipe røtter, glatte steiner og den biten av stien du ikke klarte på forrige tur.

Sideprosjekter

vintilbud.no

Vintilbud er en app som overvåker alle varene på vinmonopolet og finner varer som blir satt ned i pris. Tilbudene blir presentert i en web-app der man kan filtrere på type og sortere på ulike parametere. Frontend er skrevet i Elm og backend er skrevet i go. Appen kjører på google app-engine. Tilbud på varer fra vinmonopolet

pushify.xyz

Pushify lar deg sende og motta push-meldinger uten å måtte installere en app, en såkalt progressive web app(pwa). Det eneste man trenger er å gå til nettsiden og begynne å bruke appen. Service workers sørger for at du får push-meldinger selv om nettleseren er lukket. Jeg lagde appen for å kunne motta push-meldinger fra hjemme-automasjonssystemet mitt og for å lære om Elm og pwa. Frontend er skrevet i Elm og backend er skrevet i go. Appen kjører på google app-engine. Pushify

Analyse av værdata

Et system for å samle inn og organisere data om vær og bruke dataene for å finne korrelasjoner med andre tidsserier. Skrevet for det meste i go og deployet på google cloud platformen med kubernetes.

Ship (tidligere DHL Tracker)

En enkel app for android jeg lagde etter å ha irritert meg over at DHL ikke har laget noe sånt selv. Live push-meldinger til telefonen din for hver status-oppdatering for pakken din som er underveis. Backend er skrevet i go og appen i kotlin. Støtter i dag pakker fra posten, postnord og flere dhl-distributører. Prøv app'en

Nils' bloggposter

Using your tensorflow model with go

En forklaring på hva som skal til for å bruke en ferdig-trent tensorflow-model fra go med kode for å trene en enkel modell i python og kode for å bruke modellen fra go. Les posten

Nils' foredrag

Lyntale: Tracking location of your neighbours wearable

På javazone 2016 viste jeg frem hvor lett det er å overvåke alle bluetooth-enheter i nærheten med en egenlaget Android app og en backend skrevet i Go. Det blir ekstra skummelt når jeg sender dataene til google-appengine og lar alle med appen installert abonnere på puls-klokken til han som sitter ved siden av deg. Bluetooth var ikke bygd med tanke på personvern, det du har rundt håndleddet er en digital sauebjelle! Lyntalen ble senere holdt som foredrag på ISF sin høstkonferanse 2017. Se video

Open source

  • Utviklet grib. Et bibliotek for å parse værdata-filer i det binære formatet ‘grib’. Biblioteket er skrevet i Go og er en videreutvikling av et forlatt bibliotek. Utviklet funksjoner som gjør det mulig å streame grib-filer samtidig som man filtrerer på innholdet.
  • Utviklet Silhouette Words. En webapp laget for lærere som driver med alfabetisering.
  • Utviklet wsdl2java. Et plugin for gradle for å generere java-kode fra webservice-kontrakter.
  • Har bidratt til Go, Unleash-go-client og Influx/Telegraf.

Prosjekter

Finn 2018

System for å håndtere livssyklusen til anbefalte annonser(Blink). Prosessere meldinger for endring på annonser og håndtere aktivering/deaktivering av Blink. Integrere anbefalte annonser på kart.finn.no. Jobbe med tilrettelegging av annonse-bud med prebid.js.

Tieto 2017-2018

Modernisere utviklingsplatform og heve kodekvalitet. Modernisering av legacy kode. Videreutvikle kjernesystemer for bankvirksomhet.

Western Geco 2017

Utvikling av nytt produkt for landseismikk. Administrere sensorer og data-innhøsting fra sensorer. Scripting av installasjon på redhat.

Thomson Reuters 2016-2017

Utvikling av løsning for intern distribusjon av fremskrevne tidsserier fra forskjellige markeder ved hjelp av bl.a. Spark, Kafka, Hadoop og HBase.

Norwegian Air Shuttle 2012, 2016

Utvikling og vedlikehold av backend for booking-systemet. Videreutvikling av reiseassistent for Android.

Se flere prosjekter i Nils' CV

Nils' referanser

Sigve Litsheim

Lead Architect, Thomson Reuters

Nils er en svært allsidig og dyktig utvikler. Han setter seg raskt inn i nye teknologier og er flink til å dele kunnskap og få med seg de andre på teamet. I Thomson Reuters jobbet han med utvikling av nytt system for å distribuere tidsserier og prognosedata i sanntid. Han videreutviklet og forbedret distribuerte beregninger med Spark/Hadoop og streaming av store datamengder med bruk av Kafka og HBase. Jeg kan varmt anbefale Nils og er sikker på at han vil være et solid tilskudd til de prosjektene han deltar på i fremtiden.


Øystein Slørdahl Hjertvik

Head, Solution and Architecture at Payment & Cash Management, Tieto

Jeg hadde gleden av få Nils inn hos oss for å jobbe med den teknologiske plattformen hos oss. Nils viste meget høy teknisk og faglig kompetanse, og var med på å gi programvaren vår et signifikant løft. Nils evnet å sette seg inn i en stor og kompleks kodebase, og raskt finne ut hvor og hvordan de tekniske og funksjonelle kravene skulle løses. Nils er konstruktiv og løsningsorientert, og jobbet meget godt sammen med de andre i teamet rund seg. Han er omgjengelig hyggelig som person, og en person jeg gjerne anbefaler til andre.


Nils Larsgård

Programmerer
+47 9053 6771
nils@kodemaker.no