February 11, 2006 21:46
Programming, Java, Blog, ATG Dynamo
I wrote my blog from the ground up. It seemed like an interesting technical exercise at the time. Now I have actual content and people who comment, I'm in a much better position to appreciate the benefits and drawbacks.

Plus: I know exactly what's going on. It does exactly what I want.
Minus: If something doesn't work, I can't draw on a user community to fix it for me.
Plus: I can use the blog as a proving ground for new technology.
Minus: Spammers also learn new technology.

I thought I was very clever for writing my own blog, because spammers were oriented against WordPress and Blogger and wouldn't bother with as small a target as one custom written blog. I failed to take into account that spammer technology would advance to the point where they would figure out how to act like users and hit a comment button without regard to the back end technology.

I tried cleaning out the spam manually. This is like trying to stop the tide with a bucket. The problem is to come up with a comment submission scheme that spammers cannot hack, and that I need to think about.

In the meantime, I've disabled comments altogether. And in lieu of deleting the comments by hand, I've used this problem as an opportunity to think about how to do ad-hoc deletes from the repository.

Hence the BeanshellAdminService. This little beauty runs in the AdminServer, and allows me to run beanshell scripts on the server. It's so convenient that I can't believe I didn't think of it years ago. For development, it lets you do just about anything.

admin

I've uploaded it to the usual place. This is useful for your normal services as well. You can override the admin servlet to set your own parameters for the interpreter, so if there's a function that you want to pull in or some parameters that you want to set, you can set them with an anonymous subclass. Best to do that from another module though, so you don't inadvertently deploy scriptable code to production...

« Yahoo Widgets | Home | Time tracking for programmers »

name
url