>

Reisebrev fra Generate-konferansen i the big 🍏

Teddy Falsen Hiis 
2. mai 2018

God morgen fra New York og Generate konferansen. Ca 500 deltagere med en 50/50 split mellom utviklere og designere. Her er det altså smekkfull av spente deltagere langveisfra -- i løpet av frokosten har jeg allerede rukket å bli kjent med fra en gjeng fra Reykjavik, et tvillingpar fra Canada og en 70-åring fra Irland.

Første keynote står Donna Lichaw for, og hun preker "story first" for vellykket produktutvikling. Donna forklarer hvordan en storyline er akkurat like viktig for filmproduksjon som det er for digitale produkter. 

donna_day1 

Dette gjør hun gjennom å først gå gjennom en typisk storyline for så å vise til hvordan produktlansering av den første iPhonen følger akkurat samme mønster. Å ja, også fikk vi to hjemmelekser; se Breaking Bad og Back to the Future (for de som ikke har gjort det allerede altså).

Do NOT multitask!

...var dagens andre preke, og det er det Jason Lengstorf (IBM) som står for når han snakker om ‘perfomance workflow’, effektivitet i jobben altså. Mange, lange timer gjør at engasjement og interesse for faget svekkes. Å jobbe overtid gjør at folk faktisk slutter. Kreativitet svekkes. Vi mister 20% av tiden vår hvis vi multitasker og det å sove mindre enn 7 timer er faktisk verre enn å være for full for å kjøre hvis man skal gjøre kognitive tester. Jason var en ‘workaholic’, det gikk så langt  at han faktisk mistet skjegget(!), men så tok han tak i situasjonen og endte opp med å få dobbelt så mye gjort på halvparten så lang tid.

dag1_jason

Så, hva gjorde han da? Jason oppsummerer sine endringer i fem strategier som han følger slavisk:

  1. Track your time - på denne måten oppfordres vi til å bruke vår tid mer fornuftig.
  2. Time-boxing tasks - du er jo aldri mer effektiv enn når du må nå en deadline men kun har 13% batteri igjen.
  3. Front-loading important work - motivasjon og selvkontroll er en begrenset resurs. Pass derfor på å ikke kaste bort dine mest effektive timer.
  4. Prioritise aggressively - hvis alt er viktig blir ingenting det. Faktisk, ordet ‘prioritet’ burde jo egentlig ikke komme i flertall?!
  5. Do not multitask! - Aldri. Bare stopp. NÅ!

Et besøk i animasjonslandskapet

Det er Val Head fra Adobe som fortsetter, og tar oss med på en reise der vi besøkte de tre største øyene i ‘animasjonslandskapet': CSS, svg og JavaScript.

IMG_5788

Hun begynner med å besøke CSS island og påpeker at CSS er bra på state transitions, loading eller looping, men at det jo her er komplisert å håndtere dersom man ønsker å separere animasjoner på properties. Hun påpeker at CSS og JS jo går hånd i hånd, eksempelvis ved å bruke JS for logikk og kjøre CSS transitions på toppen av det. I overgangen fra en øy til den neste, påpeker hun at dersom man skal kjede flere enn tre animasjoner i en sekvens, dersom animasjonen skal endres dynamisk ‘at runtime’, eller hvis du må animere properties separat - da burde du se på JS i stede. Med det tar hun oss videre til JS island. Her sammenligner hun tre velbrukte animasjonsbiblioteker.

IMG_7098 2
IMG_9560

Hun illustrerer hvor lik syntaksen er men viser også til ulikheter i elementer som filstørrelse, browser support, documentation, lisenser mm.  Avslutningsvis besøker vi svg island. Svg er jo egentlig bare matte, noe det ser ut til at Val liker da det gjør animasjonene så pass lightweight. Hun påpeker at svg'er er bra for illustrasjoner, infographics, icons og annet dataviz.

Whats new in JavaScript

