Hello.

I am Paul Kinlan.

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

Extracting text from an image: Experiments with Shape Detection

Paul Kinlan

I had a little down time after Google IO and I wanted to scratch a long-term itch I’ve had. I just want to be able to copy text that is held inside images in the browser. That is all. I think it would be a neat feature for everyone. It’s not easy to add functionality directly into Chrome, but I know I can take advantage of the intent system on Android and I can now do that with the Web (or at least Chrome on Android).

Read More

Offline fallback page with service worker

Paul Kinlan

Years ago, I did some research into how native applications responded to a lack of network connectivity. Whilst I’ve lost the link to the analysis (I could swear it was on Google+), the overarching narrative was that many native applications are inextricably tied to the internet that they just straight up refuse to function. Sounds like a lot of web apps, the thing that set them apart from the web though is that the experience was still ‘on-brand’, Bart Simpson would tell you that you need to be online (for example), and yet for the vast majority of web experiences you get a ‘Dino’ (see chrome://dino).

Read More

Why Build Progressive Web Apps: Push, but Don't be Pushy! Video Write-Up

Paul Kinlan

A great article and video and sample by Thomas Steiner on good push notifications on the web. A particularly bad practice is to pop up the permission dialog on page load, without any context at all. Several high traffic sites have been caught doing this. To subscribe people to push notifications, you use the the PushManager interface. Now to be fair, this does not allow the developer to specify the context or the to-be-expected frequency of notifications.

Read More

Why Microsoft and Google love progressive web apps | Computerworld

Paul Kinlan

A nice post about PWA from Mike Elgan. I am not sure about Microsoft’s goal with PWA, but I think our’s is pretty simple: we want users to have access to content and functionality instantly and in a way they expect to be able to interact with it on their devices. The web should reach everyone across every connected device and a user should be able to access in their preferred modality, as an app if that’s how they expect it (mobile, maybe), or voice on an assistant etc.

Read More

Building a video editor on the web. Part 0.1 - Screencast

Paul Kinlan

You should be able to create and edit videos using just the web in the browser. It should be possible to provide a user-interface akin to Screenflow that lets you create an output video that combines multiple videos, images, and audio into one video that can be uploaded to services like YouTube. Following on from the my previous post that briefly describes the requirements of the video editor, in this post I just wanted to quickly show in a screencast how I built the web cam recorder, and also how how to build a screencast recorder :)

Read More

Building a video editor on the web. Part 0.

Paul Kinlan

You should be able to create and edit videos using just the web in the browser. It should be possible to provide a user-interface akin to Screenflow that lets you create an output video that combines multiple videos, images, and audio into one video that can be uploaded to services like YouTube. This post is really just a statement of intent. I am going to start the long process of working out what is and isn’t available on the platform and seeing how far we can get today.

Read More

PWA: Progressive Web All-the-things

Paul Kinlan

PWA. Progressive Web Apps. Frances Berriman and Alex Russell coined the term “progressive web apps” in 2015 with what I think is a seminal post “Progressive Web Apps: Escaping Tabs Without Losing Our Soul”. 3 years later, we’ve come a long way. From a loose collection of technologies - Service Worker, Manifest, Add to Homescreen, Web Push - that were originally only implemented in one browser engine, to a brand that has started to stick across the industry with businesses and developers, and all of the major browser vendors implementing the majority of the ‘PWA’ stack.

Read More

Page Lifecycle API - Philip Walton

Paul Kinlan

Philip Walton has an awesome deep dive into a new API the Chrome team has been working on to give you (the developer) control over how to respond when the browser unloads your tabs. Application lifecycle is a key way that modern operating systems manage resources. On Android, iOS, and recent Windows versions, apps can be started and stopped at any time by the OS. This allows these platforms to streamline and reallocate resources where they best benefit the user.

Read More

Add to homescreen changes in Chrome 68 - Pete LePage

Paul Kinlan

Pete LePage writes about important changes to Add to Homescreen in Chrome Add to Home Screen changes If your site meets the add to home screen criteria, Chrome will no longer show the add to home screen banner. Instead, you’re in control over when and how to prompt the user. To prompt the user, listen for the beforeinstallprompt event, then, save the event and add a button or other UI element to your app to indicate it can be installed.

Read More

A one year PWA retrospective - Pinterest Engineering

Paul Kinlan

A great overview of Pinterest’s PWA The verdict Now for the part you’ve all been waiting for: the numbers. Weekly active users on mobile web have increased 103 percent year-over-year overall, with a 156 percent increase in Brazil and 312 percent increase in India. On the engagement side, session length increased by 296 percent, the number of Pins seen increased by 401 percent and people were 295 percent more likely to save a Pin to a board.

