Hello.

I am Paul Kinlan.

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

Understanding Storage Quota | Workbox

Paul Kinlan

Jeff Posnick schreibt in 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.

Vollständigen Beitrag lesen.

Service-Mitarbeiter sind ein erstaunlicher und integraler Bestandteil des Web-Ökosystems, aber es gibt immer noch einige Fehler - und das ist einer von denen, die Sie beißen können, wenn Sie dies nicht im Voraus wissen.

Es ist großartig, Tools wie Workbox zu sehen, die damit umgehen und Sie informieren können, damit Sie wissen, was passiert.

Paul Kinlan

Trying to make the web and developers better.

RSS Github Medium

Emscripten's compiled Web Assembly, used minimally

Paul Kinlan

Sam Thorogood auf Dev.to schreibt,

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.

Ganzen Beitrag lesen.

Ich denke, wir alle sehen das Potenzial von Wasm, etwas für viele von uns, viele der anderen Plattformen, die jetzt ins Web kommen können, sind uns völlig fremd, und wir müssen diese Tools wirklich lernen, um die Erfahrung der Entwickler von Wasm zu verbessern und imo bieten vorgefertigte Bibliotheken, die “traditionelle Webentwickler” einfach verwenden können.

Designing with the Gestalt principles

Paul Kinlan

Mustafa für Google Chrome, schreibt auf Dev-Channel,

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.

Vollständigen Beitrag lesen.

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

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

We need DOM APIs in Workers

Paul Kinlan

If we are to build HTML in Workers then we need some 'DOM' in them.

Read More

A simple clientside templating langauge

Paul Kinlan

Templating libraries needn't be so hard

Read More

Challenges for web developers

Paul Kinlan

Summary of the challenges that I beleive we developers face every day.

Read More

Breaking down silos by sharing more on the web

Paul Kinlan

Dieser Artikel ist über ein Jahr zu spät. Es war lange in meinen Entwürfen stecken geblieben, aber ich denke, die Idee ist etwas, was wir bis 2018 lösen müssen. Es stellt sich auch heraus, dass im letzten Jahr andere Themen entstanden sind, die es ein bisschen relevanter machen. Ich war Anfang 2016 in Indonesien und plauderte mit den Entwicklern und es kam im Gespräch heraus, dass das Internet geschraubt ist (das waren die wörtlichen Worte).

Read More

The Web is my API

Paul Kinlan

Michael Mahemoff hat mir viel über die Möglichkeiten des Internets beigebracht. Vor der Zusammenarbeit mit Mike baute ich im Web auf und verstand die Vorteile wie Linkbarkeit und Entdeckung, aber ich hatte nie wirklich ein vollständiges Bild davon, was möglich wäre. Eine Sache, die Mike sagte, war “das Web ist meine API”, wo er über die Möglichkeit sprach, Ihre Website und Ihre Daten auf einer Seite über Mikroformate und andere strukturierte Daten verfügbar zu machen und direkt darauf zugreifen zu können ein weiterer Browserkontext, der ein einfaches XMLHttpRequest und die CORS API verwendet:

Read More

Reinventing Web Intents

Paul Kinlan

Ich bin nie über den [Tod von Web Intents] hinweggekommen (0). Ich habe immer das Gefühl, dass es im Internet immer noch ein ernstes Problem gibt, wir bauen Silos, die den Benutzer auf einer Website sperren und wir verbinden unsere Apps nicht miteinander, um reichere Erfahrungen zu sammeln. Wir haben Links, die es uns ermöglichen, zu einer anderen Website zu navigieren, aber wir verbinden unsere Apps nicht mit Funktionen, die wir auf unseren Websites verwenden können.

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

In einem kürzlichen Projekt, das einen web push Dienst aufbaute, wollte ich, dass meine Benutzeroberfläche auf Ereignisse auf Anwendungsebene reagiert (semantisch, wenn Sie so wollen), weil es einige Komponenten gab, die Informationen benötigen Das System ist aber nicht voneinander abhängig und ich wollte, dass sie sich unabhängig von der “Geschäftslogik” selbst verwalten können. Ich habe mir viele verschiedene Tools angeschaut, um mir zu helfen, aber weil ich oft einen schweren Fall des NIH-Syndroms habe und die Tatsache, dass ich denke, dass Leute ihre eigenen Infrastrukturelemente ziemlich schnell implementieren können, beschloss ich, schnell einen einfachen Client zu knacken- Seite PubSub Service & mdash; es funktionierte ziemlich gut für meine Bedürfnisse.

Read More

Barcode detection using Shape Detection API

Paul Kinlan

Die andere Woche sprach ich über Gesichtserkennung über die Shape-API, die in Chrome auf dem Kanarischen Kanal ist. Jetzt ist die Barcode-Erkennung auch in Chrome Canary (Miguel ist mein Held;) Barcodes sind riesig! Sie sind auf fast jedem Produkt, das wir kaufen. Selbst der viel geschmähte QRCode ist außerhalb der USA und Europa riesig. Der Barcode und der QRcode bieten eine einfache Möglichkeit, die physische Welt und die digitale Welt zu überbrücken, indem kleine Datenmengen zwischen dem Medium und Ihnen übertragen werden.

Read More

Ideas for web apps with FFMPEG and ffmpeg.js

Paul Kinlan

Ich habe vor kurzem eine Progressive Web App erstellt, die einen Screencast von Ihrem Android-Gerät und dann das Video in einen Geräterahmen einbricht unter Verwendung von FFMPEG.js so: Es ist mir auch gelungen, [fffmpeg.js] zu erstellen (https://paul.kinlan.me/building-ffmpeg.js/), um relativ einfach benutzerdefinierte optimierte Builds von ffmpeg zu erstellen und führe es im Browser aus. Die beiden Dinge zusammen bieten meiner Meinung nach eine Menge Möglichkeiten, um einige großartige neue Progressive Web Apps zu entwickeln, die das, was das Web unserer Meinung nach im Hinblick auf die Manipulation von Audio und Video zu bieten hat, vorantreiben.

Read More

Building ffmpeg.js for Ubuntu

Paul Kinlan

FFMPEG.js ist ein erstaunliches Projekt und es hat mir geholfen, eines meiner neuesten Projekte aufzubauen: Device Frame. Es erstellt im Wesentlichen ffmpeg (mit einer guten Anzahl von Standardeinstellungen, um die Größe klein zu halten, so klein wie möglich). Wenn das Standard-Build die benötigten Filter und Encoder nicht unterstützt, müssen Sie es selbst erstellen. Das ist für mich in der Zukunft eher eine Notiz, aber das habe ich getan, um es zum Laufen zu bringen.

Read More