newfangeldy front end stuff for people who last touched it back when grunge was a thing

88
Track name - Date - & anything else you need to include that maybe relevant to you presentation NEWFANGELDY FRONT END STUFF FOR PEOPLE WHO LAST TOUCHED IT BACK WHEN GRUNGE WAS A THING Front End Track - Tuesday, June 3, 2014 ANGIE “@WEBCHICK” BYRON

Upload: angela-byron

Post on 10-May-2015

120 views

Category:

Technology


1 download

DESCRIPTION

- Does the word "Mosaic" conjure up fond memories of pages upon pages with grey background and blue links, rather than fancy glass pictures? - Did you use AOL diskettes as coasters? - Did you last touch JavaScript back when

TRANSCRIPT

Page 1: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

Track name - Date - & anything else you need to include that maybe relevant to you presentation

NEWFANGELDY FRONT END STUFF FOR PEOPLE WHO LAST TOUCHED IT BACK WHEN

GRUNGE WAS A THING

Front End Track - Tuesday, June 3, 2014A N G I E “ @ W E B C H I C K ” B Y R O N

Page 2: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

ABOUT ME

Page 3: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

WEB DEVELOPER SINCE 1994, BACKEND DEVELOPER SINCE 1999.UNQUALIFIED TO GIVE THIS TALK, BUT QUALIFIED TO TELL YOU TO GET OFF MY LAWN. ;)

Page 4: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

SO WHY *AM* I GIVING THIS TALK?

Page 5: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THIS TALK WILL COMPARE…

LET’S COMPARE WEB DEVELOPMENT THEN VS. NOW…

Page 6: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

…defining newfangeldy terms as we go.

A L O N G W I T H A C O U P L E O F E X A M P L E S .

Page 7: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

LET’S TRAVEL IN TIME TO THE FAR DISTANT PAST…

THE MID 1990S…

Page 8: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

POP CULTURE LOOKED LIKE THIS…

Page 9: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

TECHNOLOGY LOOKED LIKE THIS…

Page 10: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

…AND I LOOKED LIKE THIS. ;)

Page 11: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

WEB DESIGN: THEN AND NOW

Page 12: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THEN: ALL WEBSITES BASICALLY LOOKED LIKE THIS.

Page 13: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

UNTIL… *GASP* THE SLICE TOOL!

Page 14: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

STEP 1: MAKE A STATIC GRAPHIC COMP OF YOUR AMAZING DESIGN

Page 15: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

STEP 2: SLICE IMAGE UP INTO SMALLER SQUARES & EXPORT

Page 16: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

STEP 3: SPEND THE NEXT 50 HOURS “FIXING” THE “HTML”

Page 17: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: DESIGN IN THE BROWSER (AGAIN ;))

Page 18: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

“STYLE TYLES”

http://styletil.es

Page 19: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

PATTERN LAB

http://patternlab.io

Page 20: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

MARKUP: THEN AND NOW

Page 21: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THEN:

 

<IMG SRC=SPACER.GIF><FRAMESET><CENTER><BLINK>!<BLINK><BLINK>

Page 22: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW:

http://www.w3.org/TR/html5/

Page 23: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

MORE SEMANTIC STRUCTURE

Page 24: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

HTML5 FORMS

<input type=“date” />

(AND URL, EMAIL, TEL, NUMBER, ETC.)

Page 25: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

MULTIMEDIA SUPPORTTHEN:

NOW:

Page 26: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

WHAT ELSE?

CANVAS LOCAL STORAGE WEB WORKERS

OFFLINE SUPPORT GEOLOCATION

http://diveintohtml5.info

Page 27: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

MODERNIZR: HTML5 FEATURE DETECTION

http://modernizr.com

Page 28: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

HTML5SHIV: “POLYFILL” HTML5 FEATURES FOR OLD IE VERSIONS

https://code.google.com/p/html5shiv/

Page 29: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

START HTML5 DEVELOPMENT ON THE RIGHT FOOT.

http://html5boilerplate.com

