bekk open fagdag

76

Upload: mikaelbr

Post on 10-Feb-2017

87 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: BEKK Open Fagdag
Page 2: BEKK Open Fagdag
Page 3: BEKK Open Fagdag
Page 4: BEKK Open Fagdag

FRONTEND ANNO: 2016

Mikael Brevik BEKK Open Fagdag, 2016

EXPLORATION & ITERATION

Page 5: BEKK Open Fagdag

Språk Brukergenerert Verktøy

Page 6: BEKK Open Fagdag
Page 7: BEKK Open Fagdag

1995

Page 8: BEKK Open Fagdag

1995

Page 9: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

Page 10: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

Page 11: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

Page 12: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

ECM

ASCR

IPT

31999

Page 13: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

ECM

ASCR

IPT

31999

Steinalderen

Web 1.0 / DHTML

Page 14: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

ECM

ASCR

IPT

31999

ECM

ASCR

IPT

4

2008

Steinalderen

Web 1.0 / DHTML

Page 15: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

ECM

ASCR

IPT

31999

ECM

ASCR

IPT

4

2008

Steinalderen

Web 1.0 / DHTML

Page 16: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

ECM

ASCR

IPT

31999

ECM

ASCR

IPT

4

2008

ECM

ASCR

IPT

5

2009

Steinalderen

Web 1.0 / DHTML

Page 17: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

ECM

ASCR

IPT

31999

ECM

ASCR

IPT

4

2008

ECM

ASCR

IPT

5

2009

ECM

ASCR

IPT

2015

2015

Steinalderen

Web 1.0 / DHTML

Page 18: BEKK Open Fagdag

1995

TC39

: ECM

A-26

2

1996

ECM

ASCR

IPT

1

1997

ECM

ASCR

IPT

21998

ECM

ASCR

IPT

31999

ECM

ASCR

IPT

4

2008

ECM

ASCR

IPT

5

2009

ECM

ASCR

IPT

2015

2015

ECM

ASCR

IPT

2016

2016

Steinalderen

Web 1.0 / DHTML

Page 19: BEKK Open Fagdag

1995 19961997 1998 1999 2008 2009 2015 2016

Steinalderen

Web 1.0 / DHTML

Page 20: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX2004

SteinalderenWeb 1.0 / DHTML

Page 21: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004

SteinalderenWeb 1.0 / DHTML

Page 22: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

SteinalderenWeb 1.0 / DHTML

Page 23: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

SteinalderenWeb 1.0 / DHTML

Page 24: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

MiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0

Page 25: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8

MiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0

Page 26: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8 Nod

e.js

MiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0

Page 27: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8 Nod

e.js,

Ang

ular

Embe

r

2011

Back

bone

, Kno

ckou

t.js

2010

MiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0

Page 28: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8 Nod

e.js,

Ang

ular

Embe

r

2011

Back

bone

, Kno

ckou

t.js

2010

Industrielle revolusjonMiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0 “Web 3.0”

Page 29: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8 Nod

e.js,

Ang

ular

Embe

r

2011

Back

bone

, Kno

ckou

t.js

2010

Reac

t

2013

Industrielle revolusjonMiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0 “Web 3.0”

Page 30: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8 Nod

e.js,

Ang

ular

Embe

r

2011

Back

bone

, Kno

ckou

t.js

2010

Reac

t

2013

Embe

r 2An

gula

r 2

Industrielle revolusjonMiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0 “Web 3.0”

Page 31: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8 Nod

e.js,

Ang

ular

Embe

r

2011

Back

bone

, Kno

ckou

t.js

2010

Reac

t

2013

Embe

r 2An

gula

r 2

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0 “Web 3.0”

Page 32: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 20162004 2005 2006 20112010 2013

NPM

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0 “Web 3.0”

Page 33: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 20162004 2005 2006 20112010 2013

NPM

2012

Bowe

r, Ja

m.js

, Com

pone

nt

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0 “Web 3.0”

Page 34: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 20162004 2005 2006 20112010 2013

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

CONCAT

Web 1.0 / DHTML Web 2.0 “Web 3.0”

2012

Page 35: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004 2005 2006 20112010 2013

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

CONCAT

Web 1.0 / DHTML Web 2.0 “Web 3.0”

2012

Page 36: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo:

Mod

ules

2004 2005 2006 20112010 2013

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

CONCAT

Web 1.0 / DHTML Web 2.0 “Web 3.0”

2012

Page 37: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo:

Mod

ules

2004 2005 2006 20112010 2013

AMD

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

CONCAT

Web 1.0 / DHTML Web 2.0 “Web 3.0”

2012

Page 38: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo:

Mod

ules

2004 2005 2006 20112010 2013

AMD

, Req

uire

.js

Brow

serif

y

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

CONCAT

Web 1.0 / DHTML Web 2.0 “Web 3.0”

2012

Page 39: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo:

Mod

ules

2004 2005 2006 20112010 2013

