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.

tldr-site.vercel.app

Paul Kinlan

A simple service to summarize search and news snippets.

Read More

IndexedDB as a Vector Database

Paul Kinlan

I created a simple vector database called "Vector IDB" that runs directly in the browser using IndexedDB. It's designed to store and query JSON documents with vector embeddings, similar to Pinecone, but implemented locally. The API is basic with insert, update, delete, and query functions. While it lacks optimizations like pre-filtering and advanced indexing found in dedicated vector databases, it provides a starting point for experimenting with vector search in the browser without relying on external services. The project was a fun way to learn about vector databases and their use with embeddings from APIs like OpenAI.

Read More

Building Ask Paul

Paul Kinlan

I built Ask Paul, a generative AI demo that answers front-end web dev questions using my content. It leverages Polymath-AI to index content, find related concepts, and generate summaries by creating embedding vectors, using cosine-similarity, and querying OpenAI. The implementation has a UI, a Polymath Client, and a Polymath Host. It's super cool how accessible this tech is now!

Read More

Browser Bug Searcher

Paul Kinlan

Check out Browser Bug Searcher, a tool created by Robert Nyman and Eric Bidelman that helps you easily search for bugs across major browser engines. It's a super handy resource for staying up-to-date on the status of web platform features. I wish more bug trackers, like crbug and webkit, had easy RSS feed options like this so I could integrate them into my personal dashboard.

Read More

Grep your git commit log

Paul Kinlan

Finding code that was changed in a commit

Read More

The discovery problem.

Paul Kinlan

Does the discovery problem of app stores, search and everywhere else only affect those who don't or can't market?

Read More

Long Tail is a Long Tale

Paul Kinlan