Page 30: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

STYLING: THEN AND NOW

Page 31: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing
Page 32: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

<HTML>!<BODY BGCOLOR=#000000 BACKGROUND=STARS.GIF TEXT=#FF0000 LINK=#FF4C4C VLINK=#FF4C4C ALINK=“FF4C4C>!<CENTER>!<P><B><FONT FACE=“COMIC SANS” COLOR=#FF00FF>HELLO</FONT></B>!</CENTER>!</BODY>!</HTML>

THEN: LOTS OF CODE LIKE THIS

index.html

<!--#include file="header.html" -->“SERVER-SIDE INCLUDES”

about.html contact.html

Page 33: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

CSS

body {! background-color: #000;! background-image: url(‘stars.gif’);!}!a { color: #ff4c4c; }!…

<LINK HREF=STYLES.CSS>!

index.html about.html contact.html

styles.css

Page 34: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW:

http://www.w3.org/TR/CSS/

Page 35: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NEW SELECTORS AND PSEUDO-CLASSES

// Links that start with “https://“!a[href^="https://"]{ background:#f00;}

// Links that end with “.ca”!a[href$=“.ca"]{ background:#0f0;}

// Links that contain “drupal”!a[href*="drupal"]{ background:#00f;}!

// Style even table rows differently!tr:nth-child(even) { background:#ccc;}!

// Style disabled elements differently!input[type="text"]:disabled { background: #ccc; }

Page 36: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

EASY COLUMNS

.container {!! width: 500px;!! margin: 0 auto;!}!!.container p {!! columns: 3;!}

Page 37: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

MEDIA QUERIES

THEN:

NOW:

Page 38: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

BACKGROUNDS, BORDERS, AND DECORATIONS… OH MY!

color: rgb(230, 230, 230);!background: rgb(210, 20, 20);!font-size: 20px;!padding: 20px;!text-shadow: 0px -1px 0px rgba(30, 30, 30, 0.8);!border-radius: 30px;!background: linear-gradient(0deg, rgb(210, 20, 20) 30%, rgb(250, 20, 20) 70%);!box-shadow: 0px 2px 1px rgba(50, 50, 50, 0.75);!

http://css3gen.com

Page 39: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

ANIMATIONS, TRANSFORMS, TRANSITIONS

Page 40: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

TYPOGRAPHY: THEN AND NOW

Page 41: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THEN: USE ANY FONT YOU WANT, AS LONG AS IT’S:

Courier New

Times New Roman

ArialArial Black

Comic Sans MS

GeorgiaImpact

Trebuchet MS

Verdana

Page 42: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: ACTUALLY USE ANY FONT YOU WANT*

* IF FONT LICENSE ALLOWS

Page 43: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

PULL IN WEB FONT REMOTELY

https://www.google.com/fonts

Page 44: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

GENERATE YOUR OWN WEB FONT

fontsquirrel.com

Page 45: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

EVEN MOAR NEWFANGELDY CSS STUFF!

Page 46: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

http://necolas.github.io/normalize.css/

NORMALIZE: BECAUSE NO BROWSER STARTING POINTS ARE CREATED EQUAL

Page 47: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

Newfangeldy term: “CSS Preprocessor”A S C R I P T I N G L A N G U A G E T H A T

E X T E N D S C S S W I T H N E W F E A T U R E S A N D C O N V E N I E N C E , W H I C H T H E N G E T S C O M P I L E D

I N T O R E G U L A R C S S S Y N T A X F O R U S E O N T H E W E B .

!

P O W E R + + R E P E A T I N G Y O U R S E L F - -

http://drupalize.me/videos/what-css-preprocessor

Page 48: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

SASS, LESS, STYLUS. MOST POPULAR* SEEMS TO BE SASS.

http://sass-lang.com * BASED ON MY TWITTER STREAM. PLEASE DON’T SHOOT THE MESSENGER. ;)

Page 49: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

base.scssVARIABLES

base.css

Page 50: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

_reset.scss

IMPORTSbase.scss

base.css

Page 51: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

“MIXINS”box.scss

box.css

Page 52: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

@EXTEND / INHERITANCEmessage.scss message.css

Page 53: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

COMPASS

http://compass-style.org

Page 54: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

SCREEN RESOLUTIONS: THEN AND NOW

Page 55: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THEN: EVERYONE USED ONE OF THESE.

Page 56: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

1024x768

800x600

640x480

Page 57: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: EVERYONE USES (AT LEAST) ONE OF THESE.

Page 58: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THIS IS TODAY’S SCREEN RESOLUTION LANDSCAPE.

Page 59: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

WHAT TO DO?

Page 60: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

“FIXED”

“FLUID”

800px

150px 600px

90%

20% 75%

THEN:

Page 61: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

ADAPTIVE: FIXED, PER DEVICE

RESPONSIVE: FLUID, PER WIDTH

Page 62: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

LAYOUT: THEN AND NOW

Page 63: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THEN: TABLES AND FRAMES

Page 64: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: CSS

Page 65: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

IT’S *SO* SIMPLE! TRYING TO GET THIS?

Page 66: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

INSTEAD OF THIS HORRIBLE, HACKISH CODE…

<table>! <tr><td colspan=3>Top</td></tr>! <tr>! <td>Left</td>! <td>! <h1>Center</h1>! </td>! <td>Right</td>! </tr>! <tr><td colspan=3>Bottom</td></tr>!</table>

Page 67: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

YOU WRITE THIS AWESOME, SEMANTIC CODE!

<div id="container">! <div id="top">Top</div>! <div id="leftnav">Left</div>! <div id="rightnav">Right</div>! <div id="content">! <h1>Center</h1>! </div>! <div id="footer">Bottom</div>!</div>

Page 68: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

…AND THEN 500 LINES OF CRAP LIKE THIS. :P

#container {! text-align: center;! width: 480px;! margin: 10px auto;! line-height: 130%;!}!!#top {! padding: .5em;!}!!#leftnav {! float: left;! width: 80px;! margin: 0;! padding: 1em;!}!!

Page 69: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing
Page 70: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: GRID SYSTEMS

Page 71: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

SINGULARITY

http://singularity.gs

Page 72: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: CSS FRAMEWORKS

Page 73: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

BOOTSTRAP

http://getbootstrap.com

Page 74: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

FOUNDATION

http://foundation.zurb.com

Page 75: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

MOBILE APPLICATIONS: THEN AND NOW

Page 76: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THEN:

Page 77: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: THE CONTENDERS

iOS ANDROID

Page 78: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing
Page 79: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

PHONEGAP TO THE RESCUE!

http://phonegap.com

Page 80: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

SCRIPTING: THEN AND NOW

Page 81: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

var agt=navigator.userAgent.toLowerCase(); if ( (parseInt(navigator.appVersion)>=4) && (agt.indexOf(`mozilla')!=-1) && (agt.indexOf(`spoofer')==-1) && (agt.indexOf(`compatible') == -1) ) { document.tags.H1.color=“red"; } else if ( (parseInt(navigator.appVersion)>=4) && (agt.indexOf(`msie') != -1) ) { document.styleSheets["ietssxyz"].addRule ("H1", "color:red"); }

THEN: RAW DOM MANIPULATION

Page 82: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: JQUERY

$('h1').css('color', 'red');

http://jquery.com

Page 83: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

THEN: “DHTML”

Page 84: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: MVC JAVASCRIPT FRAMEWORKS

Page 85: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

NOW: BUILD TOOLS

Page 86: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

SOON: WEB COMPONENTS

Page 87: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

SOON: ECMASCRIPT 6 (“HARMONY”)

Page 88: Newfangeldy Front End Stuff For People Who Last Touched It Back When Grunge Was A Thing

WHAT DID YOU THINK?E V A L U A T E T H I S S E S S I O N :

A U S T I N 2 0 1 4 . D R U P A L . O R G / S C H E D U L E

Thank you!