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

ConFoo: Pushing the Boundaries without Breaking the Web

Rachel Andrew
February 27, 2013

ConFoo: Pushing the Boundaries without Breaking the Web

Rachel Andrew

February 27, 2013

More Decks by Rachel Andrew

Other Decks in Technology


  1. <script type="text/javascript"> <!-- function MM_reloadPage(init) { if (init==true) with (navigator)

    {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); //--> </script> Wednesday, 27 February 13
  2. Things used by people who understand the problems they solve

    are also used by those who do not understand those problems, or even if there is a problem. Wednesday, 27 February 13
  3. The web is a work in progress. Your job? To

    deal with it. Wednesday, 27 February 13
  4. Understanding the technology your audience is using gives you a

    point of reference for your decisions. Wednesday, 27 February 13
  5. <link rel="stylesheet" href="/assets/css/basic.css" /> <link rel="stylesheet" media="only screen and (min-width:

    460px)" href="/ assets/css/460.css" /> <link rel="stylesheet" media="only screen and (min-width: 700px)" href="/ assets/css/700.css" /> <link rel="stylesheet" media="only screen and (min-width: 940px)" href="/ assets/css/940.css" /> <link rel="stylesheet" media="only screen and (min-width: 1180px)" href="/ assets/css/1180.css" /> Wednesday, 27 February 13
  6. Option 1: serve these users the mobile version of the

    site only Wednesday, 27 February 13
  7. Option 3: Offer a fixed width version of the site

    to IE8 and below Wednesday, 27 February 13
  8. Problem: lack of support for styling HTML5 semantic elements in

    older browsers. Wednesday, 27 February 13
  9. Option 1: use the JavaScript polyfill html5.js to add support

    via JavaScript Wednesday, 27 February 13
  10. Option 2: avoid using HTML5 semantic elements in the templates

    until IE8 usage declines Wednesday, 27 February 13
  11. Replacing divs with semantic elements later is trivial due to

    our template based CMS. Wednesday, 27 February 13
  12. We (edgeofmyseat.com) are retained to maintain & develop the site.

    We can make these changes when old browser usage reduces. Wednesday, 27 February 13
  13. Avoiding using the tag in your selectors means you can

    switch tags in your templates without changing your CSS. Wednesday, 27 February 13
  14. My decision to fix the width for older browsers also

    made polyfilling CSS3 selectors much easier. Wednesday, 27 February 13
  15. Solution: put in place technology that will enable us to

    adopt a solution later Wednesday, 27 February 13
  16. In February 2013 browser use on the site without support

    for these modern technologies has fallen to under 8% Wednesday, 27 February 13
  17. 1. What is the problem? My process 2. What are

    my constraints? 3. Is not supporting this feature an option? 4. What current solutions exist? 5. Use a polyfill or roll my own? Wednesday, 27 February 13
  18. How many users of the Perch website do not have

    support for the modern web technologies we want to use? Wednesday, 27 February 13
  19. I use more polyfills when I have fewer older browser

    users. The downsides are going to be an issue to a much smaller % Wednesday, 27 February 13
  20. If you don’t know what it is doing. Why is

    it there? Wednesday, 27 February 13
  21. Starting with the bare minimum and adding things forces you

    to consider the implications of each thing you add. Wednesday, 27 February 13
  22. There’s no silver bullet to making a slow site fast.

    You must take a holistic approach. High performance runs the entire way through from the hardware it’s hosted on, through the app that builds the pages, to the server software that delivers the pages and the front end code that displays them in a browser. Drew McLellan - http://allinthehead.com/retro/361/how-to-make-your-website-fast Wednesday, 27 February 13
  23. Web pages are getting larger and a lot of the

    size is down to JavaScript. http://royal.pingdom.com/2011/11/21/web-pages-getting-bloated-here-is-why/ Wednesday, 27 February 13
  24. ... no matter how old we are, how long we

    have been doing this, and whether we write tutorials or speak at conferences or not. Wednesday, 27 February 13
  25. If we train people to just copy and paste, we

    stop them growing, learning and contributing. Wednesday, 27 February 13
  26. Make sure you know why you are using a solution

    and what your other options are. Wednesday, 27 February 13
  27. When teaching or writing tutorials for others explain problems before

    handing out the solution. Explain why as well as how. Wednesday, 27 February 13