I've considered this before, but never been so annoyed as to act. Seeing this thread made me think of it again, and it's actually not too hard to address this in your browser, assuming you're using firefox with greasemonkey or some compatible way of running userscripts. (I've heard that there are compatible things for other browsers but I've never investigated.)
To start with, here's my script:
// ==UserScript==
// @name H-B Helper
// @namespace geoff.mollyandgeoff.com
// @description Topic ignore feature for home-barista. Based on PhpBB enhancer from Alekc (http://userscripts.org/scripts/show/57924)
// @author geoff@mollyandgeoff.com
// @version 1.0.1
// @include http://www.home-barista.com/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
// ==/UserScript==
var phpbb_prefs;
var debug = false;
debugLog("Begin userscript execution");
jQuery(document).ready(function() {
try{
debugLog("Ready");
if (jQuery("body#phpbb").length != 1){
debugLog("This isn't even a phpBB forum.");
return false;
}
debugLog("Initializing JQuery");
var $j = jQuery.noConflict();
var regex = /t=(\d+)/g;
debugLog("Loading blocked thread list");
phpbb_prefs = eval(GM_getValue("hb_helper_prefs" + jQuery(document).attr("domain"),{hiddenTopics:{}}));
GM_log(phpbb_prefs.toSource());
debugLog("Searching for threads");
$j("li.row").each(function(){
var topicId = $j(this).find("a.topictitle").attr("href").match(/t=(\d+)/);
if(topicId == null) {
topicId = $j(this).find("a.topictitle").attr("href").match(/-t(\d+)\.html/);
}
debugLog(topicId);
if (phpbb_prefs.hiddenTopics[topicId[1]] == true){
$j(this).hide();
} else {
$j(this).find("dt").css("position","relative").append("<div style='position:absolute;top:0px;right:0px;'><a class='pbe' href='" + topicId[1] + "' title=\"Ignore this thread\">[x]</a></div>");
}
});
$j("a.pbe").click(function(e){
try{
$j(this).parents("li").hide("slow");
phpbb_prefs.hiddenTopics[$j(this).attr("href")] = true;
GM_setValue("hb_helper_prefs" + jQuery(document).attr("domain"), phpbb_prefs.toSource());
} catch (err){GM_log(err.toSource());}
return false;
});
} catch (err){GM_log("Fatal exception inspecting topic:" + err.toSource());}
});
function debugLog(msg){
if (debug){
GM_log("H-B Helper: " + msg);
}
}
Edit: minor revision to make description/credit clearer, add tooltip to "x" on topics
It's completely derived from
this script, with a few changes. Main changes: accommodate specific differences between the author's target and H-B, a couple changes to help me understand the script, log messages -> english, and not require an image from some 3rd party server in order to run. I also chose a new namespace so anyone running this and the original won't see a conflict and changed the authorship info (leaving in a credit) so anyone who looks for help won't bother the original author with my changes.
For ease of installation, I've placed a copy of the above on my server. Users with greasemonkey installed can
click here to install the script. Obviously, inspect the source. It's the same as what I posted in this post. You can also copy and paste that into a file that ends in .user.js then open it in firefox to install from a local source if that makes you more comfortable. (Dan, if you want to host a copy locally, let me know and I'll edit this post to point to your copy instead.)
Once installed, topic listings will look like this:

Clicking that new little X will cause the topic to disappear and prevent it from being listed in future visits (from the same browser, anyway).
Hidden topics are stored locally in your user preferences for Firefox. If you've hidden one in error, or just want to clear out your list, you can enter "about:config" in your location bar, click through the warning about voiding your warranty, filter on hb_helper and edit the list.

It's also completely safe to right-click that value and choose "reset" to unblock all topics.
Let me know if you find this useful, think it's a terrible idea, see any bugs or just have any suggestions. And please report don't bother the original author about anything; it's practically certain that any bugs here are mine, not his
