Friday, 30 April 2004

Light

Posted by at 9:49 PM in Moblog

Family Circle meets Dave Chappelle

familycircle-dave-chappelle
Posted by david at 6:59 PM in My Life With The Thrill Kill Kult

Supplementary Characters in the Java Platform

"Supplementary Characters in the Java Platform"
This article describes how supplementary characters are supported in the Java platform. Supplementary characters are characters in the Unicode standard whose code points are above U+FFFF, and which therefore cannot be described as single 16-bit entities such as the char data type in the Java programming language. Such characters are generally rare, but some are used, for example, as part of Chinese and Japanese personal names, and so support for them is commonly required for government applications in East Asian countries.
Posted by david at 3:21 PM in Internationalization

RE: Will RSS Readers Clog the Web?

In response to this Wired article, "Will RSS Readers Clog the Web?", any blog software developers (whether you're developing a news reader or blog software itself) unskilled in the art of Conditional GET for HTTP, please read, "HTTP Conditional GET for RSS hackers". That post details client and server behavior. Also, your blog server or blog software should be smart enough to handle the check for whether or not the client can handle GZIP'd content and send GZIP'd content appropriately. This can be done at the web server level (e.g. Apache mod_gzip) or the blog software level (e.g. blojsom's Compression filter).

Conditional GET cuts down on sending out any information at all if nothing has changed in the news feed. GZIPing the content cuts down on the amount of bandwidth used if you do end up sending bandwidth.

Support both!

Posted by david at 11:03 AM in blojsom ... all blojsom

Fun with the blojsom moblog plugin

I don't think I need to go into any more detail on the goodness that is blojsom 2.14, but in the next version, some simple tweaks to the moblog plugin make it easy to do the following. The only thing the current blojsom 2.14 version doesn't handle properly is the HTML text moblog entry. But that's been fixed as you can see by clicking on some of the links below.
  • Send plain text moblog entries
  • Send HTML text moblog entres: entry 1, entry 2 (with international characters)
  • Send moblog entries with images: entry 1, entry 2 (from the camera phone)
  • Turn off comments by including the proper meta-data in the body of the e-mail blog entry (the same could be done for trackbacks)
This is not an exhaustive list. I still need to add in the ability to set the category in the e-mail or else I'd be posting this via e-mail as well.

P.S. - I think we've also got the scheme to allow you to send updates to an entry through e-mail as well /images/emoticons/mozilla_wink.gif

Posted by david at 10:44 AM in blojsom ... all blojsom

Internationalization post for moblog

Iñtërnâtiônàlizætiøn post for moblog Testing Iñtërnâtiônàlizætiøn and HTML for the moblog plugin.

  • blojsom
  • blojsom
  • blojsom


Posted by at 12:55 AM in Moblog

E-mail with image

blojsom image ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.

Posted by at 12:49 AM in Moblog

HTML e-mail 3

HTML e-mail 3 HELLO WORLD

  1. item1
  2. item2
  3. item3

right

center

left

RED RED RED!

BLUE BLUE BLUE!

Hello again

Posted by at 12:49 AM in Moblog

HTML e-mail 2

HTML e-mail 2 HELLO WORLD

  1. item1
  2. item2
  3. item3

right

center

left

RED RED RED!

Posted by at 12:39 AM in Moblog

Plain e-mail 2

Hello world!
Posted by at 12:39 AM in Moblog

HTML e-mail

HELLO WORLD 1. item1 2. item2 3. item3 right center left
Posted by at 12:33 AM in Moblog

Testing HTML moblog e-mail

BOLD ITALIC Left aligned. Right aligned. Centered. 1. Item 1 2. Item 2 3. Item 3 * Item 1 * Item 2 * Item 3 RED. BLUE. GREEN. BOLD ITALIC Left aligned. Right aligned. Centered. 1. Item 1 2. Item 2 3. Item 3 * Item 1 * Item 2 * Item 3 RED. BLUE. GREEN. Testing HTML moblog e-mail BOLD
ITALIC

Left aligned.

Right aligned.

Centered.

  1. Item 1
  2. Item 2
  3. Item 3

  • Item 1
  • Item 2
  • Item 3

RED. BLUE. GREEN.
Posted by at 12:14 AM in Moblog

Testing plain moblog e-mail with image

This should work fine as well.
Posted by at 12:14 AM in Moblog

Testing plain moblog e-mail

