<div id="popup_box_thanks" style="display:none" onClick="close_popup_thanks('popup_box_thanks', 'ts')"><br>Thanks for submitting your tip! All submissions are moderated by an editor before appearing online. We've reset the form so you can enter another tip. Or you can close the tip submission box. <div class="x_close" id="thanks_upper_right"><a href="javascript:void(0)" onmousedown="close_popup_thanks('popup_box_thanks', 'ts'); return true;">Close</a></div></div>
<div class="tbf_row"><div class="tbf_wide_extra_top not_bold">Please submit only technical tips that will help other TidBITS readers better use their Macs, iPhones, and related software and hardware. All product announcements should be sent to <a href="mailto:releases@tidbits.com">releases@tidbits.com</a>.</div></div>
<div class="tbf_left">URL</div><div class="tbf_right"><input type="text" value="" name="tip_link_url" tabindex="3"><span class="tip_description"><br>Enter the URL to a Web page that supports your tip.</span></div>
</div>
<div class="spacer"></div>
<div class="tbf_row">
<div class="tbf_left">Linked text</div><div class="tbf_right"><input type="text" value="" name="tip_link_label" tabindex="4"><span class="tip_description"><br>Enter the name of the page linked above.</span></div>
<div class="tbf_wide"><input type="submit" value="Preview Your Tip" name="preview_tip" onClick="fill_preview('tipbits_enclosure_preview', 'ts', this.form); return false;" tabindex="7"> <input type="submit" value="Send Us Your Tip!" name="submit_this_tip" onClick="handle_tip_submission('ts', '', this.form, 'tip'); return false;" tabindex="8"></div>
</div>
<div class="spacer"></div>
<div class="tbf_row">
<div class="tbf_wide"><span class="fine_print">When you submit a tip, you give us permission to use it. Read <a href="javascript:void(0)" onClick="generic_show_hide('tip_terms')">our terms</a> for more details. All submissions are reviewed before publication.</span></div>
<div class="tbf_wide"><span class="fine_print">Our terms: By submitting a tip, you agree to assign TidBITS Publishing Inc., a non-exclusive, worldwide, perpetual license to reproduce, publish, and distribute your tip in connection with the TidBITS Web site and associated products in any media. You agree that you created the content you submitted, and that you have the right to assign us this license. You give us permission to use your name, but your email address won't be publicly displayed or shared. We review all submissions before publication, and reserve the right to select which submissions we feel are appropriate for our readers and to edit those we publish.</span></div>
<div id="comment_thanks" style="display:none" onClick="close_popup_thanks('comment_thanks', 'comm')"><br>Thanks for submitting a comment! Please check your email for a link that, when clicked, will verify that you're a real person and cause your comment to appear immediately. <div class="x_close" id="comment_upper_right"><a href="javascript:void(0)" onmousedown="close_popup_thanks('comment_thanks', 'comm'); return true;">Close</a></div></div>
<div class="tbf_wide"><span class="fine_print">Our terms: We reserve the right to edit or delete any comment, so please post thoughtfully. We use your email address <i>only</i> to send you a one-time verification message confirming that you posted this comment. We also store your address to allow you to verify using other Web browsers in the future. For more info, see our <a href="http://db.tidbits.com/privacy.html">privacy policy</a>.</span></div>
<li><a href="/feeds/tidbits.rss" title="Subscribe via RSS" class="gettb">RSS <img src="/images/feed-icon-12x12.gif" width="12" height="12" border="0" class="nav_img" alt="Subscribe via RSS"></a></li>
<li><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=276986548" title="Subscribe to the podcast" class="gettb">Podcast <img src="/images/feed-icon-12x12_podcast.gif" width="12" height="12" border="0" class="nav_img" alt="Subscribe to the postcast"></a></li>
<li><a href="http://www.twitter.com/TidBITS" title="Get Article Updates via Twitter" class="gettb">Twitter <img src="/images/feed_icon_12x12_twitter.png" width="12" height="12" border="0" class="nav_img" alt="Get Article Updates via Twitter"></a></li>
<li><a href="http://www.facebook.com/pages/TidBITS/195314925519" title="Go to the TidBITS Page at Facebook" class="gettb">Facebook <img src="/images/feed_icon_12x12_facebook.gif" width="12" height="12" border="0" class="nav_img" alt="Go to the TidBITS Page at Facebook"></a></li>
<li><a href="javascript:void(0)" title="Sections" class="tabhead" onClick="return showhide('articleslist')">Sections <span id="articleslist_triangle"><img src="/images/nav_triangle_open.gif" width="9" height="9" border="0" class="navtriangle" id="articleslist_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
<li><a href="javascript:void(0)" onClick="return showhide('stafflist')" title="Staff" class="tabhead">Staff <span id="stafflist_triangle"><img src="/images/nav_triangle_closed.gif" width="9" height="9" border="0" class="navtriangle" id="stafflist_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
<li><a href="javascript:void(0)" title="Issues" class="tabhead" onClick="return showhide('issuelist')">Weekly Issues <span id="issuelist_triangle"><img src="/images/nav_triangle_closed.gif" width="9" height="9" border="0" class="navtriangle" id="issuelist_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
<li><a href="javascript:void(0)" onClick="return showhide('abouttidbits')" title="About TidBITS" class="tabhead">About TidBITS <span id="abouttidbits_triangle"><img src="/images/nav_triangle_closed.gif" width="9" height="9" border="0" class="navtriangle" id="abouttidbits_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
<li><a href="http://www.thedatarescuecenter.com/">The Data Rescue Center</a></li>
</ul><div class='sponsor_sidebox_bottom'> </div>
</div>
<!-- end sponsor_sidebox -->
</div> <!-- end leftcolumn div -->
<!-- end left column -->
<!-- begin centercolumn_border -->
<div id="centercolumn_border">
<div class="center_top">Thoughtful, detailed coverage of the Mac, iPhone, and iPad, plus the best-selling <a href="http://www.takecontrolbooks.com/?pt=TB-TAGLINE" style="color:yellow">Take Control</a> ebooks.</div>
<!-- begin centercolumn -->
<div id="centercolumn">
<!-- begin rightcolumn_container -->
<div id="rightcolumn_container">
<!-- begin rightcolumn -->
<!-- rightcolumn is embedded within centercolumn so featured text wraps around it -->
</div><!-- end tearoffbox_wide_container for watchlist items -->
<!-- begin tearoff box wide -->
<div class="tearoffbox_wide_container">
<div class="tearoffbox_wide_tips">
<div class="tip_display">
<div class="tips_sponsor_logo">
</div>
<h6>Show Hidden Files in Open/Save Dialogs in Snow Leopard</h6>
<p><p>In Snow Leopard, if you want to show otherwise hidden files in Open and Save dialog file lists, just press Command-Shift-period. Pressing it again hides the files.</p></p>
</div>
<div class="tearoffbox_wide_bottom_tips">
<div style="padding-bottom:35px"><div class="tip_display" style="float:left"><p><br><a href="/tipbits/165">Link to this tip</a></p></div><div class="tip_display" style="float:right; width:150px">
<p class="credit">Written by<br><a href="/author/Adam%20C.%20Engst">Adam C. Engst</a></p></div></div>
<div class="tbf_wide_80" id="hc_rc_5690">To help us avoid automated posts and misuse of our site, please enter the words below.</div><div class="x_close_row" id="hc_upper_right2_5690"><a href="javascript:void(0)" onmousedown="HidePopupContent('hc_5690', 'hc', '5690'); return true;">Close</a></div>
<div class="featured_meta"><div class="meta_article">17 Feb 2003 | <a href="/article/7076?print_version=1">Print <span class="shift_up"><img src="/images/printer_icon.gif" alt="Printer-Friendly Version of This Article" border="0" width="9" height="10"></span></a></div></div>
<div id="article_box_5690"><P>Having to sort through the increasingly repulsive spam that's rushing into our electronic mailboxes is becoming more unpleasant than ever. You can reduce the flow, though, with one of three basic approaches to filtering spam out of your email stream: Boolean filters, points-based filters, and so-called "Bayesian" statistical filters. Put simply, a Boolean filter looks for string of text, and if it's found, considers the message spam. Points-based filters refine that approach, assigning (or removing) points for each criteria matched by a given message; they decide if a message is spam or not by how many points that message accumulates. Statistical (or Bayesian) filters, which were most popularly described in relation to spam in August of 2002 (and refined last month) by Paul Graham, use a statistical approach that combines the probability that any given word or phrase (implementations vary) to decide if the message is spam.</P><P><<A HREF="http://www.paulgraham.com/spam.html">http://www.paulgraham.com/spam.html</A>><BR><<A HREF="http://www.paulgraham.com/better.html">http://www.paulgraham.com/better.html</A>></P><P><STRONG>Bayesian Filters</STRONG> -- The beauty of Bayesian filtering is that it works on the contents of your email, which is probably rather different from mine and anyone else's. That's because you must train a Bayesian filter with a sample of both spam and legitimate messages, and because the Bayesian filter continually examines new messages, it can adapt to the kind of mail you receive, both good and bad.</P><P>Bayesian filters aren't perfect. Legitimate mail, such as promotional mailings from companies you've bought from in the past, can look a lot like spam at first, and it's also hard to identify spam messages with minimal text accurately. Spam may get through when it's sufficiently related to your profession; for instance, I get spam advertising translation services because of the TidBITS translations. It's also possible for spammers to pollute your corpus of good and bad words by including lots of good words in a spam message, thus reducing the accuracy of the filter over time. On the positive side, it's possible that improved algorithms can address these problems.</P><P>There are two main implementations of statistical Bayesian filtering for Mac OS X: Apple's Mail and Michael Tsai's SpamSieve, the latter of which I've been testing with Eudora 5.2 for some months now.</P><P><STRONG>SpamSieve</STRONG> -- Along with its implementation of Bayesian filter, I especially appreciate the fact that SpamSieve works inside Eudora, and also inside a number of other email programs, including Entourage, Mailsmith, and PowerMail. Although it's not available for Mac OS 9, it does also work with Emailer running in Classic mode. I'm not interested in using Mail, and other spam utilities (such as Matterform Media's points-based Spamfire utility, which also has many proponents) work outside of your email program, forcing you to scan for false positives in a separate interface). SpamSieve works with any number of accounts and filters mail from any source your email program supports. Once it has identified messages as spam, it can mark or move them, and in some of the email programs, your filters can continue to work on the marked messages.</P><P><<A HREF="http://www.matterform.com/">http://www.matterform.com/</A>></P><P>SpamSieve accomplishes this by using the AppleScript capabilities of these email programs to pass information to and from SpamSieve itself. The integration is relatively seamless, except in Eudora, the current version of which has limitations that restrict SpamSieve to filtering mail that ends up in the In box (not in any other folder). Since the communication happens via AppleScript, you can edit the included scripts to customize them further. Even while I'm waiting for the next version of Eudora to bring SpamSieve's capabilities to messages I filter out of my In box, I've found it extremely worthwhile.</P><P>I initially trained SpamSieve with about 600 spam messages from my disgustingly large collection of spam and 600 good messages from my In box (yes, it has been that full, though I've beaten it back down into the 300s). If you don't have spam around, you could either train SpamSieve as you receive it (probably with lower accuracy at first) or wait briefly until you've collected a representative sample. I've also told SpamSieve to learn from new messages. Since the middle of January, SpamSieve has filtered over 2,600 messages, about 55 percent of which were spam. In that time, it has reported 88 percent accuracy, with a false negative rate of 11 percent and a false positive rate of 1 percent (an alternative way I've used to verify SpamSieve's accuracy came up with lower numbers - 80 percent accuracy, with 19 percent false negatives - I'm working with Michael Tsai to figure out the discrepancy). Most of the false positives were solicited commercial email or messages forwarded to me and a large number of other people, both of which are likely to run afoul of SpamSieve's filtering until it has been trained to recognize similar messages. Because SpamSieve filters on the contents of your particular email stream, your mileage may vary, as it has for other TidBITS staff members, who have seen somewhat less reliable results.</P><P>New features in SpamSieve 1.3 include increased resilience to the ways spammers are now obfuscating common words, the capability to use email addresses in Apple's Address Book as a whitelist (so mail from people whose addresses are stored in the Address Book is never considered spam), editing of SpamSieve's corpus of words, type-to-select in the Corpus window, and the capability to see statistics from after any given date.</P><P>If you've longed for the Bayesian filtering in Apple's Mail, but weren't willing to give up your preferred email program for that one capability, I'd strongly encourage you to take a look at SpamSieve. Michael Tsai is developing it actively, and has been extremely responsive to comments and suggestions.</P><P>SpamSieve 1.3 is $20 shareware (upgrades from previous versions are free) and is a 1.5 MB download.</P><P><<A HREF="http://www.c-command.com/spamsieve/">http://www.c-command.com/spamsieve/</A>></P><P class="paybits">PayBITS: Did Adam's article turning you on to SpamSieve<BR> seriously reduce your spam volume? Say thanks via PayBITS!<BR> <<A HREF="https://www.paypal.com/xclick/business=ace%40tidbits.com">https://www.paypal.com/xclick/ business=ace%40tidbits.com</A>><BR> <<A HREF="http://www.amazon.com/paypage/P2HI4FNQWZA9U0">http://www.amazon.com/paypage/P2HI4FNQWZA9U0</A>><BR> Read more about PayBITS: <<A HREF="http://www.tidbits.com/paybits/">http://www.tidbits.com/paybits/</A>></P><!-- Tools We Use: SpamSieve Adam C. Engst --></div>
<!-- end article text -->
<!-- PayBITS -->
<p> </p><div class="sponsorbox">
<div class="sponsortext"><A HREF="http://markspace.com/bits?source=tidbits"><IMG SRC="http://db.tidbits.com/images/badges/mark-space.gif" ALT="" HEIGHT="50" WIDTH="50" BORDER="0" ALIGN="left"></A>SYNC YOUR PHONE with The Missing Sync: Sync your calendar,<br />address book, music, photos and much more between your phone<br />and Mac. Supports ANDROID, BLACKBERRY, PALM PRE and many<br />other phones. <<a href="http://markspace.com/bits?source=tidbits">http://www.markspace.com/bits</a>></div>