I read Chris Anderson's "Long Tail" and found it insightful, albeit a bit verbose. While many of the concepts about choice, aggregators, and filters felt obvious, the book effectively highlights their importance. I realized I'd already implemented a "long tail" approach on this blog by creating a tag directory (http//:www.kinlan.co.uk/tag/{anytag}) to link related posts and resources. This led to the development of Topicala (http://www.topicala.com/), a meta-search engine that aggregates results from multiple search engines based on tags.

Read More

Topicala Needs your Help

Paul Kinlan

I'm building a hierarchical tag directory for Topicala and need your help populating it. You can add tags via the web interface or by using the API: http://www.topicala.com/api/add/[TagName] to add a new tag and http://www.topicala.com/api/add/[ParentTag]/[ChildTag] to create parent/child relationships. Your contributions will eventually allow users to filter search results more effectively.

Read More

Topicala OPML Results are LAUNCHED!

Paul Kinlan

I've just added OPML output to Topicala, my topical result aggregation engine. Now, all results displayed on the site are also available in OPML format. Check it out and let me know what you think!

Read More

Topicala Is LAUNCHED!

Paul Kinlan

I'm excited to announce the launch of my new project, Topicala! It's a topical search aggregator where you enter a topic and discover all the related information. It's almost complete, just needs a few bug fixes and OPML output. Try it out with some example searches and give me your feedback!

Read More

I wish that Blogger had....

Paul Kinlan

I need a global search and replace function in Blogger so I can easily update content across all 300 pages of my blog. Currently, I have to manually edit each page, which is time-consuming.

Read More

Google Search: find file extension with regex in c#

Paul Kinlan

This post addresses a common search query: how to find file extensions using regular expressions in C#. I provide several regex examples for this purpose, including variations for finding extensions only at the end of a string and for specifically finding three-letter extensions.

Read More

Microformat proposal

Paul Kinlan

I'm exploring the idea of a "Questions and Answers" microformat to add semantic meaning to questions and their corresponding answers within text. I propose using <span class=qa><span class=question>Where does paul kinlan live?</span><span class=answer>liverpool</span></span> as a potential structure. This could be beneficial for search functionality, allowing search engines to index question-answer pairs instead of entire pages. I'm looking for feedback on whether this is a valuable concept, worth pursuing, or if it has already been discussed elsewhere.

Read More

Openseach and IE7 Beta 2 update

Paul Kinlan

I've updated my Opensearch implementation based on feedback from Michael Fagan. Changes include correcting the short name length, fixing capitalization issues, and adding an RSS search URL using Google Blog Search. Unfortunately, full A9.com integration isn't possible because the search engine isn't on my domain. While proxying results is an option, I feel that would be unfair to Google.

Read More

Google Adsense for Search and IE7 Openseach Provider

Paul Kinlan

I contacted Google about using my AdSense account with IE7's SiteSearch through OpenSearch. Unfortunately, they don't currently allow anything but their own search boxes. I think this is a limitation and they said they'd consider it, but for now, using AdSense with IE7's OpenSearch provider is not permitted.

Read More

Google Search and IE 7 Search Provider

Paul Kinlan

I've added a custom search provider to my blog using Google Search for Internet Explorer 7 Beta 2 users. It lets you easily search my site's content. The provider is set up using an OpenSearch XML file linked in each page's header. Not sure about Google's terms on this, so I'll remove it if there's an issue. Hopefully, this example helps others implement search providers.

Read More

Google Adsense For Search Limits Use [In a Bad Way]

Paul Kinlan

I wanted to use IE7 Beta 2's custom search providers with my Google AdSense for Search account to create a site search that generates revenue. Unfortunately, Google's terms of service explicitly prohibit this by requiring search queries to originate directly from user input in the search box. This restriction limits the potential of OpenSearch integration with AdSense for Search, which is disappointing.

Read More

Update to AJAX Tagger OPML Ouput

Paul Kinlan

I've updated my Ajax Tagger 2.0 tool! It now provides related search results and outputs them as OPML, including RSS feeds for search engines like MSN, Technorati, and Google Blog Search. I'm looking for more search engines that offer RSS output. If you know of any, especially for Google or Yahoo, please share!

Read More

Google Search: .net framework for xbox 360

Paul Kinlan

This post addresses the numerous Google searches related to ".NET framework" and "Xbox 360." Despite the search traffic, I currently have no information on this topic. It seems unlikely that .NET Framework would be available on the Xbox 360 due to the console's different chip architecture and the recent introduction of x86 64-bit support in .NET 2.0. However, I remain open to the possibility.

Read More

Google Search: c# googledesktop

Paul Kinlan

This post discusses a reader's search query related to C# and Google Desktop. While I haven't personally worked with Google Desktop plugins, I found a relevant article in the November 2005 issue of Dr. Dobb's Journal. The article, "Improving Search Precision Using Google Desktop Search 1.0," details how to use C# to search the Citeseer database with Google Desktop, including updates for version 2.0. The article is available on www.ddj.com, but may require a subscription.

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

Google Search C#

Paul Kinlan

This blog post explores the meaning behind the Google search query "oops c#." It questions whether the searcher was looking for information on Object Orientated Prototyping Systems, Object-Oriented Programming Systems, or general C# errors. The author requests that the original searcher contact them to clarify the intent behind their query.

Read More

Yahoo Context Search Was down

Paul Kinlan

My Wikipedia-based AJAX Tag and AJAX Tag 2 scripts were temporarily broken due to an issue with Yahoo's service. Big thanks to the Yahoo developer team, especially Toby Elliot, for quickly resolving the problem! Of all the Web 2.0 APIs I've used, Yahoo's has the most helpful and responsive support.

Read More

Tags and Tagging

Paul Kinlan

I've been pondering the use of tags lately, and noticed a lack of diversity in tagging practices. Many use tags for blog promotion or linking related content. I favor the latter, as it aids in content discovery. However, popular tags on sites like Technorati are often too broad (e.g., "books","blogs") making them less useful for finding niche communities. I propose using more specific sub-tags alongside broader ones. For example, if blogging about Asimov's Foundation series, include both "Asimov" and "Foundation Series" as tags. Tools like my Ajax Tagger and tagyu.com can help suggest relevant tags. I encourage everyone to use a wider range of tags to enrich the tag space and improve content discoverability.

Read More

Start Of The Requirements

Paul Kinlan

This post kicks off documenting the requirements for the next version of AJAXTagger. The goal is to create a successful application (by my definition) by outlining features across functional areas, UI/UX, client/server-side business logic, data access, and dependencies. Key features include easy journal tagging, related information retrieval (tags, articles, blogs, websites), diverse search provider integration, streamlined results presentation, image inclusion, and efficient article pulling/saving. The UI should minimize user effort, provide immediate feedback, and offer information hiding. Performance is crucial, targeting IE6/7 and Firefox, with emphasis on minimal server round trips, client-side optimization, and error handling. Data storage is preferably client-side, with external access optimized for speed and resilience. External dependencies include various search engines/services, while internal constraints involve limited server access and reliance on HTML, JavaScript, and XmlHTTPrequest.

Read More

Minor Test with AJAX Tagger

Paul Kinlan

I've been experimenting with the AJAX Tagger and integrated it with Wikipedia to generate related article links. It's pretty quick, generating relevant links in about a minute. There's a minor issue where sometimes the links point to Yahoo search results instead of directly to Wikipedia, which I'm investigating. I'm also looking for feedback on how to order the tags and related documents, so feel free to email me or leave a comment.

Read More

MSN Search API's Are up

Paul Kinlan

The MSN Search API is now available. I haven't explored it fully yet, but here are some useful links: Why MSN Search?, the MSN Search API download, the SOAP service description, and the developer registration form (requires a .Net Passport). The API appears to be a SOAP service, so I'll likely need to create a proxy for direct calls. The download includes documentation and sample projects. You'll need an application ID, similar to Yahoo's. If you know how to use SOAP with JavaScript, please email me!

Read More

More on MSN Search API's

Paul Kinlan

This post compares the query limits of free search APIs from different providers. It highlights that MSN Search API reportedly allows up to 10,000 queries per day, but whether that limit is per API or in total is still unclear. The post also notes that Google's Search API allows 1,000 queries per day, Yahoo's APIs allow 5,000 queries per API per day, and Amazon's allows a generous 86,400 queries per day (calculated as 1 query per second). More investigation is needed to confirm the exact limit for MSN.

Read More

Minor Test in the AJAX Tagger

Paul Kinlan

I've added a new search feature to my site that uses the Yahoo API to find related articles based on keywords. You can test it out at http://www.kinlan.co.uk/AjaxExperiments/AjaxTag. It's a work in progress, but more features are coming soon!

Read More

MSN are launching APIs

Paul Kinlan

MSN is launching APIs on Tuesday, September 13th, allowing developers to access their search results. More information will be available on the MSN developer site. I plan to explore these APIs and discuss my findings on this blog and on tagger.kinlan.co.uk. I hope they offer innovative features beyond basic search result access, similar to Yahoo's related searches, contextual searches, and term extraction.

Read More

Technorati, Booooooo [Part 2]

Paul Kinlan

In this follow-up post, I want to clarify the issue I had with Technorati. While some of the search results I was looking for are now appearing, my main concern remains the lack of communication from Technorati Support. A simple email explaining the situation, such as a blacklisting, a temporary problem, or an indexing issue due to site downtime, would have been sufficient. Despite this, I still appreciate Technorati.

Read More

The Failures of my first AJAX Application: Part 1

Paul Kinlan

This post discusses the shortcomings of my first AJAX application. While it successfully implemented Technorati tags, it failed to provide related search functionality, which I believe is crucial for offering readers valuable external resources and further learning opportunities. I aim to address this in the next version by incorporating related searches via Yahoo's API and relevant quick links, enhancing the overall user experience and educational value of my blog.

Read More

Proxy Script To Yahoo Related Searches

Paul Kinlan

This blog post introduces a Perl proxy script that leverages the Yahoo Related Suggestions API. Given a search term, the script queries Yahoo and returns a list of related search terms. This can be used to enhance search functionality by providing users with additional relevant search options. An example is given using the term "Kinlan" and the post links to a previous entry describing a proxy for the main Yahoo search API. The provided code snippet demonstrates how to construct the API call using LWP and CGI, requiring a valid Yahoo App ID.

Read More

The Successes of my first AJAX Application: Part 7

Paul Kinlan

In this part of my series on my first AJAX application, the Technorati Tag Generator, I discuss its success in streamlining my blogging process. The generator significantly reduces the time I spend creating Technorati tags, saving me roughly 50 minutes per post. While I'm thrilled with this improvement, the current version lacks the Feedster and MSN search boxes present in my initial design. I plan to reintroduce these features in the next version, along with related search previews, to enhance the value and usability of my application. User feedback has highlighted the importance of these features, and their inclusion is crucial to achieving my goals for the project.

Read More

The Successes of my first AJAX Application: Part 5

Paul Kinlan

In this part of my series on my AJAX application, I'm discussing the impact of external APIs. My use of APIs has made me realize how much more API access I want! I'd love to see broader API availability from feed/blog companies for statistics, retail companies for catalogs, news corporations for news feeds, and search companies for both results and more interesting APIs (like Yahoo's). Essentially, I want a central directory of companies offering these services, recognizing that I'm a consumer of their data. I'm also realizing how many APIs (REST and SOAP) are out there that I could leverage. I envision adding more dynamism to my apps, like analyzing blog post keywords to see their popularity, potential ad revenue, and related keywords. I could then cross-reference this with other sources to give viewers more feedback, such as related blog importance, link counts, and other connections. I could even offer localized product information, best buy deals, or second-hand options based on keywords. This isn't revolutionary, but I need help finding lists of companies that offer web APIs and useful RSS feeds. Readers, please share your knowledge!

Read More

Feedsters API

Paul Kinlan

The Feedster API has potential, but it's unclear what its purpose is. It would be more useful if it allowed content searches and provided metadata about searches, such as the number of blogs or pages a term appears in. Additional features like showing top searches and providing search result counts could be valuable. The current API requires a private key, which necessitates a proxy script for security. A simpler authentication method like Yahoo's Application ID would be preferred. Despite some limitations, the ability to publish search results as an RSS feed is a nice feature.

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

Response to Comment From Rafer

Paul Kinlan

Thanks to Scott Rafer for the comment! I'm experimenting with providing topic search results rather than keyword searches to offer broader perspectives on a topic. RSS feeds are there because I like staying up-to-date, sort of like a personalized PubSub. I'm open to change though, so I'll experiment with adding color-coded boxes at the bottom of each post linking to Technorati tags, Feedster, and MSN Search results, all related to the post's topic to avoid tag spam.

Read More

New Start.Com

Paul Kinlan

I just completed all the questions on Start.com, and they gave me a link to their new beta site: http://www.start.com/myw3b/. It's supposed to be an all-in-one platform for RSS, search, info, and more. I'm really excited about this and the new Google services – they're making websites so much more interactive!

Read More