This should work fine.
Posted by at 12:14 AM in Moblog

Thursday, 29 April 2004

The Baltimore Sun has extensive RSS support (and their feeds now validate)

As an update to this post, I wrote their feedback e-mail address on feed validation and sent them some code for the date format issues. Their response:
The baltimoresun.com rss feeds should validate now. Thanks for your help with the code.
Their feeds validate now.

You're welcome.
Posted by david at 10:36 PM in My Life With The Thrill Kill Kult

Our first blojsom issue in JIRA

I christened blojsom's JIRA instance this morning with our first issue since releasing blojsom 2.14.
Posted by david at 12:53 PM in blojsom ... all blojsom

Wednesday, 28 April 2004

HTML E-mail to blog

BOLD ITALIC CODE Right aligned. Left aligned. Centered. 1. Item 1 2. Item 2 3. Item 3 * Item 1 * Item 2 * Item 3 Indent. RED. GREEN. BLUE BOLD ITALIC CODE Right aligned. Left aligned. Centered. 1. Item 1 2. Item 2 3. Item 3 * Item 1 * Item 2 * Item 3 Indent. RED. GREEN. BLUE HTML E-mail to blog BOLD

ITALIC

CODE

Right aligned.

Left aligned.

Centered.

  1. Item 1
  2. Item 2
  3. Item 3
  • Item 1
  • Item 2
  • Item 3

Indent. RED. GREEN. BLUE
Posted by at 9:01 PM in Moblog

Spammers quotable quotes

Uh oh, it seems that spammers have started quoting famous people throughout the ages to pimp their products. They've probably been doing this for quite awhile now. I just got some spam with quotes from Aristotle and Margaret Thatcher.

Here's a quote you can use for your filthy diet scam spam, "I'm not fat. I'm big boned!" - Eric Cartman

Oh, and if it's around the holiday time, why not change up the same to use, "I'm not fat. I'm festively plump." - Eric Cartman

/images/emoticons/mozilla_laughing.gif

---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.

Posted by at 4:49 PM in Moblog

blojsom logo

---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.

Posted by at 2:13 PM in Moblog

Yes, you can use the moblog plugin for e-mail to blog

Just as I'm doing right now. Let's see if I can also auto-trackback to the blojsom 2.14 announcement.

blojsom rocks.

Posted by at 1:49 PM in Moblog

Tuesday, 27 April 2004

Shelter Skatepark footage: demos and team

The folks over at The Shelter have been posting new footage the past few weeks. If you want the quick links, here they are. Support your local skatepark.
Posted by david at 9:57 PM in Skateboarding Is Not A Crime

blojsom 2.14 available

Changelog. Download.

Executive summary: Fixes, better editing, comment and/or trackback auto-expiration *and* throttling, configurable ping URLs, new plugins (incl. moblog plugin).

blojsom. Simply the best.

- Fixed loading of a few properties files, most notably, blog.properties, which did not load properties in UTF-8. Honestly I don't know how I missed this one, but someone wrote and said, "I can't use Chinese characters in my blog name." and I said, "DOH!". Such a silly mistake given blojsom does excel in internationalization.

- Updated Velocity and FreeMarker dispatchers to allow for sharing of Velocity and FreeMarker templates, respectively, across users. For whatever reason, the code was in the JSP dispatcher and Groovy dispatcher to allow for sharing of templates, but not for the Velocity and FreeMarker dispatchers. Basically, this means you can have a /WEB-INF/templates directory and place templates like the the syndication format (Atom and various RSS formats) templates here instead of replicating them across users.

- Added meta-data support to the BlogComment and Trackback classes. Added support for loading of comment and trackback meta-data in the standard fetcher. At the moment, the meta-data captured in the Comment and Trackback plugins is the IP address of the person leaving a comment or trackback. Further down the road this will probably be useful for things like comment/trackback moderation or comment/trackback approval.

