Velkommen!

Torsdag 10. august er det klart for sommerutgaven av Iteratekonferansen 2017 på Oscarsborg.

Det blir mingling og kaffe fra 8:30.

Hovedsalen
Starter
Sal 2

08:50 - 09:00

Velkommen – info om dagen

09:00 - 09:30

Hva faen er det vi driver med?

Rune deler tanker om hva vi prøver å få til som selskap. Hvilke grep vi har tatt og kommer til å ta. Hvorfor eierne våre gjør som de gjør og hva vi tror skal til for å lykkes.

09:30 - 09:50

Logging og metrikker

Etter hvert som systemer blir mer og mer fragmentert (les microservices) øker behovet betraktelig for sentralisert logging og metrikker på tvers av applikasjoner. Vi vil i denne talken se på konsepter for både logging og metrikker, og demonstrere hvordan dette brukes i praksis. Tema: Logstash, Elasticsearch, Kibana, InfluxDB, Grafana

Gamification 101

Andreas har jobbet i spillselskap og tror derfor han kan noe om gamification.

09:50 - 10:00

Prometheus - Monitorering

Vi ser på hvordan vi kan gjøre monitorering med Prometheus.
- Hvorfor? - Hvordan?

Go With The TensorFlow

TensorFlow er et open source bibliotek for maskinlæring som utvikles og brukes av Google. Denne lyntalen er en intro til hva TensorFlow er og hva det kan brukes til.

10:00 - 10:15

Pause

10:15 - 10:25

Er framtiden serverløs?

Serverless-arkitekturen tas i økende grad i bruk, men hva betyr det egentlig at en applikasjon er serverless? I denne lyntalen skal jeg prøve å gi svar på dette ved å blant annet vise hvordan en kan bruke AWS Lambda for å skrive applikasjoner som er serverless. Jeg vil også gi noen fordeler og ulemper med en slik arkitektur.

Ett design, tre prototypeverktøy.

Ved å konstruere en og samme app-interaksjon i tre forskjellige prototypeverktøy ønsker jeg å svare på (nesten) alle prosjekters mysterium: “I hvilket verktøy skal vi lage prototypen i?”.

10:30 - 10:40

GraphQL × Firebase = Graphcool

Graphcool er en BaaS (backend as a service) som kombinerer enkelheten av å sette opp en Firebase-backend/database med fleksibiliteten man får fra GraphQL.
I denne lyntalen skal vi se hvor enkelt man kan sette opp en Graphcool-tjeneste og prøve ut noen av de kule tingene man kan gjøre med Graphcool.

NPS - Hvordan måle kundelojalitet i ett tall

Lojale kunder er lettere å beholde, kjøper mer og genererer ofte nye kunder gjennom anbefaling. For å måle kundelojalitet, altså få et tall på hvor fornøyde nettopp deres kunder er, brukes ofte metoden Net Promoter Score. NPS er også en godt verktøy for kunne prioritere arbeidet med bugs og features i et produktutviklingsløp.

10:45 - 10:55

Ryddig React og Redux

Tips og triks vi har funnet som gir ryddig kode når man jobber med React og Redux på Get (men vil være nyttig i alle prosjekter).
Hovedtrekket for disse tipsene er at de øker cohesion og reduserer coupling. Det vil blir forklart hvordan dette gjør det lettere å forstå koden, lettere å gjøre endringer og lettere å unngå bugs.

Thematic analysis - the quick and dirty version

How to analyse and document user tests and user interviews in a reliable way that gets you results fast. Most of us would be familiar with the feeling that the words "let's do a new round of users testing" gives - another month of setting up interviews, getting results, documenting them, analysing and figuring out what to do. This method will allow you to gather results from tests/interviews, document them and analyse them in one swift operation so that you can focus on the stuff that matters: what to do with the information!

10:55 - 11:10

Pause

11:10 - 11:20

Vim for dummies

Som utvikler med intim kjennskap til regex, sed og grep har jeg lenge lurt på hvordan andre mennesker klarer å leve med Notepad, Word o.l.
For noen år siden lærte jeg meg litt å bruke Vim og oppdagde noen herlige konsepter som jeg gjerne deler videre. Dette blir ingen komplett guide, men noen utvalgte hødepunkter. For alle.

