62
FRONT END DEVELOPMENT - FRONT END DEVELOPMENT - BEYOND JAVASCRIPT! BEYOND JAVASCRIPT! ...though I'm not sure about exclamation points in the title...

Front End Development - Beyond Javascript (Robin Cannon)

Embed Size (px)

Citation preview

Page 1: Front End Development - Beyond Javascript (Robin Cannon)

FRONT END DEVELOPMENT -FRONT END DEVELOPMENT -BEYOND JAVASCRIPT!BEYOND JAVASCRIPT!

...though I'm not sure about exclamation points in the title...

Page 2: Front End Development - Beyond Javascript (Robin Cannon)

“ Front end developersshall not live on

Javascript alone.Source: Jesus (...paraphrased)

Page 3: Front End Development - Beyond Javascript (Robin Cannon)

ROBIN CANNONROBIN CANNON(Self) Exiled Brit in Austin, TX

Front End Dev Manager, IBM

@shinytoyrobots

Page 4: Front End Development - Beyond Javascript (Robin Cannon)

HTMLHTMLCSSCSSJAVASCRIPTJAVASCRIPT

LONELY STARTUP SEEKS VIVACIOUS FRONT END DEVELOPERLONELY STARTUP SEEKS VIVACIOUS FRONT END DEVELOPER

Must enjoy fussball, have GSOH, own laptop and...

Page 5: Front End Development - Beyond Javascript (Robin Cannon)

JAVASCRIPTJAVASCRIPTHONEST STARTUP SEEKS NEEDY FRONT END DEVELOPERHONEST STARTUP SEEKS NEEDY FRONT END DEVELOPER

Must enjoy long hours, have stock option optimism, own laptop and...

AND MAYBE HTML AND CSS...KINDA...AND MAYBE HTML AND CSS...KINDA...

ANGULAR, EMBER, OR BACKBONEANGULAR, EMBER, OR BACKBONE

Page 6: Front End Development - Beyond Javascript (Robin Cannon)

BUTBUTWHY?WHY?

Page 7: Front End Development - Beyond Javascript (Robin Cannon)

console.log('because javascript is awesome');

Display content

Interact with content

Enhance your HTML

Run a server

Give a presentation

Play Command & Conquer

Fight crime

Page 8: Front End Development - Beyond Javascript (Robin Cannon)
Page 9: Front End Development - Beyond Javascript (Robin Cannon)

GENERICGENERIC

http://www.playbuzz.com/natthomasbosley10/which-badass-orphan-black-clone-are-you

Page 10: Front End Development - Beyond Javascript (Robin Cannon)

https://www.haikudeck.com/the-tube-uncategorized-presentation-GmUyZRCKJa

EXCESSIVEEXCESSIVE

Page 11: Front End Development - Beyond Javascript (Robin Cannon)

http://www.huffingtonpost.com/2014/04/01/kitt-knight-rider_n_5069998.html

DATEDDATED

Page 12: Front End Development - Beyond Javascript (Robin Cannon)

GOODGOODISIS

EASYEASY

Page 13: Front End Development - Beyond Javascript (Robin Cannon)

GREAT ISGREAT ISDIFFICULTDIFFICULT

Page 14: Front End Development - Beyond Javascript (Robin Cannon)

I "DO" MY BANKING WITH CHASEI "DO" MY BANKING WITH CHASE

I "PLAY" ON BETTERMENTI "PLAY" ON BETTERMENT

http://www.consumeraffairs.com/finance/chase-online-banking.html | https://www.betterment.com/retirement/

Page 15: Front End Development - Beyond Javascript (Robin Cannon)

FRAMEWORKS ARE TOOLSFRAMEWORKS ARE TOOLS(...NOT SKILLS)(...NOT SKILLS)

BUT THEY CAN MAKE US LAZYBUT THEY CAN MAKE US LAZYTHEY'RE SUPPOSED TO MAKE LIFE EASYTHEY'RE SUPPOSED TO MAKE LIFE EASY

Page 16: Front End Development - Beyond Javascript (Robin Cannon)

FRONT END == EXPERIENCES FOR PEOPLEFRONT END == EXPERIENCES FOR PEOPLE

Page 17: Front End Development - Beyond Javascript (Robin Cannon)
Page 18: Front End Development - Beyond Javascript (Robin Cannon)
Page 19: Front End Development - Beyond Javascript (Robin Cannon)
Page 20: Front End Development - Beyond Javascript (Robin Cannon)
Page 21: Front End Development - Beyond Javascript (Robin Cannon)
Page 22: Front End Development - Beyond Javascript (Robin Cannon)
Page 23: Front End Development - Beyond Javascript (Robin Cannon)
Page 24: Front End Development - Beyond Javascript (Robin Cannon)
Page 25: Front End Development - Beyond Javascript (Robin Cannon)
Page 26: Front End Development - Beyond Javascript (Robin Cannon)

