Hello.

I am Paul Kinlan.

A Developer Advocate for Chrome and the Open Web at Google.

pwa (28 articles)

  • Why Microsoft and Google love progressive web apps | Computerworld - published October 22 2018
  • Building a video editor on the web. Part 0.1 - Screencast - published October 12 2018
  • Building a video editor on the web. Part 0. - published October 11 2018
  • PWA: Progressive Web All-the-things - published August 2 2018
  • Page Lifecycle API - Philip Walton - published July 26 2018
  • Add to homescreen changes in Chrome 68 - Pete LePage - published July 26 2018
  • A one year PWA retrospective - Pinterest Engineering - published July 20 2018
  • This.Javascript: State of Browsers - YouTube - published July 19 2018
  • PWACompat: the Web App Manifest for all browsers - @ChromiumDev - published July 17 2018
  • Getting started with the Ambient Light Sensor - published July 13 2018
  • Understanding Storage Quota | Workbox - published July 11 2018
  • JakeHorner - published April 15 2018
  • Web Share Target API - published April 15 2018
  • onappinstalled - for when an app is installed. - published April 13 2018
  • Topicdeck - published March 3 2018
  • GDE Deck - published January 1 2018
  • Progressive Progressive Web Apps - published July 4 2017
  • Airhorner Custom Element - published April 15 2017
  • Ephemeral social or content networks - published July 4 2016
  • Serverless Data Sync in Web Apps with Bit Torrent - published June 14 2016
  • The future of the web on mobile from Coldfront Conf - published September 11 2015
  • QR Snapper - published April 15 2015
  • Walking, talking and ideas for web apps - published February 11 2015
  • The future of communications apps is on the web - published January 18 2015
  • Living with Web Apps - published August 20 2014
  • Airhorner - published April 15 2014
  • Add to home screen is not what the web needs. Is it? - published February 21 2014
  • paul.kinlan.me - published April 15 2010
  • links (20 articles)

  • Chrome Dev Summit 2018 - published November 11 2018
  • Performance and Resilience: Stress-Testing Third Parties by CSS Wizardry - published October 23 2018
  • Chrome Bug 897727 - MediaRecorder using Canvas.captureStream() fails for large canvas elements on Android - published October 22 2018
  • Why Microsoft and Google love progressive web apps | Computerworld - published October 22 2018
  • 894556 - Multiple video tracks in a MediaStream are not reflected on the videoTracks object on the video element - published October 12 2018
  • Barcode detection in a Web Worker using Comlink - published October 2 2018
  • Running FFMPEG with WASM in a Web Worker - published October 2 2018
  • Translating a blog using Google Cloud Translate and Hugo - published August 31 2018
  • Apple - Web apps - All Categories - published August 25 2018
  • Gears API - published August 25 2018
  • RSS Feed to Google Chat Webhook using Cloud Functions for Firebase and Superfeedr - published August 25 2018
  • 'Moving to a Chromebook' by Rumyra's Blog - published August 13 2018
  • What are the pain points for web designers? - Mustafa Kurtuldu - published August 1 2018
  • Page Lifecycle API - Philip Walton - published July 26 2018
  • Add to homescreen changes in Chrome 68 - Pete LePage - published July 26 2018
  • A one year PWA retrospective - Pinterest Engineering - published July 20 2018
  • Configuring hugo server to serve 'mjs' ES modules - published July 20 2018
  • Thoughts on importing npm modules to the web as JavaScript modules - published July 20 2018
  • This.Javascript: State of Browsers - YouTube - published July 19 2018
  • PWACompat: the Web App Manifest for all browsers - @ChromiumDev - published July 17 2018
  • intents (19 articles)

    javascript (11 articles)

  • Configuring hugo server to serve 'mjs' ES modules - published July 20 2018
  • Thoughts on importing npm modules to the web as JavaScript modules - published July 20 2018
  • Importing npm modules to the web as JavaScript modules - published July 19 2018
  • We need DOM APIs in Workers - published January 28 2018
  • A simple clientside templating langauge - published January 27 2018
  • Detecting text in an image on the web in real-time - published January 27 2017
  • How should we load web components? - published January 26 2017
  • Building a simple PubSub system in JavaScript - published December 8 2016
  • Barcode detection using Shape Detection API - published December 5 2016
  • Web Fundamentals - published April 15 2014
  • HTML5Rocks - published April 15 2012
  • link (11 articles)

    headless (9 articles)

  • Puppeteer as a service - published March 15 2018
  • DOMCurl - published February 15 2018
  • Exciting times: 2017 and the web - published January 1 2017
  • Running Chrome on AppEngine - published December 22 2016
  • Chrome on Google Home - published December 12 2016
  • Designing a Web Push Service - published November 29 2016
  • The Headless Web - published August 1 2016
  • An organizer's perspective on Progressive Web App Dev Summit - published July 4 2016
  • SLICE: The Web - published August 3 2015
  • web-app (7 articles)

  • Ephemeral social or content networks - published July 4 2016
  • Serverless Data Sync in Web Apps with Bit Torrent - published June 14 2016
  • The future of the web on mobile from Coldfront Conf - published September 11 2015
  • Walking, talking and ideas for web apps - published February 11 2015
  • The future of communications apps is on the web - published January 18 2015
  • Living with Web Apps - published August 20 2014
  • Add to home screen is not what the web needs. Is it? - published February 21 2014
  • ffmpeg (6 articles)

  • Running FFMPEG with WASM in a Web Worker - published October 2 2018
  • Exciting times: 2017 and the web - published January 1 2017
  • Screen recording on Android with getUserMedia and WebRTC - published December 16 2016
  • Ideas for web apps with FFMPEG and ffmpeg.js - published December 5 2016
  • Building ffmpeg.js for Ubuntu - published December 3 2016
  • Automating Android screen recording and device framing - published July 29 2016
  • headless-chrome (6 articles)

  • Bookmarklet: Chrome DevTools trace page - published April 12 2018
  • Hosting Puppeteer in a Docker container - published March 13 2018
  • domcurl: curl + JavaScript - published March 12 2018
  • Chrome on Google Home - published December 12 2016
  • The Headless Web - published August 1 2016
  • SLICE: The Web - published August 3 2015
  • web-components (5 articles)

    manifest (4 articles)

    mediarecorder (4 articles)

    puppeteer (4 articles)

  • Bookmarklet: Chrome DevTools trace page - published April 12 2018
  • Puppeteer as a service - published March 15 2018
  • Hosting Puppeteer in a Docker container - published March 13 2018
  • DOMCurl - published February 15 2018
  • qrcode (4 articles)

    service-worker (4 articles)

  • Understanding Storage Quota | Workbox - published July 11 2018
  • Using CSP Nonces effectively with service worker - published February 4 2018
  • QR Snapper - published April 15 2015
  • Airhorner - published April 15 2014
  • the-headless-web (4 articles)

  • domcurl: curl + JavaScript - published March 12 2018
  • Chrome on Google Home - published December 12 2016
  • The Headless Web - published August 1 2016
  • SLICE: The Web - published August 3 2015
  • wasm (4 articles)

  • Building a video editor on the web. Part 0. - published October 11 2018
  • Running FFMPEG with WASM in a Web Worker - published October 2 2018
  • Emscripten's compiled Web Assembly, used minimally - published July 11 2018
  • Building ffmpeg.js for Ubuntu - published December 3 2016
  • webdev (4 articles)

    airhorn (3 articles)

  • JakeHorner - published April 15 2018
  • Airhorner Custom Element - published April 15 2017
  • Airhorner - published April 15 2014
  • custom-element (3 articles)

    google (3 articles)

    performance (3 articles)

    shape-detection (3 articles)

  • Detecting text in an image on the web in real-time - published January 27 2017
  • Barcode detection using Shape Detection API - published December 5 2016
  • QR Snapper - published April 15 2015
  • webrtc (3 articles)

    api (2 articles)

    bigquery (2 articles)

    css (2 articles)

  • Web Fundamentals - published April 15 2014
  • HTML5Rocks - published April 15 2012
  • getusermedia (2 articles)

    html (2 articles)

  • Web Fundamentals - published April 15 2014
  • HTML5Rocks - published April 15 2012
  • hugo (2 articles)

    lighthouse (2 articles)

    npm (2 articles)

    share (2 articles)

  • Breaking down silos by sharing more on the web - published January 20 2018
  • Defining web component interfaces - published April 13 2017
  • slice (2 articles)

  • An organizer's perspective on Progressive Web App Dev Summit - published July 4 2016
  • SLICE: The Web - published August 3 2015
  • topicdeck (2 articles)

  • Topicdeck - published March 3 2018
  • GDE Deck - published January 1 2018
  • torrent (2 articles)

    video-editor (2 articles)

    worker (2 articles)

  • Barcode detection in a Web Worker using Comlink - published October 2 2018
  • QR Snapper - published April 15 2015
  • a2hs (1 articles)

    app-shell (1 articles)

  • Topicdeck - published March 3 2018
  • architecture (1 articles)

  • Web Architecture 101 - VideoBlocks - published July 12 2018
  • beaker (1 articles)

    bookmarklet (1 articles)

  • Bookmarklet: Chrome DevTools trace page - published April 12 2018
  • boomerang (1 articles)

    brave (1 articles)

    browsers (1 articles)

    chrome (1 articles)

    chrome-dev-summit (1 articles)

  • Chrome Dev Summit 2018 - published November 11 2018
  • chromeos (1 articles)

  • 'Moving to a Chromebook' by Rumyra's Blog - published August 13 2018
  • cloud (1 articles)

    color (1 articles)

  • A List Apart. Cool! - published August 24 2005
  • comlink (1 articles)

    crux (1 articles)

    csp (1 articles)

    curl (1 articles)

  • domcurl: curl + JavaScript - published March 12 2018
  • demo (1 articles)

    devrel (1 articles)

    docker (1 articles)

  • Hosting Puppeteer in a Docker container - published March 13 2018
  • dom (1 articles)

  • We need DOM APIs in Workers - published January 28 2018
  • edge (1 articles)

    es-modules (1 articles)

    firebase (1 articles)

    fonts (1 articles)

    fraud-detection (1 articles)

    gears (1 articles)

  • Gears API - published August 25 2018
  • getdisplaymedia (1 articles)

    git (1 articles)

  • Grep your git commit log - published October 23 2018
  • google-analytics (1 articles)

    idl (1 articles)

  • Defining web component interfaces - published April 13 2017
  • leak (1 articles)

  • Levi Routes - published June 1 2011
  • lifecycle (1 articles)

  • Page Lifecycle API - Philip Walton - published July 26 2018
  • media (1 articles)

    mjs (1 articles)

    modules (1 articles)

    mozilla (1 articles)

    node (1 articles)

  • domcurl: curl + JavaScript - published March 12 2018
  • productivity (1 articles)

  • did.txt file - Patrick - published July 16 2018
  • progressive-web-apps (1 articles)

  • Progressive Progressive Web Apps - published July 4 2017
  • pubsub (1 articles)

  • Building a simple PubSub system in JavaScript - published December 8 2016
  • rollup (1 articles)

    routing (1 articles)

  • Levi Routes - published June 1 2011
  • rss (1 articles)

    ruby (1 articles)

  • A List Apart. Cool! - published August 24 2005
  • security (1 articles)

    sensor (1 articles)

    silo (1 articles)

    site (1 articles)

  • paul.kinlan.me - published April 15 2010
  • ssr (1 articles)

  • Progressive Progressive Web Apps - published July 4 2017
  • storage (1 articles)

  • Understanding Storage Quota | Workbox - published July 11 2018
  • superfeedr (1 articles)

    templating (1 articles)

  • A simple clientside templating langauge - published January 27 2018
  • translate (1 articles)

    ux (1 articles)

  • Designing with the Gestalt principles - published July 11 2018
  • video (1 articles)

    web-intents (1 articles)

  • Web Share Target API - published April 15 2018
  • webaps (1 articles)

  • Apple - Web apps - All Categories - published August 25 2018
  • webgl (1 articles)

    webpush (1 articles)

  • Designing a Web Push Service - published November 29 2016