Sherlock Holmes - en 1800-tallets iterati?

Hver gang det havner et problem i fanget på Sherlock Holmes i Baker Street 221B prøver han å samle inn så mye informasjon som mulig. Han lager seg en arbeidshypotese som han jobber ut ifra, han gjetter aldri og tar ingen standpunkt hvis det ikke er nok fakta tilgjengelig.
Hva kan en gjeng ganske ordinære konsulenter fra Grensen 9B lære av verdens mest kjente consulting detective?

11:24 - 11:34

bash tips og triks fra spk

Noen bash script tips og tricks jeg har plukket opp hos spk som kanskje kan være nyttige for andre.

ROM Hacking

"ROM hacking is the process of modifying a ROM image of a video game to alter the game's graphics, dialogue, levels, gameplay, and/or other elements. This is usually done by technically inclined video game fans to breathe new life into a cherished old game, as a creative outlet, or to make essentially new unofficial games using the old game's engine." - Wikipædia
Jeg kan vise litt hvordan man gjør basic greier.

11:37 - 11:47

Infrastructure as Code - En grunn til å smile

Infrastructure as code (IaC) som begrep har gjort seg bemerket de siste årene. Jenkins og Terraform er to gode eksempler på hvordan man kan ta i bruk IaC. Felles for disse to verktøyene er at de tar i bruk deklarativ programmering. Hvorfor er dette paradigmet nyttig i DevOps/IaC-sammenheng, og hvordan kan man bruke disse til å oppnå et godt IaC-grunnlag.

SabotageSB

SabotageSB - Læring fra et gründercase gjort i praksis.

11:50 - 12:00

Reduser Java boilerplate med Kotlin

Kotlin byr på nye muligheter for mer konsis kode for deg som allerede jobber i et Java basert miljø. En kort introduksjon til hvordan du trinnvis kan ta i bruk Kotlin i en eksisterende Java applikasjon.

Persuation

12:00 - 13:00

Pause

13:00 - 13:20

Maskinlære

Maskinlære er i vinden og fokuset ligger i nevrale nettverk med deep learning i fronten. Dette er et stort og hypet tema og man hører om nye tjenester som bruker Deep Learning™, CNN, RNN, LSTM og GAN, men hva betyr disse begrepene og hvordan anvendes de?
Dette foredraget er fokusert mer på en demystifying av disse uttrykket og forklare, på et overordnet nivå, hva de forskjellige arkitekturene er og hvilke områder de brukes til.

Functional programming for n00bs

Av en eller grunn har ikke hele jordens befolkning omfavnet funksjonell programmering enda. Det har vært litt hype rundt det de siste årene, men bak hypen ligger en solid verktøykasse som fører til færre bugs, samt lettlest, simpel, modulvennlig og testbar kode.
Veien til opplysning kan se lang og skummel ut. Du tenker kanskje: må jeg lære meg et helt nytt språk nå? Må jeg forkaste alt jeg allerede kan om programmering? Kommer jeg til å motta dømmende blikk fra utviklere i 40-åra som har programmert i Clojure og Haskell siden de ble født? Svarene er "nei", "nei" og "kanskje". Den kjedelige sannheten er at det er lett å starte med den kodebasen du allerede sitter med, og gjøre koden mer funksjonell over tid. Fokuset i denne talken blir på tankesett og kodemønstre du kan bruke neste dag på jobb. Det blir litt repetisjon for de erfarne, og en rolig intro for nybegynnere.

13:20 - 13:40

Deep learning er ikke framtiden, det er nå

Maskinlæring med nevrale nettverk har i senere tid fått mye oppmerksomhet, men allikevel oppfattes det litt som science fiction for mange. Sannheten er at det brukes mer enn man skulle tro, og med de verktøyene som finnes der ute i dag kan man raskt komme i gang med nevrale nettverk (uten å ha en spesialisering innen kunstig intelligens). Vi skal ta en titt på noen vanlige bruksområder, og se hvordan du kan komme i gang med deep learning!

ASTs - ta kontroll over koden din

