Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Responsible Web Development by Patrick Simpson

Patrick
October 17, 2013

Responsible Web Development by Patrick Simpson

A summary of how we (developers, ux designers, designers) need to be thinking responsive, now and forever. Forget the old days of static design, stop cluttering up the web and start making things that work for your audience. Don't punish them, reward them.

Patrick

October 17, 2013
Tweet

More Decks by Patrick

Other Decks in Programming

Transcript

  1. Your Browsing Choices ‣ Text Based Browsers -Lynx... ‣ Graphical

    Browsers -Mosaic -Internet Explorer 2+ -NetScape
  2. This is ajax... var self = this; // Mozilla/Safari if

    (window.XMLHttpRequest) { self.xmlHttpReq = new XMLHttpRequest(); } // IE else if (window.ActiveXObject) { self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); } self.xmlHttpReq.open('POST', strURL, true); self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); self.xmlHttpReq.onreadystatechange = function() { if (self.xmlHttpReq.readyState == 4) { updatepage(self.xmlHttpReq.responseText); } } self.xmlHttpReq.send(getquerystring()); } ! function getquerystring() { var form = document.forms['f1']; var word = form.word.value; qstr = 'w=' + escape(word); // NOTE: no '?' before querystring return qstr; }
  3. “If you can't explain it to a six year old,

    you don't understand it yourself.” ! ― Albert Einstein
  4. # Conditions: number = -42 if opposite ! # Functions:

    square = (x) -> x * x ! # Arrays: list = [1, 2, 3, 4, 5] ! # Objects: math = root: Math.sqrt square: square cube: (x) -> x * square x ! # Splats: race = (winner, runners...) -> print winner, runners
  5. var cubes, list, math, num, number, opposite, race, square, __slice

    = [].slice; ! number = 42; ! opposite = true; ! if (opposite) { number = -42; } ! square = function(x) { return x * x; }; ! list = [1, 2, 3, 4, 5]; ! math = { root: Math.sqrt, square: square, cube: function(x) { return x * square(x); }
  6. <!--[if (lt IE 9) & (!IEMobile)]>! <link href="c/no-mq.css" rel="stylesheet">! <![endif]-->!

    ! <!--[if (gte IE 9) | (IEMobile)]><!-->! <link href="c/mq.css" rel="stylesheet">! <!--<![endif]-->!
  7. no-mq.css! body {! background-color: red;! background-color: blue;! }! ! !

    mq.css! body {! background-color: red;! }! @media (min-width: 40em) {! body {! background-color: blue;! }! }!
  8. Resources! ! ! IE 2 Simulator! http://www.dejavu.org/1996win.htm! ! Brad Frost:!

    http://bradfrostweb.com/! ! GruntJS! http://gruntjs.com/! ! Sass! http://sass-lang.com/! ! CoffeeScript! http://coffeescript.org/! ! SB-Media Queries! https://github.com/sparkbox/SB-Media

  9. Resources! ! ! HTML5 - Boilerplate! http://html5boilerplate.com/! ! SparkBox! http://seesparkbox.com/!

    ! NodeJS! http://nodejs.org/! ! Nodecopter! http://nodecopter.com/! ! Responsive Grid System! http://responsive.gs/! ! Github! http://github.com