An Event Apart: “The Way Of The Web”

Jeremy Keith speaking at An Event Apart Seattle 2018 on April 3, 2018.

Do you ever get overwhelmed by the ever-changing nature of web design and development? Exhausting, isn’t it? How are you supposed to know which technologies and tools you should invest your time in? Will they stick around or will you just have to relearn everything in another few months? Join Jeremy as he takes a tour of the past, present, and future of working on the web. From the building blocks of HTML, CSS, and JavaScript through to frameworks and libraries right up to the latest and greatest Progressive Web Apps, this talk will examine our collective assumptions with a critical eye. By learning from the past, we can make sensible design decisions today to build the web of tomorrow.


  • Are we living in a utopia or a dystopia?
  • “A dystopia is always a utopia for somebody”
  • “Never make any decision out of fear” — Bruce Sterling
    • You want to have a certain level of fear
    • Never make any decision out of excitement
  • “I wonder if I have 20 years of experience making websites, or if it is really 5 years of experience repeated 4 times.”
  • Why am I excited of some technologies and apprehensive about others?
  • I don’t fear change, I fear a rapid rate of change
  • Sometimes developers reach for these tools, without concern for the user, because it will make their life easier
  • Fast learns, slow remembers
    • “Pace layers” from How Buildings Learn by Stuart Brand — bottom layers move at a slower pace, layers move faster as you move to higher layers
    • Slow is continuous, fast is discontinuous
    • Fast gets all the attention, but slow has all the power
  • Materials of the web (HTML, CSS, JavaScript), like materials of a house, make up the structure of a website —tools of the web (Git, Sass, Grunt, etc.) are used to assemble the materials
  • No matter what tools you use, the user always gets the same stuff in the browser: HTML, CSS, JavaScript
  • Web technology can be mapped to pace layers
    • From slowest changing to fastest: TCP/IP, HTTP, URLs, HTML, CSS, JavaScript
    • It’s okay that JavaScript is moving fast and constantly changing, that’s what it’s supposed to do, it’s the fashion layer
  • The rule of least power
    • Choose the least powerful thing for a given language
    • Ask yourself “Is there a way to do this with a simpler technology?”
  • Doing everything in JavaScript turns the web into a binary choice, it either works great or doesn’t work at all
  • We takes biases from design tools into production
  • Maybe designs should be less precise in the design tools and get more precise in the build process
  • Instead of designing in the browser, let’s decide in the browser
  • Try to see the layers behind the design — what happens when JS, CSS, fonts, etc. don’t load?
  • The web favors ubiquity over consistency
  • Layer on the enhancements after applying the rule of least power
  • Progressive web app:
    • HTTPS
    • Web app manifest — JSON file with meta data
    • Service worker — JavaScript that gets installed on the user’s machine and acts as a proxy
  • PWA examples:
  • As long as you are applying in a layered way, you can start using the cutting edge stuff today

Speaker Links and Resources

Further Reading

Related posts on

Progressive Web Apps



Related Links