{"id":374,"date":"2009-09-03T22:08:50","date_gmt":"2009-09-04T06:08:50","guid":{"rendered":"http:\/\/www.visophyte.org\/blog\/?p=374"},"modified":"2009-09-03T22:21:24","modified_gmt":"2009-09-04T06:21:24","slug":"sos-your-facet-faceted-global-search-for-mozilla-thunderbird","status":"publish","type":"post","link":"https:\/\/www.visophyte.org\/blog\/2009\/09\/03\/sos-your-facet-faceted-global-search-for-mozilla-thunderbird\/","title":{"rendered":"So&#8217;s your facet: Faceted global search for Mozilla Thunderbird"},"content":{"rendered":"<p><a href=\"http:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-hover-davida-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-thumbnail wp-image-376\" title=\"faceting-gloda-hover-davida-1\" src=\"http:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-hover-davida-1-600x551.png\" alt=\"faceting-gloda-hover-davida-1\" width=\"600\" height=\"551\" srcset=\"https:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-hover-davida-1-600x551.png 600w, https:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-hover-davida-1-300x275.png 300w, https:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-hover-davida-1.png 983w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>Following in the footsteps of the <a href=\"http:\/\/web.mit.edu\/\">MIT<\/a> <a href=\"http:\/\/simile.mit.edu\/\">SIMILE<\/a> project&#8217;s <a href=\"http:\/\/www.simile-widgets.org\/exhibit\/\">Exhibit<\/a> tool (originally authored by <a href=\"http:\/\/davidhuynh.net\/\">David Huynh<\/a>) and <a href=\"http:\/\/code.google.com\/p\/simile-seek\/\">Thunderbird Seek extension<\/a> (again by <a href=\"http:\/\/davidhuynh.net\/\">David Huynh<\/a>), we are hoping to land faceted global search for Thunderbird 3.0 (a la gloda) in beta 4.<\/p>\n<p>I think it&#8217;s important to point out how ridiculously awesome the Seek extension is.\u00a0 It is the only example of faceted browsing or search in an e-mail client that I am aware of.\u00a0 (Note: I have to assume there are some research e-mail clients out there with faceting, but I haven&#8217;t seen them.)\u00a0 Given the data model available to extensions in Thunderbird 2.0 and the idiosyncratic architecture of the UI code in 2.0, it&#8217;s not only a feature marvel but also a technical marvel.<\/p>\n<p>Unfortunately, there was only so much Seek could do before it hit a wall given the limitations it had to work with.\u00a0 Thunderbird 2.0&#8217;s per-folder indices are just that, per-folder.\u00a0 They also require (fast) O(n) search on any attribute other than their unique key.\u00a0 Although Seek populated an in-memory index for each folder, it was faced with having to implement its own global indexer and persistent database.<\/p>\n<p>Gloda is now at a point where a global database should no longer be the limiting factor for extensions, or the core Thunderbird experience&#8230;<\/p>\n<p><a href=\"http:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-action-tag-hover-bienvenu-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-thumbnail wp-image-377\" title=\"faceting-gloda-action-tag-hover-bienvenu-1\" src=\"http:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-action-tag-hover-bienvenu-1-600x551.png\" alt=\"faceting-gloda-action-tag-hover-bienvenu-1\" width=\"600\" height=\"551\" srcset=\"https:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-action-tag-hover-bienvenu-1-600x551.png 600w, https:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-action-tag-hover-bienvenu-1-300x275.png 300w, https:\/\/www.visophyte.org\/blog\/wp-content\/uploads\/2009\/09\/faceting-gloda-action-tag-hover-bienvenu-1.png 983w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>The screenshots are of a fulltext search for &#8220;gloda&#8221; in my message store.\u00a0 The first screenshot is without any facets applied and me hovering over one of David Ascher&#8217;s e-mail address.\u00a0 The second is after having selected the &#8220;!action&#8221; tag and hovering over one of David Bienvenu&#8217;s e-mail address.\u00a0 Gloda has a concept of contact aggregation of identities but owing to a want of UI for this in the address-book right now, it doesn&#8217;t happen.\u00a0 We do not yet coalesce (approximately) duplicate messages, which explains any apparent duplicates you see.<\/p>\n<p>The current state of things is a result of development effort by myself and <a href=\"http:\/\/ascher.ca\/blog\/\">David Ascher<\/a> with design input from <a href=\"http:\/\/clarkbw.net\/blog\/\">Bryan Clark<\/a> and <a href=\"http:\/\/www.andreasn.se\/blog\/\">Andreas Nilsson<\/a> (with hopefully much more to come soon :).\u00a0 Although we aren&#8217;t using much code from our previous <a href=\"http:\/\/www.visophyte.org\/blog\/tag\/exptoolbar\/\">exptoolbar<\/a> efforts, a lot of the thinking is based on the work David, Bryan, and myself did on that.\u00a0 Much thanks to <a href=\"http:\/\/mesquilla.com\/\">Kent James<\/a>, <a href=\"http:\/\/sid0.blogspot.com\/\">Siddharth Agarwal<\/a>, and <a href=\"http:\/\/blog.davidbienvenu.org\/\">David Bienvenu<\/a> for their recent and ongoing improvements to the gloda (and mailnews) back-end which help make this hopefully compelling UI feature actually usable through efficient and comprehensive indexing that does not make you want to throw your computer through a window.<\/p>\n<p>If you use <a href=\"http:\/\/s3.mozillamessaging.com\/build\/try-server\/2009-09-03_16:12-asutherland@asutherland.org-facet-v5\/asutherland@asutherland.org-facet-v5-mail-try-linux.tar.bz2\">linux<\/a> or <a href=\"http:\/\/s3.mozillamessaging.com\/build\/try-server\/2009-09-03_16:12-asutherland@asutherland.org-facet-v5\/asutherland@asutherland.org-facet-v5-mail-try-mac.dmg\">OS X<\/a>, I just linked you to try server builds.\u00a0 The windows try server was sadly on fire and so couldn&#8217;t attend the build party.\u00a0 The bug tracking the enhancement is bug <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=474711\">474711<\/a> and has repository info if you want to spin your own build.\u00a0 New try server builds will also be noted there.\u00a0 Please keep in mind that this is an in-progress development effort; it is not finished, there are bugs.\u00a0 Accordingly, please direct any feedback\/discussion to the dev-apps-thunderbird <a href=\"https:\/\/lists.mozilla.org\/listinfo\/dev-apps-thunderbird\">list<\/a> \/ <a href=\"news:\/\/news.mozilla.org\/mozilla.dev.apps.thunderbird\">newsgroup<\/a> rather than the bug.\u00a0 Please beware that increases in awesomeness require that your gloda database be automatically blown away if you try the new version.\u00a0 And first you have to <a href=\"https:\/\/wiki.mozilla.org\/Thunderbird:Using_Gloda\">turn gloda on<\/a> if you have not already.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Following in the footsteps of the MIT SIMILE project&#8217;s Exhibit tool (originally authored by David Huynh) and Thunderbird Seek extension (again by David Huynh), we are hoping to land faceted global search for Thunderbird 3.0 (a la gloda) in beta &hellip; <a href=\"https:\/\/www.visophyte.org\/blog\/2009\/09\/03\/sos-your-facet-faceted-global-search-for-mozilla-thunderbird\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[5,3,6],"tags":[74,19,60,126,59],"class_list":["post-374","post","type-post","status-publish","format-standard","hentry","category-email","category-mozilla","category-thunderbird","tag-facets","tag-gloda","tag-simile","tag-thunderbird","tag-timeline"],"_links":{"self":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts\/374","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/comments?post=374"}],"version-history":[{"count":6,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts\/374\/revisions"}],"predecessor-version":[{"id":381,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/posts\/374\/revisions\/381"}],"wp:attachment":[{"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/media?parent=374"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/categories?post=374"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.visophyte.org\/blog\/wp-json\/wp\/v2\/tags?post=374"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}