Som siste taler før lunsj har vi en favoritt i reprise (etter min mening hvertfall) i Wes Bos som var kursholder på gårsdagens workshop i ReactJS. I dag snakker han under det noe mer generelle temaet Whats new in JavaScript. Og forelesningen ble jo også derfor ganske generell på APIer som enten er nye eller kommende i JS.  Her snakker Wes om alt fra promises og observers som spinner videre på tanken omkring element queries i stede for media queries, Payment Request APIs og utvikling innen APIer for video og audiobruk, som getusermedia() samt playsinline()

IMG_8471
eksempel på promises in JavaScript av Wes Bos

Lunsj! Solen skinner og porsjonene er store 🇺🇸

Som første taler etter lunsj er Abby Covert, informasjonsarkitekt hos Etsy, med den noe kryptiske tittelen ‘How to make sense of any mess’. Forelesningen hennes handler om å finne ro i et hav av post-it lapper. Informasjon er noe vi ikke kan lage. Vi kan bare lage innhold som vi så håper at gir mottakeren den informasjonen de skal få med seg. Tre ‘lessons learned” når man skal håndtere informasjonsarkitektur er: 

Screen Shot 2018-05-01 at 15.52.22
  1. Språket påvirker - man må ta hensyn av hvordan team snakker sammen på tvers av avdelinger og kulturer. Abby nevner et ‘kontrollert vokabular’-dokument som en potensiell styring.
  2. Det finnes ikke noe “riktig måte” - konteksten bestemmer. Eksempelvis er avokado faktisk en frukt, men den kategoriseres som grønnsak på Wallmart sin nettside fordi det er dette som er logisk for flertallet av brukerne.
  3. Vi trenger bilder - å tegne det vi snakker om i løpet av et møte sikrer at vi snakker om samme ting. 
Screen Shot 2018-05-01 at 15.57.42

Hva hadde The Notorious B.I.G. jobbet med dersom han var utvikler? 

Vi har beveget oss inn i dag 2/2 her på Generate med noen tørre vitser som passer publikum; Hva ville han jobbet med, dersom LL Cool J var utvikler? 😂

Screen Shot 2018-05-01 at 16.17.47

Henri Helvetica snakker her om utfordringer omkring det faktum at mobilbruk tar over desktop, at veksten er enorm, men at nettverk utfordringer står i kø. For å hjelpe oss webutviklere til å optimalisere brukeropplevelse for mobilt bruk presenterer han tre Web performance API’er:

  • Paint Timing API, som omhandler et ‘First paint’ (hvor lang tid tar det at noe i det hele tatt vises på skjermen) og et ‘First contentful paint’ (utvidet versjon av first paint).
  • Intersection Observer API, for å kutte innlasting av unødvendig data.
  • Network Information API, som eksporterer fire elementer man så kan bruke for å tilpasse det  innholdet som leveres til brukeren:

IMG_2024

  1. downlink: båndbredde som er tilgjengelig for brukeren, I det området brukeren befinner seg i .
  2. effectiveType: spytter ut fire potensielle views, sow-2g, 2g, 3g eller 4g. Hvis du her for eksempel får ut slow-2g er det kanskje en ide å kun vise strippet tekst på en side.
  3. rtt: lignende en first paint
  4. save-data: en instilling I Chrome som ‘broadcaster’ at du forsøker å minske databruk.

Og som en liten ekstra tipser han om at det er verdt å ta en titt på, Server Timing API, Long Task API og Battery Status API. Dette var en konkret og lærerik forelesning. Jeg sitter igjen med tanker omkring hvordan vi i Bouvet kan bruke dette for å forbedre opplevelsen til sluttbruker.

Design systemer 'all around'

design_systems

Den siste forelesningen jeg tenkte trekke frem handler om ‘hypen’ design systemer. Det er Daniel Schutzsmith, som snakker om hans erfaringer omkring design systemer i Amnesty. De bruker Wordpress og Daniel har utviklet CMS’et med design patterns, så alle redaktører ikke har noe tilgjengelige muligheter til å egentlig bevege seg utenfor rammene. Brukerne kan fokuser på innholdet, og design systemet er da en integrert del av cms systemet de bruker hver dag. Fint og lurt hvis man bruker et CMS som tillater dette og, kanskje viktigst, bare dersom man kan maintaine det på en stabil måte i framtiden. 

---

Takk for meg, Generate! 👩‍💻

Temaer