28
Enkelhet som medel, möjlighet som mål

Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Enkelhet som medel, möjlighet som mål

Page 2: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Lätt som en plätt

” Gör allt så enkelt som möjligt, men inte enklare.” – Albert Einstein

Page 3: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Hej jag heter Niklas

Jag jobbar med "IT".

Page 4: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Just Do

".. the simplest thing that could possibly work."

Page 5: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Resten är upp till oss

Vid givna tillfällen. På givna platser.

Vad gör det om hundra år?

Page 6: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Vad är det egentligen vi gör?

"Det borde väl inte vara så svårt?"

"Varför tar det så'n tid?"

"Hur många möjliga sätt kan det finnas egentligen?"

Page 7: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Person

nameage

Page 8: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Idag, igår, imorrn

nameage ← FAIL

Page 9: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Förenkling

Födelsedatum: år 1978, månad 2, dag 12 — enligt gregorianska kalenderräkningen.

Räkna ut nuvarande ålder.

Page 10: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Precision

birthDate (”en tidpunkt som representerar en persons födelse")

"1978-02-12" (W3C.Date)

● En sträng av bytes (01001.. ASCII.. UTF-8..)● Som tolkas

Page 11: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Kontext

Kontext är gud.

Finns överallt.

Går inte att undkomma.

Page 12: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Ett steg längre

Tänk långsiktigt för att undvika upprepat arbete.

age += 1

Page 13: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Gå för långt?

Löskopplad, sömlöst integrerbar, pluggbar flerlagersarkitektur.

I praktiken:

● Monolitiska system● Djupa arkitekturer● Enkelriktade designbeslut● Feodala ramverk

Page 14: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Dold komplexitet

All problems can be solved by adding one more layer of indirection.

Except for the problem of indirection.

Page 15: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Det värsta..

.. är inte 1000 rader procedurell kod fullproppad med muterbara variabler.

Page 16: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Diffust

Det är när en tvetydighet uppträder i — och delas mellan — system.

Page 17: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Tolkningar smittar

Exempel:

"Kurskoden är egentligen ett databas-id för enskilda tilfällen."

Page 18: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Tydliggör

Sträva efter platta gränssnitt, där tolkningar (detaljer) tydligt framträder.

● Platt: på samma abstraktionsnivå● Inte för "djupt", inte för "brett"● Täta skott

Page 19: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Enkla beslut

Enkelhet kräver beslut.

● "vi ska ta emot X"● "kunna styra på Y"● "leverera Z"

Page 20: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Goda råd är dyra

Beslut kostar. Låt andra välja/välja bort.

Att värdera råd kräver kompetens.

Page 21: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Konsensus

IETF, W3C, "de facto"..

● datumformat● referenser (webbadresser)● listor (feeds)

Page 22: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Stå på giganters axlar

Vilkas? Flera? Hur länge?

POSIX, TCP, HTTP

J(2)EE? Spring? "Nothing"?

SOAP.. REST

Page 23: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Byta spår

Page 24: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Hushåll beroenden

Blanda inte ihop implementationen med den behandlade informationen.

Page 25: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

UNIX-filosofin

● Gör en sak och gör den bra

● Skriv program som fungerar ihop

● Hantera textströmmar, eftersom det utgör ett

universiellt gränssnitt

Page 26: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Tänk på att..

Enkelt: lätt att förstå

Kräver: sammanhang

Som är: komplexa

Page 27: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Möjligheter

Tydliggör sammanhanget

Ta bort onödiga beslut

Page 28: Enkelhet som medel möjlighet som mål - Niklas Lindstrom

Tack!

Niklas Lindström, Valtech

Bilderna i denna presentation (CC):

"Cave Man Blog 2"http://www.flickr.com/photos/ittybittiesforyou/3413099218/

"P6086146"http://www.flickr.com/photos/ingythewingy/2584243648/

"wired things get strange"http://www.flickr.com/photos/jorgempf/68987189/

"Street wirescape"http://www.flickr.com/photos/ivva/2266608131/in/set-72157600234918432/