Calais is a free web service from Clearforest, a Reuters company, that can perform semantic analysis on any English text. It uses natural language processing to extract concepts and relationships from the text. It's been around for a few months, but there's been very little developer activity around it, and even fewer completed applications using the technology.
Not finding any other work to build on, I wrote my own PHP class for extracting tags from content with Open Calais' API. You can
get the source and read more here. This class takes a block of text or HTML, sends it to Open Calais or parsing, and extracts all of the entities (things like peoples' names, companies, technologies, etc.). It returns a multidimensional array organized by entity type.
There's more Open Calais can do, but I hope this class contributes something to those PHP developers that'd like to start using it but had no place to start with the lightweight documentation and eerily quiet official forums. I plan on putting this class to work as an auto-tagging plugin for WordPress posts. I still need some time to figure out how to integrate that into the new authoring interface of WP 2.5, which this blog is now running on.
I was going through the
popular pages report for
Website Goodies when I came across something strange. Looks like something written in a non-western character set... coming up as a page of my site? Turns out
doseo.org copied the HTML and images for Website Goodies and filled in (mostly) their own content. They even left the copyright notice and W3Counter tracking code. It's wholesale copyright infringement of course, but I doubt this really hurts me enough to be worth bothering about.
Dealing with characters outside the ASCII range on the web is tough. It's tough in other environments too, but particularly for web applications since text needs to move through so many places without being mangled — from user input, through JavaScript, into and out of PHP and string manipulation functions, into and out of databases. If you're not careful, the text you start with isn't what you'll end up with after you're done handling it. That was the case with
W3Counter for a long time, but not any longer. I'll tell you how.
Continued »

Campaign Monitor's released their 2007
Guide to CSS Support in Email, a comprehensive study of CSS support by both desktop and webmail clients. This guide is an essential for anyone sending HTML mails out, especially in wide distribution as part of a mailing list or e-mail marketing.
Continued »
Where the Hell is Matt?
Another YouTube viral marketing video. Did you notice the Stride gum logo appear several times? Would you have noticed it if I didn't mention it?
Continued »
Sometimes dynamic elements of a page can slow down page loading or use too many resources for re-running the code every page load to be practical. The sidebar of this site touches four databases to pull up the stats it shows, and the counter I just added to the header gets its count from a remote XML API. Caching data or blocks of HTML with files is an easy solution.
Continued »
The end of the year is the perfect time to stop and take a "big picture" look at just how much I've spent on search advertising, what that money has bought me, and what changes I should make in the new year. While I purchase advertising for my websites from many search engines, ad networks and individual websites, I decided to start by focusing on the top three search engines. MSN AdCenter didn't open until mid-2006, but what results I do have from them are interesting.
Continued »
I was at an early Christmas party with family most of the day so only accomplished one thing: bar charts. I'd like to finish this first report screen before moving on, as a lot of what I write will be reused, and it desperately needed a graph of some sort.

Continued »
As you might've guessed from the comments in the screenshot in my
Development Environment post, I was setting up to start this project.

Continued »
I'm working slowly to redesign the W3Counter website and interface, cleaning things up, giving it a more distinct appearance, and integrating the logo from a design contest held on SitePoint.
I'm also negotiating terms with a Flash graphing package for distribution of their SWF files with a downloadable version of W3Counter, or if that proves too costly, writing an entirely HTML & CSS based graphing library for it to use in downloadable versions.