JAVASCRIPT MVCS ARE MATURINGJAVASCRIPT MVCS ARE MATURINGAND CONSOLIDATINGAND CONSOLIDATING

Google Trends

Page 27: Front End Development - Beyond Javascript (Robin Cannon)

0.2% OF WEBSITES0.2% OF WEBSITES

0.1% OF WEBSITES0.1% OF WEBSITES

<0.1% OF WEBSITES<0.1% OF WEBSITES

http://w3techs.com/technologies/overview/javascript_library/all

Page 28: Front End Development - Beyond Javascript (Robin Cannon)

89.5% OF WEBSITES89.5% OF WEBSITES

91.3% OF WEBSITES91.3% OF WEBSITES

~100% OF WEBSITES~100% OF WEBSITES

http://w3techs.com/technologies/overview

Page 29: Front End Development - Beyond Javascript (Robin Cannon)

http://w3techs.com/technologies/overview

FRONT END

DEVELOPMENT

Page 30: Front End Development - Beyond Javascript (Robin Cannon)

BUT IF EVERYONEBUT IF EVERYONEIS TRYING TOIS TRYING TOBECOME ONE OFBECOME ONE OFTHESE...?THESE...?

Page 31: Front End Development - Beyond Javascript (Robin Cannon)

GENERICGENERIC

http://www.playbuzz.com/natthomasbosley10/which-badass-orphan-black-clone-are-you

Page 32: Front End Development - Beyond Javascript (Robin Cannon)

https://www.haikudeck.com/the-tube-uncategorized-presentation-GmUyZRCKJa

EXCESSIVEEXCESSIVE

Page 33: Front End Development - Beyond Javascript (Robin Cannon)

http://www.huffingtonpost.com/2014/04/01/kitt-knight-rider_n_5069998.html

DATEDDATED

Page 34: Front End Development - Beyond Javascript (Robin Cannon)

KNOWING AN MVCKNOWING AN MVCWON'T MAKE YOUWON'T MAKE YOUSPECIAL ANY MORE.SPECIAL ANY MORE.

HAVING AN MVC WON'THAVING AN MVC WON'TMAKE THAT PRODUCTMAKE THAT PRODUCT

SPECIAL ANY MORE.SPECIAL ANY MORE.

Page 35: Front End Development - Beyond Javascript (Robin Cannon)

BEBESPECIALSPECIAL

Page 36: Front End Development - Beyond Javascript (Robin Cannon)

MOORE'S LAW:MOORE'S LAW:

OVERALL PROCESSING POWEROVERALL PROCESSING POWERFOR COMPUTERS WILL DOUBLEFOR COMPUTERS WILL DOUBLE

EVERY TWO YEARS.EVERY TWO YEARS.

Page 37: Front End Development - Beyond Javascript (Robin Cannon)

“ Moore’s Law is nolonger enough to make

customers happy.John Maeda, Wall Street Journal, 5/22/2015

http://blogs.wsj.com/accelerators/2015/05/22/weekend-read-why-design-matters-more-than-moore/

Page 38: Front End Development - Beyond Javascript (Robin Cannon)

DON'T BE A NINJADON'T BE A NINJA

BE THREE NINJASBE THREE NINJAS

http://www.viki.com/tv/1863c-ninja-segging-subbing-academy | http://www.woothemes.com/2010/07/training-ninjas-with-jon-hicks/

Page 39: Front End Development - Beyond Javascript (Robin Cannon)

JAVASCRIPTJAVASCRIPT(...AND I DON'T MEAN(...AND I DON'T MEAN

FRAMEWORKS AND LIBRARIES)FRAMEWORKS AND LIBRARIES)

Page 40: Front End Development - Beyond Javascript (Robin Cannon)

“ the latest and greatestJavaScript frameworkcomes around every

sixteen minutesAllen Pike, Steamwork Software (@apike)

http://www.allenpike.com/2015/javascript-framework-fatigue/

Page 41: Front End Development - Beyond Javascript (Robin Cannon)

6464

Page 42: Front End Development - Beyond Javascript (Robin Cannon)

EVEN IF MVCS AREEVEN IF MVCS ARECONSOLIDATINGCONSOLIDATING

LIBRARIES ARELIBRARIES AREFRACTURINGFRACTURING

AND MIGHT OUTWEIGHAND MIGHT OUTWEIGHMVCS ANWAYMVCS ANWAY

http://www.jacquewatkins.com/wp-content/uploads/2011/08/Broken_glass.jpg

Page 43: Front End Development - Beyond Javascript (Robin Cannon)