- Added Markdown plugin to allow you to use Markdown syntax in your blog entries. Markdown (http://daringfireball.net/projects/markdown/). Really, it's a callout to the Markdown perl script from the plugin, but whatever, it works. Neither Mark nor myself could bear to unleash a Markdown4J upon the world /images/emoticons/mozilla_wink.gif

- Updated Edit Blog Properties plugin to allow for editing of comment, trackback, and weblogs ping plugin proprerties.

- Updated Edit Blog Entries plugin so that when you add a new blog entry or edit an existing blog entry, you will be taken to the editing page for that menu instead of having to navigate the menus to edit the particular entry.

- Updated Show Me More plugin to allow arbitrary sections of blog entries to be cut from "public" view.

Demo of this capability.

- Updated Simple Search plugin so that the search is case insensitive. Not much more to say on this.

- Updated Macro Expansion plugin to check for null or blank in the title or description.

- Updated Google Highlight plugin to check for potential NullPointerException when no search query is matched from the regular expression.

- Updated Edit Blog Entries plugin so that entries without titles would not use the entire description as the title.

- Updated Comment and Trackback plugins to allow for auto-expiration of comments and trackbacks for entries after a certain number of days. These are configured through the following properties in blog.properties for the comment and trackback plugins, respectively.
    plugin-comment-days-expiration={some number of days}
    plugin-trackback-days-expiration={some number of days}
This is a feature I've seen in MovableType. It's now a feature in blojsom.

- And did I mention the Comment and Trackback plugins also support throttling? These are configured through the following properties in blog.properties for the comment and trackback plugins, respectively.
    plugin-comment-throttle={some number of minutes}
    plugin-trackback-throttle={some number of minutes}

- Adding the blog property blog-ping-urls to your individual blog.properties file allows you to set the list of URLs that should pre-populate the ping URLs box when adding or editing blog entries. For example:
    blog-ping-urls=http://rpc.weblogs.com/RPC2 http://ping.blo.gs http://rpc.technorati.com/rpc/ping
If you do not use the web administration interface, you can still use this property to control the URLs that are sent a ping when the WeblogsPingPlugin executes. Dual-use property! Joy /images/emoticons/mozilla_laughing.gif

- Added Forgotten Password plugin so authorized users can have their password sent by e-mail if for some reason they forget their password. E-mail addresses can be added to the authorization.properties file by separating the e-mail address with a "," after the password. Example:
    username=password,email@address.com
Any usernames without e-mail addresses are assume to be the property of the blog owner, so in these cases, a forgotten password e-mail message would be sent to the blog owner's e-mail address.

- Added Groovy plugin which allows you to write blojsom plugins using Groovy. The scripts must implement the BlojsomPlugin interface. The plugin can also accept a request parameter, groovy-scripts which is a comma-separated list of the scripts to execute. This parameter is used if the Groovy plugin is included more than once in one of the flavor-based plugin chains. The first time the plugin executes, it would use the first script in the groovy-scripts parameter list, and the second time the plugin executes, it would use the second script in the groovy-scripts parameter list, and so on.

- Updated RDF JSP and Velocity templates to add missing items element inside the channel element. Also updated JSP templates to use an appropriate content type and character set declaration.

- Updated Flex theme templates where the default/ directory was removed which caused incorrect loading of some pages.

- Updated Velocity to the 1.4 release.

- Moblog plugin. Yes folks. Finally! blojsom now has a moblog plugin. In the next release we're going XML-RPC with it so stay tuned. But this version still rocks. Hollah!

Current capabilities:
  • Configurable list of authorized posters (e-mail FROM: addresses)
  • Configurable poll time
  • Configurable image mime types (added as <img .../> reference in the moblog entry)
  • Configurable attachment mime types (added as <a href .../> reference in the moblog entry)
  • Configurable text mime types (for being able to just send an e-mail to your blog)

Announcing: The blojsom wiki powered by Confluence. The blojsom JIRAinstance. Over the next day, all of the content from the SourceForge site will be migrated to the wiki. Why? It's not that the Forrest generated site is a pain in the ass to maintain, but ... it's a pain in the ass to maintain. I want to add new pages easily and be able to easily tweak pages that need changing in real time. The wiki is great for that type of editing and documentation. And it'll be a helluva lot easier to add screenshots and allow users to edit the documentation as well. As far as JIRA, well, the folks at Atlassian gave us a license. And I'll be damned if we're not going to use it. Besides, JIRA is much nicer than the SourceForge tracker.

Let's recap folks since there's a lot to digest here.
  • blojsom 2.14 rocks.
  • Lots of worthwhile updates.
  • Comment/Trackback auto-expiration and throttling.
  • Configurable ping URLs.
  • Moblog plugin.
  • Groovy plugin.
  • Markdown plugin.
  • Forrest is dead to me. /images/emoticons/mozilla_laughing.gif
  • The SourceForge tracker is dead to me /images/emoticons/mozilla_laughing.gif

This should keep some folks busy for awhile. Enjoy!
Posted by david at 8:57 PM in blojsom ... all blojsom

If you've noticed the moblog is back...

... it's because I'm using the Moblog plugin that's going to be available with blojsom. You'll notice this entry goes in my moblog category which means that in addition to camphone pictures, you can just simply e-mail entries to your blog. Woo-hoo!. The plugin is already in CVS, but for those of you who aren't living on the edge, blojsom 2.14 will be released later today which will include this plugin. Oh, and there are also a lot of other goodies. Those registered on the blojsom mailing list already know what's coming down the pike.

P.S. Turning off comments for this entry. You can do that you know. You did know that right? Have a look at the comment documentation:

Finally, if you are running the Meta plugin before the Comments plugin, you can add metadata to the entry to disable comments. The metadata key to disable comments would be specified as "meta-blog-entry-comments-disabled=y" in your blog entry. You would do this if you were not editing your blog through the web administration interface or you edit your blog entries from the command-line.

I guess I should amend that to include blogging via e-mail!

:p

---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.

Posted by at 1:40 PM in Moblog

Dunkin

This message was sent using Picture Messaging from Verizon Wireless! To learn how you can snap and send pictures with your wireless phone visit http://www.verizonwireless.com/getitnow/pixmessaging.

Posted by at 11:52 AM in Moblog

Another mouse test!

---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.

Posted by at 11:10 AM in Moblog

E-mail to blog test

1...2...3... And awaaaaaaaaay we go! ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.
Posted by at 10:58 AM in Moblog

Monday, 26 April 2004

Extreme

Posted by at 9:49 PM in Moblog

Extreme

AirPort Extreme that is /images/emoticons/mozilla_wink.gif

Posted by at 9:07 PM in Moblog

Mouse!

Posted by at 8:52 PM in Moblog

Friday, 23 April 2004

RE: MIT: What is RSS?

As noted by Dave Winer. MIT: What is RSS?

I'd addendum that folks, "RSS is a format that even us smarties at MIT have trouble getting right."

Fair (warnings - but marked as valid RSS). Balanced (errors).

Enjoy your weekend folks!
Posted by david at 6:32 PM in My Life With The Thrill Kill Kult

The Baltimore Sun has extensive RSS support (and their feeds don't validate either)

Their feeds now validate.
Posted by david at 1:06 PM in My Life With The Thrill Kill Kult

The Washington Post now has RSS feeds (with feeds that don't validate)

Dave Winer notes the new RSS feeds over at the Washington Post. They also don't validate. Now that's a simple thing to fix.

Fair. Balanced.

I've written to all the folks mentioned in The Washington Post does RSS -- badly about validating their feeds.

Posted by david at 8:42 AM in My Life With The Thrill Kill Kult

Wednesday, 21 April 2004

Geekiest Theme. Ever.

Kudos Mr. John Flinchbaugh /images/emoticons/mozilla_laughing.gif
Posted by david at 10:39 AM in java ... just java

Funniest Headline. Ever.

"Misys gives Pecker head job"
After 14 years inside Misys in Europe, Rudi Pecker has been elevated to the financial technology company's Singapore office, to become head of Asia Pacific sales. In this role, Pecker will head all Misys' strategic and commercial activities in the region, aiming to grow the business and enter into long term relationships. Pecker's breadth of experience, with over 20 years in the financial services industry, will enable him to rise to the challenges of growing the business in Asia, a region fertile for expansion.
Posted by david at 10:34 AM in My Life With The Thrill Kill Kult

Tuesday, 20 April 2004

Testing JavaBlogs UTF-8 support (ignore) ... これは日本語のテキストです。読めますか?

Russian: президент
German: Englisches Wörterbuch: Erklärungen, Synonyme
French: Trésor de la Langue Française
Posted by david at 10:24 AM in java ... just java

Monday, 19 April 2004

これは日本語のテキストです。読めますか?

Let's see how Unicode and weblogs does with Japanese /images/emoticons/mozilla_laughing.gif

 

これは日本語のテキストです。読めますか?
Posted by david at 4:05 PM in Internationalization

Shaken. Not stirred.

Just in case you were wondering what cufflinks I am wearing today.

Posted by david at 3:17 PM in My Life With The Thrill Kill Kult

Iñtërnâtiônàlizætiøn

Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn
Posted by david at 1:36 PM in Internationalization

Iñtërnâtiônàlizætiøn category

Iñtërnâtiônàlizætiøn

 

All internationalization tests pass.
  • Entry title, text (includes filename on disk): Check
  • Category name and description (includes directory on disk): Check
  • Comments: Check (includes comment e-mail)
  • Trackbacks: Check (includes trackback e-mail)
  • Feeds: Valid
  • Editing via web-based administration interface: Check
  • Editing via blog client (ecto): Check
Hell, even the e-mail address obfuscator plugin works like a champ!

 

Let's see how a link back to Sam Ruby's Unicode and weblogs goes.

 

My original frustration with URI encoding in Tomcat 5 for reference.
Posted by david at 1:02 PM in Internationalization

URI encoding in Tomcat 5

Good morning campers! Everyone all bright eyed and bushy tailed?

If you're using Tomcat 5, say Tomcat 5.0.19, and you're having issues with international characters in your URIs, then you might want to look at your server.xml file and check out the settings for various defined <Connector .../> elements. Why? According to the URIencoding attribute documentation for this element in the Tomcat 5 connector documentation, "This specifies the character encoding used to decode the URI bytes, after %xx decoding the URL. If not specified, ISO-8859-1 will be used.". A simple fix as given below was all this server needed to be happy as demonstrated hm'yah. /images/emoticons/mozilla_laughing.gif

<Connector port="8009"
   enableLookups="false" redirectPort="8443" debug="0"
   protocol="AJP/1.3" URIEncoding="UTF-8"/>

The default for this option, IMHO, should be UTF-8 and not ISO-8859-1. Did I dream it that there was a relevant W3C specification where it was specified that UTF-8 should be the default encoding used for URIs? Maybe. I'm looking now, but if you know in particular, point me at it and I'll update this entry appropriately.

Update: Character Encoding in URI references. So, you still get the restricted US-ASCII subset allowed in URIs, but the encoding of the characters to bytes is done using UTF-8.

  • 1. Each disallowed character is converted to UTF-8, resulting in one or more bytes.
  • 2. The resulting bytes are escaped using the URI escaping mechanism (that is, each byte is converted to %HH, where HH is the byte value expressed using hexadecimal notation).
  • 3. The original character is replaced by the resulting character sequence.
And wouldn't you know it that the reference I was originally looking for was in the javadocs for java.net.URLEncoder#encode(String s, String enc). The specific reference is Non-ASCII characters in URI attribute values.
Posted by david at 10:47 AM in java ... just java

Testing Iñtërnâtiônàlizætiøn in filename

Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn Iñtërnâtiônàlizætiøn
Posted by david at 9:51 AM in Evil Experiments

Saturday, 17 April 2004

If you're testing Iñtërnâtiônàlizætiøn ... please validate your feeds with the Feed Validator

The Feed Validator is your friend!

 

Valid RSS and valid Atom.
Posted by david at 5:22 PM in Internationalization

Thursday, 15 April 2004

Coming soon ... wiki.blojsom.com and jira.blojsom.com

blojsom.com is now running under Tomcat 5.0.19 and thanks to the folks over at Atlassian, I now have now installed Confluence and JIRA. I want to verify some Confluence issues with the Atlassian folks before making the blojsom wiki open to the public.

Stay tuned...
Posted by david at 11:01 PM in blojsom ... all blojsom

Testing Tomcat 5.0.19

Hope this works.
Posted by david at 2:38 PM in Evil Experiments

Wednesday, 14 April 2004

Iñtërnâtiônàlizætiøn

Iñtërnâtiônàlizætiøn
Posted by david at 7:35 PM in Evil Experiments

Tuesday, 13 April 2004

Rapid prototyping blojsom plugins using Groovy

blojsom already has a GroovyDispatcher which uses their template engine to allow you to develop templates using Groovy. So, what about plugins? Mark mentioned the idea for a GroovyPlugin a few weeks back and here's the relevant code for such a plugin.
    ...
    Class clazz = groovyClassLoader.parseClass(groovyPlugin);
    plugin = (BlojsomPlugin) clazz.newInstance();
    plugin.init(_servletConfig, _blojsomConfiguration);
    entries = plugin.process(httpServletRequest, httpServletResponse, user, context, entries);
    plugin.cleanup();
    plugin.destroy();
    ...
This would allow rapid prototyping of blojsom plugins without having to go through the "pains" of recompilation or restarting your application server. That's kind of neat in and of itself.

And then I got to thinking, "What if I wanted to include the Groovy plugin more than once in my plugin chain and have it execute different scripts?" One way I thought of doing that would be to accept a comma-separated URL parameter, say "groovy-plugin-scripts=script1,script2". In the individual user's plugin.properties file, you might have the following:

    html.blojsom-plugin-chain=...,groovy-plugin,...,groovy-plugin,...
Each time the Groovy plugin was executed, increment a counter placed in the context and execute the 1st script for the 1st execution, execute the 2nd script for the 2nd execution, and so on. Got all that?

Grooooooooooooooovy baby /images/emoticons/mozilla_wink.gif

<The-How-do-you-say-Ah-yes-Show-with-Antonio-Banderas>
Oh no! It's too sexy!
</The-How-do-you-say-Ah-yes-Show-with-Antonio-Banderas>

Posted by david at 2:35 PM in blojsom ... all blojsom

Thursday, 8 April 2004

3 ways to disable comments on individual entries in blojsom

I guess the problem I see with this approach to disable comments in Roller is that you could still construct the URL to the post and just submit the form items to the proper location. It's tough, but it can still be done. Or, I could be wrong?

A description of how to disable comments on individual entries in blojsom.

If comments are enabled on your blog, but you do not want to allow users to comment on an individual entry, you can do so by making that entry read-only. blojsom uses this to indicate whether or not it should allow users to comment on an entry. If a blog entry is writable, users may comment on that entry.

Comments can also be disabled on individual entries throug the web administration interface. If you are adding or editing an entry, you can check a box to indicate that comments are not enabled on a single entry.

Finally, if you are running the Meta plugin before the Comments plugin, you can add metadata to the entry to disable comments. The metadata key to disable comments would be specified as "meta-blog-entry-comments-disabled=y" in your blog entry. You would do this if you were not editing your blog through the web administration interface or you edit your blog entries from the command-line.

The last approach provides a lot of flexibility for instances where you don't have the luxury of the administration interface. For say, e-mail to blog or AIM to blog (blojsim).

I'm going to click the respective checkbox in the admin interface and disable comments on this entry. Trackbacks allowed.

Posted by david at 10:54 PM in blojsom ... all blojsom

An open letter to Omarosa Manigault Stallworth

Dear Omarosa,

You so lied on national television about not talking to Diane during dinner. Millions of us watched the call where you probably talked to her for at least 5 minutes.

You are such a liar.

Sincerely,

David Czarnecki

PS- You lying liar! /images/emoticons/mozilla_tongueout.gif

Posted by david at 10:18 PM in My Life With The Thrill Kill Kult

I did not use IntelliJ today ...

... instead I became intimately familiar with some aspects of Microsoft Visual C++. So, let's see with a different option like "/subsystem:console" it will target a different "main" method.

Pray for me y'all. I only ask that you pray for me /images/emoticons/mozilla_laughing.gif

Posted by david at 4:33 PM in java ... just java

Tuesday, 6 April 2004

Sandler updates

I am now paying my dues as a Sandler committer by going through and adding javadocs. That's one of the things I've tried to be good about with blojsom . I appreciate when developers take the time to describe their API in the javadocs. So, I'm trying to do that with Sandler. It'll be my contribution to the success of the project.

In other Sandler news, Mark and Brian have gone and committed the code to abstract the way Sandler builds up an Atom feed. So, the default will be an XPP (XML Pull Parser) Builder and there's also a StAX Builder that will be available. Rock on.

Output wise, you've got the option of SAX, String, or a Writer.

Hands down, Sandler is the tops baby. The tops! Hollah...
Posted by david at 9:46 PM in Atom

Hacking blog templates redux

My .02 on the whole hacking the various weblogs templates discussions (here, here, here) is that someone came up with a way to display Google hits from their referer list. The whole bit about it being a hack or Velocity pages can be as unreadable as JSPs with scriptlets wasn't an irrelevant part of the discussion, but it was a secondary or tertiary concern ... at least to me. It's not an inappropriate use of the technology. Why not exploit a technology to the best of your ability? It might rub you the wrong way in a "best practices" sense, but it's not inappropriate. The best is that the Google referer code becomes a macro or a tag that can be reused within the page and is therefore debugged and improved in only one place and other JRoller users can benefit. The worst is that it stays as is and a few people have 10 extra lines of code in their template. It's not the end of the world. But, it's no different than what exists in other weblog packages like MovableType which do similar processing with their own set of template tags to piece together a page.

It's also not a deficiency in the application. It'd be great if as developers we were omniscient to the point that we could anticipate every usage scenario of our software. Then we could, in the weblog software space, develop all of the tags ahead of time to keep our pages simple and readable while allowing users to display all the appropriate bits of informaiton. The reality is that we're not there (yet) and so we've got to make improvements to the software as users identify different ways in which to use the software or extract certain bits of information.

Various view or template technologies will be appropriate or inappropriate in certain scenarios. That was one of the cases for Velocity's use in Roller. And if I was deploying a service like JRoller using blojsom where I could use Velocity, JSP, FreeMarker, or Groovy, I'd choose Velocity or FreeMarker (FreeMarker seems more powerful) for user's templates as well. Fact of the matter is that in certain situations you can't have people creating arbitrary objects or loading certain classes that could do damage to the host system.

Finally, scripting languages like Groovy have made it into this space. We released a GroovyDispatcher for blojsom which allows people to develop templates using Groovy.

I say hack away. It shows you care to make your weblog your own in a more personal way ... that is, more personal than say, "I had tuna salad for lunch today."

Posted by david at 10:41 AM in blojsom ... all blojsom

Monday, 5 April 2004

My donut had multi-colored duck and bunny sprinkles

Bear with me in the last non-blojsom posts to this blog...

Daylight savings started this past weekend in the United States. States may choose whether or not they will observe daylight savings time, Link. I happen to live in one of the 50 states that does observe daylight savings time. Relevant to you? Maybe. Relevant to me? Yes. Why? I own close to 30 watches.

I remember an ice breaker from a corporate training class where we were asked to describe the watch we were wearing. Let's go with that for now because I don't remember what you were asked to describe if you weren't wearing a watch. The point was that this was something you're initimate with every day, but somehow, someway, some details were, shall we say lost in translation.

Details are relevant in a particular context. For example, I chose the watch I wore this morning because a) I thought it matched my outfit and b) I chose not to wear it Saturday night. The watch is functioning properly. I changed its day and time this morning before I left for the office. The details of its color and style are now irrelevant. The details of it functioning correctly are now irrelevant. If I change outfits or its battery goes dead during the day, those details may not be so irrelevant.

The point is that in a given context, details affect the choices we make. At the drive-thru this morning, I asked for a bagel with cream cheese, coffee, and a vanilla frosted donut. My donut had multi-colored duck and bunny sprinkles. I did not choose a donut with sprinkles. If you're reading this before you head to work, maybe you'll make a choice I was not given.

Posted by david at 9:37 PM in My Life With The Thrill Kill Kult

blojsom plugin: Personalized RSS feeds in blojsom using the Search plugin

It's almost like a mini version of Feedster only it's not Feedster. I originally posted about this in my "Re: RSS Search" post which was in response to Russell's RSS search hack.

So, it's not a hack, just a way to use blojsom's flavor-based plugins in some interesting ways.

And by interesting ways, maybe an RSS feed for posts mentioning Adam Curry. You want your MTV? You got it /images/emoticons/mozilla_wink.gif

Posted by david at 1:26 PM in blojsom ... all blojsom

blojsom plugin: Highlighting Google searches in your blog entries

The Google highlight plugin for blojsom will highlight words on your blog if the referer came from a Google query. For example, click on the last link (Bedeviled Mojo Slop (Reloaded)) for this Google search "Adam Curry photo". You should see the search terms highlighted in yellow.

It's just a matter of adding the plugin to one of your flavor-based plugin chains. Ahhhh ... the simplicity of it all.

Posted by david at 1:10 PM in blojsom ... all blojsom

Creepy when you find your name in a GMail screenshot

Moblog shot. I'm the 4th name down in the list. You can't make this stuff up people.

Google knows all. Google sees all.

I therefore rescind an earlier statement that GMail is just webmail. Google products are all powerful!

Posted by david at 9:06 AM in My Life With The Thrill Kill Kult

Friday, 2 April 2004

Let me break Gmail down for y'all ... And no, I don't have a Gmail screenshot

It's webmail!

If I wasn't clear, let me repeat myself.

IT'S WEBMAIL!
Posted by david at 8:14 PM in My Life With The Thrill Kill Kult