Hello.

I am Paul Kinlan.

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

Understanding Storage Quota | Workbox

Paul Kinlan

Jeff Posnick menulis, 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.

Baca pos lengkap.

Pekerja Layanan adalah bagian yang luar biasa dan integral dari ekosistem web, tetapi masih ada beberapa gotchas - dan ini adalah salah satu dari mereka yang dapat menggigit Anda jika Anda tidak mengetahui hal ini sebelumnya.

Sangat menyenangkan melihat alat seperti Workbox dapat menangani ini dan memberi tahu Anda sehingga Anda tahu apa yang terjadi.

Paul Kinlan

Trying to make the web and developers better.

RSS Github Medium

Emscripten's compiled Web Assembly, used minimally

Paul Kinlan

Sam Thorogood di Dev.to menulis,

Why did I write this post? Emscripten is a wonderful tool, but it has a long history (for asm.js), and isn’t perfect. I think it errs too much on the side of “magic”, and many posts rave about how it’s so easy to EMASM or use binding-fu, but this all comes at a cost, and can introduce huge amounts of inadvertent overhead—think copying huge memory buffers around because we’re trying to make them immutable or easily exposed.

Every language that is being compiled to Web Assembly needs a runtime—whether it be Go, or Rust, or C/C++ as we have here. I don’t believe that we’ll ever really be able to directly import Web Assembly via ES2015 modules, at least not without changes on the JS side. But it behooves us to write the smallest one we possibly can.

Baca posting lengkap.

Saya pikir kita semua melihat potensi wasm, sedikit bagi banyak dari kita banyak platform lain yang sekarang dapat datang ke web benar-benar asing bagi kita, dan kita benar-benar perlu mempelajari alat-alat itu, meningkatkan pengalaman pengembang wasm dan imo menawarkan pustaka prebuilt yang ‘web devs tradisional’ dapat digunakan.

Designing with the Gestalt principles

Paul Kinlan

Mustafa untuk Google Chrome, di Dev-Channel menulis,

The Gestalt principles are a series of laws that are used to explain why human beings naturally find organized patterns in objects they see around them. The goal with the principles was to explain why we group objects in some ways but not others.

There are many different principles, but here I am going to look at the ones that effect grouping, these are; proximity, similarity, common fate, continuity, closure, and prägnanz.

Baca pos lengkap.

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

Bookmarklet: Chrome DevTools trace page

Paul Kinlan

A simple bookmarklet that will performance trace the current page and open in an hosted devtools instance

Read More

Hosting Puppeteer in a Docker container

Paul Kinlan

A simple docker container that can host an instance of puppeteer and a custom app.

Read More

domcurl: curl + JavaScript

Paul Kinlan

A curl-like utitly that runs JavaScript

Read More

Using CSP Nonces effectively with service worker

Paul Kinlan

CSP nonce values can help you securely run inline content on you site. But it can be hard to get it working with Service Workers... until now.

Read More

Breaking down silos by sharing more on the web

Paul Kinlan

Artikel ini lebih dari satu tahun terlambat. Itu terjebak dalam draf saya untuk waktu yang lama, namun saya pikir idenya adalah sesuatu yang perlu kita selesaikan pada 2018. Juga ternyata masalah lain muncul pada tahun lalu yang membuatnya sedikit lebih relevan. Saya berada di Indonesia pada awal 2016 dengan iseng mengobrol dengan pengembang dan muncul dalam percakapan bahwa web kacau (mereka adalah kata-kata harfiah). Inti permasalahannya adalah pengguna hari ini, dan khususnya pengguna yang baru datang online untuk pertama kalinya, menciptakan konten di dalam silo.

Read More

The Web is my API

Paul Kinlan

Michael Mahemoff mengajari saya banyak tentang kemungkinan web. Sebelum bekerja dengan Mike yang saya buat di web dan saya memahami manfaatnya seperti keterkaitan dan penemuan, tetapi saya tidak pernah benar-benar memiliki gambaran lengkap tentang apa yang mungkin terjadi. Satu hal yang Mike katakan adalah “Web adalah API saya”, di mana dia berbicara tentang kemampuan untuk mengekspos situs Anda dan data Anda di suatu halaman melalui mikroformat dan data terstruktur lainnya dan dapat mengaksesnya secara langsung dari konteks browser lain, menggunakan XMLHttpRequest sederhana dan API CORS:

