Hello.

I am Paul Kinlan.

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

I love the web. The web should allow anyone to access any experience that they need without the need for native install or content walled garden.

Chat GPT Code Interpreter and Browser Compat Data

Paul Kinlan

I explored using ChatGPT's Code Interpreter to analyze browser compatibility data from the BCD project. My goal was to determine the latest released versions of different browsers. While the initial results weren't perfect, through a few iterations of feedback, the Code Interpreter generated a Python script that accurately extracted the desired information. I was impressed by the speed and efficiency of this process, as it accomplished in minutes what would have taken me much longer manually. The generated code also provided a starting point for further analysis, like visualizing browser release timelines. Despite minor imperfections, the Code Interpreter proved to be a powerful tool for quickly extracting and analyzing data.

Read More

Queries used for feature policy post

Paul Kinlan

This post explores the usage of Feature Policy and Permissions Policy headers on the web. The data shows that 151,159 websites set either header on mobile devices as of June 1, 2022. A more detailed analysis delves into the specific directives used within these policies, examining their prevalence across different website rankings. The queries provided offer a way to analyze the adoption of these important security headers and gain insights into how developers are utilizing them to control browser features and permissions.

Read More

How to develop a CDR generator

Paul Kinlan

This post details how I developed a Call Detail Record (CDR) generator for my final year project on telecoms fraud. The generator creates realistic CDRs using a simplified data model, focusing on caller, callee, call type, start time, and duration. Various user models (high, low, business, etc.) are configured with parameters like average call cost, standard deviation, and call frequency for different call types (local, national, etc.), along with likely call times. Random numbers are then generated within these parameters to create a diverse set of CDRs that accurately reflect the modeled behavior.

Read More