Read More

This.Javascript: State of Browsers - YouTube

Paul Kinlan

Tracy Lee from This Dot organised a rather neat live-stream that brought in many of the browser vendors to give an overview of what they are working on: Browser representatives from Brave, Beaker, Edge, Chrome, & Mozilla get together to talk about recent updates and the state of browsers. Featured Speakers: Brendan Eich -  Creator of Javascript, Co-founder & CEO at Brave Software Paul Frazee - Works on Beaker Browser Matthew Claypotch - Developer Advocate at Mozilla Paul Kinlan - Senior Developer Advocate at Google Patrick Kettner - Edge at Microsoft Amal Hussein - Senior Open Web Engineer at Bocoup Tracy Lee - GDE, RxJs Core Team, This Dot Co-founder Read full post.

Read More

PWACompat: the Web App Manifest for all browsers - @ChromiumDev

Paul Kinlan

Sam Thorogood from our team writes: You’ve designed a webapp, built its code and service worker, and finally added the Web App Manifest to describe how it should behave when ‘installed’ on a user’s device. This includes things like high-resolution icons to use for e.g. a mobile phone’s launcher or app switcher, or how your webapp should start when opened from the user’s home screen. And while many browsers will respect the Web App Manifest, not every browser will load or respect every value you specify.

Read More

Getting started with the Ambient Light Sensor

Paul Kinlan

Dean Hume’s been doing a lot great work with PWA’s recently, and he’s also been exploring a lot of the new platform API’s, in this case the Generic Sensor API: The Ambient Light Sensor API provides developers with the means to determine ambient light levels as detected by the device’s main light detector. This information is available to developers in terms of lux units. If you are building a Progressive Web App and you want to style it differently depending on the light levels in the room, then this could be the feature for you.

Read More

Understanding Storage Quota | Workbox

Paul Kinlan

Jeff Posnick writes, wrt to Workbox A common source of unexpectedly high quota usage is due to runtime caching of opaque responses, which is to say, cross-origin responses to requests made without CORS enabled. Browsers automatically inflate the quota impact of those opaque responses as a security consideration. In Chrome, for instance, even an opaque response of a few kilobytes will end up contributing around 7 megabytes towards your quota usage.

Read More

JakeHorner

Paul Kinlan

Possibly the world's best jake.

Read More

Web Share Target API

Paul Kinlan

Share Target API is now in Chrome breaking down one of the last silos of native platforms

Read More

onappinstalled - for when an app is installed.

Paul Kinlan

Use onappinstalled to detect when a progressive web app is installed.

Read More

Topicdeck

Paul Kinlan

Topicdeck is the module that aggregates a selection of RSS feeds into a tweetdeck style view

Read More

GDE Deck

Paul Kinlan

An aggregation of our GDE's content

Read More

Progressive Progressive Web Apps

Paul Kinlan

Building Progressive Web Apps progressively is possible. This is how I did it.

Read More

Airhorner Custom Element

Paul Kinlan

Possibly the world's best airhorn now as a custom element

Read More

Ephemeral social or content networks

Paul Kinlan

If there is no one around to read your tweet, does it make a difference?

Read More

Serverless Data Sync in Web Apps with Bit Torrent

Paul Kinlan

TL;DR - Here is a demo Code Our team has built a lot of Progressive Web Apps recently to demonstrate how we think they can be built: Airhorner, Voice Memos, Guitar Tuner, SVG-OMG are a few that spring to mind. One thing that is common across all of these sites is that they have no server component to store and synchronise data. We built these sites as examples and reference implementations of the types of experiences that we can deliver on the web, they were never intended to be full “Apps” that you would build as a business.

Read More

The future of the web on mobile from Coldfront Conf

Paul Kinlan

The web is changing, we need to adapt

Read More

QR Snapper

Paul Kinlan

The fastest QR Code scanner on the web

Read More

Walking, talking and ideas for web apps

Paul Kinlan

How do you find ideas for web apps and why is it important to build apps that push the platform?

Read More

The future of communications apps is on the web

Paul Kinlan

It might be a hard sell, but there are number of advantages to using the web.

Read More

Living with Web Apps

Paul Kinlan

A spent a while living just with web apps. Here is my report.

Read More

Airhorner

Paul Kinlan

Possibly the world's best airhorn.

Read More

Add to home screen is not what the web needs. Is it?

Paul Kinlan

Maybe? :)

Read More

paul.kinlan.me

Paul Kinlan

This blog

Read More