AMD

, Req

uire

.js

Brow

serif

y

Syst

em.js

2012

Web

Pack

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

CONCAT

Web 1.0 / DHTML Web 2.0 “Web 3.0”

Page 40: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo:

Mod

ules

2004 2005 2006 20112010 2013

AMD

, Req

uire

.js

Brow

serif

y

Syst

em.js

, Gul

p.js

2012

Web

Pack

Gru

nt

InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

CONCAT

Web 1.0 / DHTML Web 2.0 “Web 3.0”

Page 41: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 20162004 2005 2006 20112010 20132012

Arbeidet på ES6 starter→InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

Web 1.0 / DHTML Web 2.0 “Web 3.0”

Page 42: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 20162004 2005 2006 20112010 20132012

Trac

eur

Arbeidet på ES6 starter→InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

Web 1.0 / DHTML Web 2.0 “Web 3.0”

Page 43: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 20162004 2005 2006 20112010 20132012

Trac

eur

2014

esne

xt, 6

to5

Arbeidet på ES6 starter→InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

Web 1.0 / DHTML Web 2.0 “Web 3.0”

Page 44: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 20162004 2005 2006 20112010 20132012

Trac

eur

2014

esne

xt, 6

to5

esne

xt+6

to5=

babe

l

Arbeidet på ES6 starter→InformasjonsalderenIndustrielle revolusjonMiddelalderenSteinalderen

Web 1.0 / DHTML Web 2.0 “Web 3.0”

Page 45: BEKK Open Fagdag
Page 46: BEKK Open Fagdag
Page 47: BEKK Open Fagdag

1995 1996 1999 2008 2009 2015 2016AJ

AX, D

ojo

Tool

kit

2004M

ooTo

ols,

Prot

otyp

e.js

2005

jQue

ry

2006

V8 Nod

e.js,

Ang

ular

Embe

r

2011

Back

bone

, Kno

ckou

t.js

2010

Reac

t

2013

Embe

r 2An

gula

r 2

Industrielle revolusjonMiddelalderenSteinalderenWeb 1.0 / DHTML Web 2.0 “Web 3.0”

Informasjonsalderen

Page 48: BEKK Open Fagdag

Page 50: BEKK Open Fagdag
Page 51: BEKK Open Fagdag

En nøktern og konservativ tilnærmingsmåte

Hvordan ser et JavaScript-prosjekt ut i 2016?

Page 52: BEKK Open Fagdag

0. Ikke alle prosjekter trenger stor klientkode

Page 53: BEKK Open Fagdag

1. Unngå boilerplates / starter packs

Page 54: BEKK Open Fagdag

2. Unngå å tro at man trenger et rammeverk

Page 55: BEKK Open Fagdag

3. Velg et fornuftig abstraksjonsnivå

Page 56: BEKK Open Fagdag

4. Eksterne avhengigheter fjerner ikke ansvar

Page 57: BEKK Open Fagdag

Nytt er ikke et argument for bruk. La teknologien stabiliseres

5. Fin demo betyr ikke alltid fin programvare

Page 58: BEKK Open Fagdag

La behov diktere valg, ikke motsatt.

6. Ikke tenk “Hvorfor ikke” når man kan tenke “Hvorfor”

Page 59: BEKK Open Fagdag

7. Lær deg plattformen og språket

Page 60: BEKK Open Fagdag

Photo by cjuneau (https://www.flickr.com/people/15558406@N03) from Ottawa, CANADA

Page 61: BEKK Open Fagdag
Page 62: BEKK Open Fagdag

1. Bruk Node.js og NPM*Hvorfor

Page 63: BEKK Open Fagdag

Hvorfor?

2. Bruk moduler*

Page 64: BEKK Open Fagdag

Hvorfor?

3. Ta i bruk transpilering**

Page 65: BEKK Open Fagdag

Hvorfor?

4. Minifiser i utvikling. Bruk source maps*

Page 66: BEKK Open Fagdag

Hvorfor?

5. Importer avhengigheter direkte

Page 67: BEKK Open Fagdag

Hvorfor?

6. Test kode utenfor nettleser*

Page 68: BEKK Open Fagdag

7. Bruk sunn fornuft og god dømmekraftLa behov diktere valg, ikke motsatt.

Page 69: BEKK Open Fagdag
Page 70: BEKK Open Fagdag

End

ring

srat

e

Språkutvikling→

Page 71: BEKK Open Fagdag

End

ring

srat

e

Byggesystemer→

Page 72: BEKK Open Fagdag

End

ring

srat

e Rammeverk/biblioteker→

Page 73: BEKK Open Fagdag

End

ring

srat

e

?

Page 74: BEKK Open Fagdag

For kommentarer eller spørsmål.

TWITTER: @MIKAELBREVIK

Gi tilbakemelding på: http://program.bekk.no

Page 75: BEKK Open Fagdag
Page 76: BEKK Open Fagdag