talideon.com

Wood-chuckin’ wood-chucks akimbo

Entries for November 2004

November 5, 2004 at 7:01PM Conlang deluge

I haven’t been keeping up with the CONLANG mailing list. I’ve got around 550 posts to catch up on this weekend, and it’s only going to mount up even more. And that’s after trying to disregard my previous backlog.

I really need a laptop with a working keyboard again so I can catch up. [sad]

November 9, 2004 at 12:32PM Connectivity back!

Yay! Our DSL line at work has been going down more than a norrie with a Honda Civic. Now to catch up on all that commenting and stuff.

November 10, 2004 at 3:42PM Spammer’s posting vaguely useful stuff? Wow!

I took a look at the latest comments list on the site, and some rather strange stuff popped up: comments that appeared to give useful information, but were actually spam. Here’s a few examples:

From “The Weight Plan”: How did I get here? Do you simply need help learning how to eat better? Probably. But if you eat poorly as a result of emotional, mental, or spiritual problems, they may have to be addressed before you can make any real progress with weight loss. From here.

From “Keith Reveals More Good Ideas: Aggregator Server”: What is RSS? RSS stands for Rich Site Summary. It’s an XML definition which allows websites to syndicate headlines to other websites. You can create a NewsApp and then select from newsfeeds that we know about or you can enter new newsfeeds. The NewsApp will visit the feeds several times a day and add their headlines to our database. You can visit your NewsApp whenever you want and read the latest headlines. From here.

From “Assigning Categories with Bayesian Filtering”: The first discovery I’d like to present here is an algorithm for lazy evaluation of research papers. Just write whatever you want and don’t cite any previous work, and indignant readers will send you references to all the papers you should have cited. I discovered this algorithm after “A Plan for Spam”[1] was on Slashdot. Ripped from Paul Graham’s Better Bayesian Filtering. At least they’ve a sense of irony. [wink]

From “Merant SequeLink JDBC Driver and ColdFusion horribleness”: IBM WebSphere Application Server supports the use of Merant SequeLink with Oracle databases. The Merant product provides the Oracle database with JDBC functionality.

From “Martin Fowler on Closures”: Martin Fowler has written a nice simple piece which gets across the major points: This bit of spam included a pretty decent explaination of what a closure is from here. See what I mean?

And finally, from “Sage: I’m loving it!”: I worked on RSS Bandit this weekend. I can now officially state that it now has more features than any other client based RSS news aggregator on the market. A bit of text that looks strangely familiar...

What they seem to be doing is analysing the text, and plonking up some other chunk of text that fits in with the topic matter. There’s no links in the body, instead they’re trying to pump up their Google Mojo with links in the site field. Naughty!

This stuff is also poison for a bayesian filter. Bad spammers, but very clever. I’m deleting the lot though. You blokes have heard of copyright infringement, haven’t ye? But then, being lower than pond scum, that sort of thing isn’t something ye worry about, is it?

What puzzles me is why they even bother: on pages where comments are displayed on this site, browsers are told they can index them, but can’t follow links, so there’s no opportunity on this site for spamming to work in their favour. NOFOLLOW = No Mojo.

November 29, 2004 at 2:24PM I’ve finally found an excuse to use reflection in Java.

I’ve a project here at work. I need to write a ColdFusion custom tag in Java to talk to a remote server. This tag needs to handle a bunch of different requests and responses, but putting all that code in the one class would be a bit messy, and then there’s the problem of what happens when I need to add new handler code to it.

So I’m using this as an excuse to use the Java Reflection API for the first time. It’s going to make the job of implementing all this much simpler, and I’m not just doing it just because I can.

The handlers simply register themselves with the tag class, which acts as a dispatcher, informing it of who it is (with a Class object), and what message it can handle. Then when the tag gets a request or needs to handle a response, it simply looks up the message to get back the corresponding class, and creates and instance (though I might do pooling later if I find a good reason), and pushes all the hard work onto the handler class.

This will rock!

November 29, 2004 at 2:53PM Pomegranate Juice

Yum!