LEARN JAVASCRIPT!LEARN JAVASCRIPT!

Page 44: Front End Development - Beyond Javascript (Robin Cannon)

HTMLHTML

Page 45: Front End Development - Beyond Javascript (Robin Cannon)

<!DOCTYPE html><html> <head> <title>Legit</title> </head> <body> <p>This is a legit webpage. By itself.</p> </body></html>

Page 46: Front End Development - Beyond Javascript (Robin Cannon)

PRESENTATION OF CONTENTPRESENTATION OF CONTENTCOMES DOWN TO THE DOM.COMES DOWN TO THE DOM.

THE "DEFAULT" OF THE DOM ISTHE "DEFAULT" OF THE DOM ISHTMLHTML

JAVASCRIPT MANIPULATES THEJAVASCRIPT MANIPULATES THEDOM.DOM.

Page 47: Front End Development - Beyond Javascript (Robin Cannon)

<vampire>Sucks</vampire>

CUSTOM ELEMENTSCUSTOM ELEMENTS

<nav is="vampire-nav"></nav>

EXTENDING EXISTING ELEMENTSEXTENDING EXISTING ELEMENTS

TEMPLATESTEMPLATES

<template> <p>I'm a vampire!</p></template>

Page 48: Front End Development - Beyond Javascript (Robin Cannon)

THE SHADOW DOMTHE SHADOW DOM

http://www.fangoria.com/new/what-we-do-in-the-shadows-sundance-movie-review/

Page 49: Front End Development - Beyond Javascript (Robin Cannon)

WEB COMPONENTSWEB COMPONENTS

http://www.twinfinite.net/2015/03/17/rumor-warner-bros-set-to-release-their-own-lego-toys-to-life-game/

Page 50: Front End Development - Beyond Javascript (Robin Cannon)

LEARN HTML!LEARN HTML!

Page 51: Front End Development - Beyond Javascript (Robin Cannon)

CSSCSS

Page 52: Front End Development - Beyond Javascript (Robin Cannon)

FLEXBOXFLEXBOX

Page 53: Front End Development - Beyond Javascript (Robin Cannon)
Page 54: Front End Development - Beyond Javascript (Robin Cannon)

YOU DON'T EVEN NEED TO KNOWYOU DON'T EVEN NEED TO KNOWANNOYING STUFF LIKE VENDOR PREFIXESANNOYING STUFF LIKE VENDOR PREFIXES

HTTPS://GITHUB.COM/POSTCSS/AUTOPREFIXERHTTPS://GITHUB.COM/POSTCSS/AUTOPREFIXER

(Probably my favorite gulp recipe)

Page 55: Front End Development - Beyond Javascript (Robin Cannon)

ANIMATIONANIMATION

Page 56: Front End Development - Beyond Javascript (Robin Cannon)

http://codepen.io/team/css-tricks/pen/EjaJNd

Page 57: Front End Development - Beyond Javascript (Robin Cannon)

http://codepen.io/thejamespower/pen/OVNYLL

Page 58: Front End Development - Beyond Javascript (Robin Cannon)

WEB COMPONENTSWEB COMPONENTS

http://www.twinfinite.net/2015/03/17/rumor-warner-bros-set-to-release-their-own-lego-toys-to-life-game/

(AGAIN...)(AGAIN...)

Page 59: Front End Development - Beyond Javascript (Robin Cannon)

LEARN CSS!LEARN CSS!

Page 60: Front End Development - Beyond Javascript (Robin Cannon)

BUT THAT'S JUSTBUT THAT'S JUSTONE BIG NINJAONE BIG NINJA

I SAID BECOMEI SAID BECOMETHREE NINJASTHREE NINJAS

http://www.viki.com/tv/1863c-ninja-segging-subbing-academy | http://www.woothemes.com/2010/07/training-ninjas-with-jon-hicks/

Page 61: Front End Development - Beyond Javascript (Robin Cannon)

THANK YOUTHANK YOU

ROBIN CANNON, @SHINYTOYROBOTSROBIN CANNON, @SHINYTOYROBOTS

Page 62: Front End Development - Beyond Javascript (Robin Cannon)

JS/HTML Command & Conquer - http://www.adityaravishankar.com/projects/games/command-and-conquer/

UK Crime Map - http://www.police.uk/metropolitan/00BK17N/crime/

Custom Elements (Eric Bidelman @ebidel) - http://www.html5rocks.com/en/tutorials/webcomponents/customelements/

About Shadow DOM - https://www.polymer-project.org/0.5/platform/shadow-dom.html

Web Components - http://webcomponents.org/

Web Components and the future of CSS - http://philipwalton.github.io/talks/2014-11-24

Flexbox Support - http://caniuse.com/#feat=flexbox