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.

Some clean-up new-year

Paul Kinlan

I've made a couple of small changes to the blog. I removed the personal journal section and added my projects to the RSS feed so you can see what I've been working on with Generative AI. Happy New Year!

Read More

Test post Video upload

Paul Kinlan

This is a test post to ensure video uploads are working correctly. If you can see the video below, the test was successful.

Read More

Adding "dark mode" to my blog

Paul Kinlan

I added dark mode to my blog! Inspired by Jeremy Keith, I used CSS custom properties and media queries to switch between light and dark themes based on the user's preference. I also included a fallback for browsers that don't support custom properties and a temporary CSS class for testing since Chrome DevTools didn't yet have dark mode emulation.

Read More

Editor.js

Paul Kinlan

I've migrated my Hugo blog's editor to Editor.js. It's a block-based editor, unlike classic editors, offering more flexibility and a Medium-like experience. Although I faced some challenges adapting the ES5 code from the NPM distribution (compared to the ES Modules examples), building the UI was relatively straightforward. Check out Editor.js for more details.

Read More

pinch-zoom-element

Paul Kinlan

I've just added the pinch-zoom-element web component to my photography blog. It's a tiny (~3kb), dependency-free custom element that allows for easy pinch-zooming on any HTML element. Check out the implementation on my blog (touch-enabled device/trackpad needed for testing) and see how simple it is to integrate! This element was crucial for the Squoosh app and perfectly exemplifies the power of web components for clean, reusable UI. I hope to see wider adoption of elements like these, especially for common use-cases like image zooming on e-commerce sites.

Read More

My blog's Service Worker and Caching Strategy Part 2

Paul Kinlan

In this follow-up post, I've revised my blog's Service Worker and caching strategy to address previous issues, particularly the Firefox incompatibility due to the use of waitUntil and a misunderstanding of cache.put. The updated strategy now correctly fetches from the network, caches the result, and serves content from the cache, falling back to the network request if not found. The code has also been improved for readability and reliability.

Read More

My blog's Service Worker and Caching Strategy

Paul Kinlan

This blog post discusses the implementation of a Service Worker for my blog, with a focus on the caching strategy. I've chosen a "Stale While Revalidate" approach, which prioritizes speed and resilience. The Service Worker intercepts network requests and serves cached content if available, while simultaneously fetching updated content in the background. This ensures the latest version is available after one refresh. The post also details the requirements considered when choosing this strategy, including development simplicity and compatibility with the existing hosting setup (Hugo and NGINX). The provided JavaScript code snippet demonstrates the Service Worker implementation.

Read More

Moving my blog to posterous

Paul Kinlan

I've migrated my blog from kinlan.co.uk to paul.kinlan.me, now powered by Posterous. Hoping this simpler platform encourages me to blog more frequently.

Read More

paul.kinlan.me

Paul Kinlan

This blog

Read More

Somebody already blogged my project!

Paul Kinlan

Excited to share that Xbox360homebrew blogged about my Paralax Engine Project! Hoping to release more code soon and get more people involved.

Read More

Iforgive.eu If or give.eu

Paul Kinlan

I've decided to create iforgive.eu, a C# ASP.Net 2.0 sample site, and document the entire process on my blog. This includes design, development, refactoring, and even my mistakes! I'll begin by outlining the site's purpose, planning its design, and employing a TDD approach. Follow along as I build this site from the ground up!

Read More

My Dad has Started a blog!

Paul Kinlan

My dad has started a blog about cycling and how it has helped him improve his fitness. He's lost over 4 stone (27KG) by combining cycling with the Lifestyle and Weight Management Service. Check out his blog at http://frank.kinlan.co.uk and leave him some feedback!

Read More

hCard

Paul Kinlan

I've added hCard, a microformat, to my blog. It makes my contact info machine-readable while still being visible to readers. It's basically an XHTML version of the vCard standard. I'm not totally sure I implemented it perfectly with the DIVs and spans, but check out the hCard creator tool if you're interested.

Read More

Topicala now has its own Blog!

Paul Kinlan

I'm thrilled to announce the launch of my new blog on topicala.com! Visit http://www.topicala.com/blog to stay updated on all the latest news and developments related to my Topicala aggregating search engine.

Read More

Rank 0?

Paul Kinlan

My blog has a Technorati rank of 0 with 236 links from 22 sites. Is this the best blog ever? I hope so!

Read More

Feed or Email Delivery

Paul Kinlan

I'm considering adding an email subscription option for blog updates, as an alternative to RSS/ATOM feeds. Would you subscribe to email updates if offered?

Read More

Note To Self

Paul Kinlan

A quick link to Heath Stewart's blog post on MSDN.

Read More

Books Blog

Paul Kinlan

I've started a new blog dedicated to book reviews using WordPress! Check it out at http://books.kinlan.co.uk. I'm quite impressed with WordPress's flexibility and plugin options, a definite upgrade from Blogger. I'm still working on some features, like automatically directing users to the correct Amazon site based on their location, but feedback is welcome!

Read More

Sphere Beta: Some inital comments

Paul Kinlan