Read More

Reinventing Web Intents

Paul Kinlan

Saya tidak pernah melupakan kematian Web Intents. Saya selalu merasa bahwa masih ada masalah serius di web, kami membangun silo yang mengunci pengguna ke satu situs web dan kami tidak menghubungkan aplikasi kami bersama untuk membangun pengalaman yang lebih kaya. Kami memiliki tautan yang memungkinkan kami menavigasi ke situs lain, tetapi kami tidak menghubungkan aplikasi kami dengan fungsi yang dapat kami gunakan di situs kami. Baik itu memilih gambar dari layanan cloud untuk digunakan di aplikasi Anda, atau mengedit gambar di editor pilihan pengguna; kami hanya tidak menghubungkan layanan kami dengan cara kami menautkan halaman kami.

Read More

Web sites as unintended silos: The problem with getting data in and out of the web client

Paul Kinlan

It's nearly impossible to get consistent get data in and out of a web app on the client

Read More

Progressive Progressive Web Apps

Paul Kinlan

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

Read More

Building a simple PubSub system in JavaScript

Paul Kinlan

Dalam proyek baru-baru ini, membangun layanan web push Saya ingin UI saya menanggapi acara tingkat aplikasi (secara semantis jika Anda mau) karena ada beberapa komponen yang memerlukan informasi dari sistem tetapi tidak tergantung satu sama lain dan saya ingin mereka dapat mengelola diri mereka sendiri terlepas dari ‘logika bisnis’. Saya melihat ke banyak alat yang berbeda untuk membantu saya, tetapi karena saya sering memiliki kasus sindrom NIH yang berat dan fakta bahwa saya pikir orang dapat menerapkan elemen infrastruktur mereka sendiri dengan cukup cepat, saya memutuskan untuk dengan cepat melumpuhkan klien-sederhana layanan PubSub samping & mdash; itu bekerja cukup baik untuk kebutuhan saya.

Read More

Barcode detection using Shape Detection API

Paul Kinlan

Minggu yang lain saya berbicara tentang Deteksi Wajah melalui API Bentuk yang ada di saluran Canary di Chrome. Sekarang deteksi barcode ada di Chrome Canary juga (Miguel adalah pahlawan saya;) Barcode sangat besar! mereka berada di hampir setiap produk yang kami beli. Bahkan yang banyak difitnah QRCode sangat besar di luar AS dan Eropa. Barcode dan QRcode menyediakan cara sederhana bagi Anda untuk menjembatani dunia fisik dan dunia digital dengan mentransfer sejumlah kecil data antara media dan Anda.

Read More

Ideas for web apps with FFMPEG and ffmpeg.js

Paul Kinlan

Saya baru-baru ini membangun Progressive Web App yang mengambil screencast dari perangkat Android Anda dan kemudian membungkus video dalam bingkai perangkat menggunakan FFMPEG.js seperti: Saya juga berhasil memilah membangun ffmpeg.js sehingga dengan relatif mudah, buat build yang dioptimalkan khusus dari ffmpeg dan jalankan di browser. Dua hal bersama-sama saya pikir menghadirkan banyak peluang untuk membangun beberapa Progressive Web Apps kecil baru yang mendorong apa yang menurut kami web mampu berkenaan dengan memanipulasi audio dan video.

Read More

Building ffmpeg.js for Ubuntu

Paul Kinlan

FFMPEG.js adalah proyek luar biasa dan membantu saya membangun salah satu proyek terbaru saya: Kerangka Perangkat. Ini pada dasarnya membangun ffmpeg (dengan set default yang bagus untuk menjaga ukuran kecil & mdash; sekecil mungkin). Jika build default tidak mendukung filter dan pembuat enkode yang Anda butuhkan, maka Anda harus membuatnya sendiri. Ini lebih merupakan catatan untuk saya di masa depan, tetapi inilah yang saya lakukan untuk membuatnya bekerja. (Catatan: Saya mencoba di macOS sierra dan mendapatkan kesalahan kompilasi).

Read More

SLICE: The Web

Paul Kinlan

What are the properties that make the web the web? How can we keep differentiating from native to stay relevant in a mobile world?

Read More

Goodbye Jekyll, Hello Hugo

Paul Kinlan

Ruby frustrations and performance have frustrated me for a long time. Experimented with Hugo and ported blog in about 3 hours

Read More