Ikke mange vet hvordan en kompliator virker, og enda færre har skrevet en selv. Men ville det ikke vært interessant å vite litt mer om hva som skjer under panseret?
Jeg vil i denne talken gi en introduksjon i de grunnleggende stegene koden din går igjennom når den kompileres. Jeg vil gi en introduksjon til datatrukturen Abstract Syntax Trees, og vise hvordan du enkelt kan benytte deg av denne datastrukturen til å skrive egne linte-regler med ESLint, egne kodetransformasjoner med Babel, og egne codemods med jscodeshift.

13:40 - 14:00

En innføring i supervised machine learning

En innføring i neurale nett og supervised machine learning. Hvordan fungerer det og hva kan det brukes til?

14:00 - 14:15

Pause

14:15 - 14:45

ELM i praksis

Etter ca et år med erfaring med ELM i Woolit er det på tide å se seg tilbake og tenke over hva vi har lært.
Hva har vi lært om elm av å bruke ELM i Woolit? Hvordan organisere et elm-prosjekt på en god måte? Hvordan har det vært å bruke elm? Det har vært en humpete reise der vi har prøvd mye forskjellig, og fått mye bruk for at elm er enkel å refaktorere. Jeg skal prøve å ta dere med på reisen, fortelle om hva vi har lært, og hvor vi har endt opp. Grunnleggende oversikt over ELM er en fordel, men ikke påkrevet. Jeg forklarer underveis.

14:45 - 15:15

Grafikk og datamaskiner - how does it work

Vi bruker mye tid på å gjøre applikasjonene våre pene og brukervennlige, men hvordan fungerer alt dette egentlig? Vi ser på hele reisen fra binære verdier til fullstendige grafiske objekter vi kan bruke.
Foredraget kommer til å gå gjennom blant annet prinsippene i grafikk og hvordan objekter er bygget opp, hvordan GPUer håndterer informasjonen, og hvordan vi kan implementere algoritmene.

15:15 - 15:30

Pause

15:30 - 15:42

Er lodash fortsatt nødvendig etter ES2015

JavaScript standarden har fått årlige oppdateringer fra EcmaScript2015 og framover og de nye featurene har fått bred støtte i moderne browsere. Trenger vi å bruke et så omfattende og stort bibliotek som lodash/underscore i moderne javascript? Flere lodash funksjoner kan erstattes direkte, mange med en enkel one-liner, men noen blir kanskje for kompliserte?

How to raise money for your startup

If. You decide that bringing in more mo,-ney to further fuel your startup, how to do it and what to look out for.
(En kortfattet oppsummering av læringen så langt på reisen med å finne ut om og hvordan Iterate skal reise penger til våre ventures)

15:45 - 16:00

Testing med headless Chrome

Google har nylig sluppet headless-modus for Chrome, dette betyr i praksis at du kan teste nettsider raskt og effektivt i Chrome - uten å fikle med et tregt grafisk grensesnitt. Vi ser på hvordan du skriver tester og jobber med APIet til Chrome, for en smidigere arbeidsflyt.

Becoming a Company Builder

En subjektiv refleksjon over reisen Iterate er på og noen tanker om hvordan vi skal lykkes.

16:00 - 16:30

Radikal oppriktighet

Noen ganger tenkt på hvorfor drittsekker ofte blir sjef?
Heldigvis gjelder det ikke overalt. Tross store forskjeller i mennesker og kultur, er det noen likhetstrekk mellom megasuksesser som Pixar, Google og Apple. Likheten dreier seg rundt hvordan lederne får det beste ut av alle som jobber der, ved å bytte ut hierarki, byråkrati og prosess med noe annet. Pixar har blitt kjent for sitt Braintrust, et organ der ansatte presenterer et stykke arbeid for lederne og andre ringrever. Men braintrust er ikke et beslutningsorgan - kun et forum for tilbakemeldinger. Forumet fungerer når tilbakemeldingene og omgangsformen er effektive. Her ligger hemmeligheten bak Pixar, og andre selskaper som er forbilder for det vi prøver å få til i Iterate. Diskusjon og caser rundt hva slags omgangsform som er mest effektiv i skapende organisasjoner (og hvorfor de hjelper oss holde drittsekkene unna :)