I've just started testing the Sphere Beta Program. While I appreciate the related blogs feature, I find the blog post search results less helpful. When I search for terms like "AJAX", the related blogs are more relevant than the actual posts returned. I'm not sure keyword searches within blog posts are effective for me. I'd love to see features like RSS subscriptions for results, customizable date ranges (e.g., between 2 and 4 months ago), and a "find similar blog posts" search option.

Read More

What I am Doing About AJAXTag

Paul Kinlan

I'm changing the focus of AJAXTag. Instead of just giving users related information, I want to let readers explore and discover connections themselves. I'll create an interactive version of my blog, allowing users to generate an OPML file of related data. This is inspired by Memorandum, but focuses on user exploration within areas of interest. What are your thoughts?

Read More

Potential Upgrades to my Blog

Paul Kinlan

I'm planning some exciting upgrades to my blog! Soon, each post will feature a dynamically generated section at the end, pulling in related content like searches, blogs, images, and Wikipedia articles, all based on the post's context. No caching for now, but I'm considering it for the future. You'll also be able to subscribe to an OPML file containing an outline of all this related information for each post.

Read More

Quick Question about the Wikipedia Articles

Paul Kinlan

I'm seeking feedback on the AJAX Tagger I've implemented in my journal entries, specifically concerning the Wikipedia article links. Are they useful? Do you have any suggestions for improvement? You can email me at paul.kinlan@gmail.com or leave a comment.

Read More

First Public Comment and use of AJAX Tagger

Paul Kinlan

I just got my first comment from a stranger, Gaby de Wilde, on my AJAX Tagger! He even used it on his site. I'm grateful for the feedback and plan to incorporate his suggestions in the next version. Check out his blog to see it in action, and please send me any feedback you have!

Read More

The Failures of my First AJAX application: Part 7

Paul Kinlan

This is the seventh post in my series about the failures of my first AJAX application. My biggest failure? No one used it! I had these grand visions of tons of users, but it turned out I was the only one. So, I'm changing my strategy. I've started this blog to centralize all information about the AJAXTagger. My next step is promotion! I need users to try it, break it, and give me feedback. Email me or leave a comment with your suggestions!

Read More

Creating a Second Blog

Paul Kinlan

I'm launching a second blog dedicated to my AJAX Tagging HTML application, which you can find here: http://www.kinlan.co.uk/AjaxExperiments/AjaxTag

Read More

FeedBurner

Paul Kinlan

I encountered an issue where my FeedBurner RSS feed wasn't displaying any article content. I've implemented a fix, and you should now be able to access the feed through the FeedBurner icon at the top left of the title. Alternatively, you can subscribe to the ATOM feed at http://www.kinlan.co.uk/atom.xml.

Read More

Channel 9 Re-Design

Paul Kinlan

I'm a big fan of Channel 9, a Microsoft website showcasing developer insights. Their recent redesign is fantastic! They've moved from a traditional blog layout to a more concise "Most Recent" section, putting important content front and center. The new comment section design is also visually appealing, with a unique element that seems to break free from traditional HTML constraints. The addition of a tagging section, similar to Technorati, is a valuable feature, allowing users to easily see popular topics and gauge community interest. Overall, two thumbs up for the Channel 9 redesign – excellent work!

Read More

I really like parts of the design of this blog

Paul Kinlan

I'm considering redesigning my blog and like the single-post focus of penandthink.com/niggle. However, my blog has frequent posts, so I'm unsure if that style would work. I'm asking readers whether they prefer a blog with a single featured post or a list of recent posts (like my current design showing the last 30). Feedback can be sent to paul.kinlan@gmail.com.

Read More

The Successes of my first AJAX Application: Part 4

Paul Kinlan

This is the fourth installment of my AJAX application development journey. I integrated the Technorati API, focusing on the Tag Query to gauge keyword popularity and refine tag selection for better exposure. While the API was helpful, it lacked features like tag ranking and related tags, and the TagQuery's slow performance forced its removal. Future development will involve optimizing the TagQuery (limiting results or using an asynchronous call manager) and potentially requesting a lightweight metadata interface from Technorati.

Read More

Just a little something I am working on

Paul Kinlan

I'm developing an AJAX application to automatically generate Technorati, Feedster, and MSN search boxes with relevant tags for my blog posts. It's a JavaScript webservice queryer that uses results from one service as input for another. Currently, it only supports IE6/7 due to cross-domain data source import restrictions in Firefox. I'm exploring JavaScript code signing as a potential solution. The application integrates with Yahoo webservices, with plans to include Technorati and hopefully Feedster. There are security concerns regarding my Yahoo key. I aim to have a prototype available for feedback soon.

Read More

The Previous Entry Worked!

Paul Kinlan

My previous blog post was successfully created using Kinlan's Automatic Tag Generator (powered by Yahoo!'s Web service). I'm excited about this and plan to include a link to the Ajax app in the next post. I'm also experimenting with Yahoo search and Technorati integration. I decided to include tags in this post by popular demand.

Read More

Moved the Blog To Kinlan.co.uk

Paul Kinlan

I've moved my blog from Blogger to my own domain, kinlan.co.uk. I'm still using Blogger's software, but hosting it myself will give me better tracking. I'm very impressed with Blogger!

Read More