Thinking this through a little, for context, It also seems to be an
appropriate time to make reference to:
http://en.wikipedia.org/wiki/Greenspun%27s_Tenth_Rule
" Any sufficiently complicated C or Fortran program contains an ad
hoc, informally-specified, bug-ridden, slow implementation of half of
Common Lisp.[2] "
- Luke
On Jun 25, 2008, at 1:49 PM, Luke Tucker wrote:
Josh and I have been working on a new filter that allows you to
specify multiple tags, it promotes articles that have any of the
tags specified. This is primarily driven by Bryan and Sonali's work
on figuring out a good demo -- it's pretty common for different
blogs use different tags to represent basically the same topic, and
we'd really rather not have separate sliders for each of them. For
now, the UI for this will be much like the tag filter, but accept a
comma separated list of tags. I think it will be pretty cool.
We're thinking rather that rather than having new indexes over all
the documents for each cluster of tags that a user set's up, we'll
assemble the score out of the already indexed individual tag
information during the request.
As a little background, currently the configuration backing one of
the sliders you see in the UI looks something like this in json:
{
'title': 'Show me the Golf',
'weight': 0.5
'filter_uri': 'http://www.melkjug.com/filters/AtomTagFilter?tag='golf'
,
}
where the weight corresponds to where the slider is set and the
'filter_uri' corresponds to the type of filter that it's controlling
(in this case a tag filter for the tag 'golf'). One slider = one
filter. A whole "Jug" specification includes a list of these along
with the list of feeds being considered.
We're thinking of changing this up a bit so that one of these
'sliders' can have a more complicated internal configuration. For
example, the multi tag filter might look like:
{
'title': 'Show me the Sports',
'weight': 0.5
'type': 'http://www.melkjug.com/filters/MultiTagFilter,
'filters': [ 'http://www.melkjug.com/filters/AtomTagFilter?
tag='golf',
'http://www.melkjug.com/filters/AtomTagFilter?tag='baseball'
,
'http://www.melkjug.com/filters/AtomTagFilter?tag='hockey'
],
'op': 'or',
}
Here, we make 'filter_uri' into a list of filter_uris and specify an
operation 'op', which signals how to combine the scores of the
individual filters in the list. A 'type' is retained so that we
know what widget controls it.
So this 'sports' filter will promote an article if it tagged 'golf',
'baseball', or 'hockey' by combining the normal individual tag
filters with an (imaginary) "or" operation. I'm sure you can
picture some other uses for this structure outside the bounds of the
multi-tag filter.
What do y'all think? better ideas?
- Luke
--
Archive:
http://www.openplans.org/projects/melkjug/lists/melkjug-development-list/archive/2008/06/1214416175337
To unsubscribe send an email with subject "unsubscribe" to [email protected]
. Please contact [EMAIL PROTECTED] for
questions.
!DSPAM:4013,48628590217794901796417!
--
Archive:
http://www.openplans.org/projects/melkjug/lists/melkjug-development-list/archive/2008/06/1214423214840
To unsubscribe send an email with subject "unsubscribe" to [EMAIL PROTECTED]
Please contact [EMAIL PROTECTED] for questions.