It’s now possible to download from Google the full text of all issued U.S. patents back to 1976 (here) and all published U.S. patent applications back to 2001 (here). Getting anything useful out of them is not a task for the faint of heart — they use a fairly complicated XML schema, which has changed several times, and it’s a lot of downloading (about 70G, zipped, for 2007 to the present).

To put all that data into a form convenient for searching and extracting statistics, I wrote a Python utility that reads the XML, parses it into a standard set of fields, cleans up most of the unicode weirdnesses, and outputs everything into a single large text file, one field per line, each line beginning with a four letter identifier indicating what part of the document it is. I have posted the latest version on github here, with detailed instructions/description. More »

I finally bit the bullet and set up a WordPress blog, having been reluctantly convinced that the ease of posting more than compensates for the disadvantages, which in my opinion are many, but I won’t go into them here, except to the extent that some of them are apparent from what follows.

I figured that I would start by moving a few older posts from my old blog.

Back when I was still teaching Java, I wrote a simple applet demo program that computed and displayed the evolution of one-dimensional cellular automata, using the 8-bit rule scheme described by Stephen Wolfram in A New Kind Of ScienceI described it in a blog post at the time, with a link to the Java source code and the applet running embedded at the end of the post.

Java applets were never a very satisfactory way of embedding functionality into a web page. There were always just too many ways for them to not work in a particular browser running a particular version of Java.

Now, however, it seems Oracle has raised its game — now applets don’t work in any browser. I discovered this when I went back to the original post and found that instead of the applet, what appears is a message that “Your security settings have blocked an untrusted application from running.” More »