Boolean Chart Redesign

David Marshall dmarshal at yahoo-inc.com
Sun Jul 18 02:52:21 UTC 2010




On 7/17/10 3:09 PM, "Max Kanat-Alexander" <mkanat at bugzilla.org> wrote:

> 
> Hey folks. So, the Boolean Charts are great, they're powerful, and
> they've been an important part of Bugzilla since 2000. However, the
> Boolean Charts have some problems:
> 
> * The way that AND, OR, and multiple charts work is really confusing. I
> didn't fully understand it until I fully understood Search.pm, which
> very few people understand.

I think they're pretty easy to understand, actually.  Each Boolean chart is
AND'ed with everything else.  A Boolean chart, which can be individually
negated, has rows that are AND'ed together.  Within each row, there are
columns that are OR'ed together.

> 
> * You can't really do arbitrary AND/OR groupings. For example, there's
> no way to do this search with the Boolean Charts:
> 
> (a AND b) OR (c AND d)

It is certainly not easy to do with with a Boolean chart, but it's possible!
However, I don't want to explain DeMorgan's Law to anyone who would then
need to apply them to a Boolean chart.

Hopefully I will someday be able to release Yahoo's replacement for the
Boolean chart, a predicate tree.  The reason we do this is so that we can
avoid OR'ing stuff together (we do a bunch of UNIONs).  However, it would
also allow us to perform any arbitrary AND/OR groupings.

Perhaps what is needed is some crazy Javascript thing that allows building
advanced queries graphically - something that translates the query being
constructed into a statement of what search criteria are being applied.
Perhaps what's really needed is a complete overhaul of the advanced search
UI?

I omitted the rest of Max's mail, but I want to chime in that I hate the
notion of a parentheses button.  We have a number of management-type users
at Yahoo! who just don't grok operator precedence and the need for
parentheses.

We're doing a lot of work on UI these days, although I don't know that we've
talked much about advanced search.  I know, however, that most of our users
don't really know how to take advantage of its capabilities.  There's a lot
of implicit ANDing going on, and I have fielded any number of questions
about it.





More information about the developers mailing list