Difference between revisions of "Cruft Alarm Notes"

From SlugWiki
Jump to: navigation, search
Line 11: Line 11:
  
 
=Gmail=
 
=Gmail=
Gmail was chosen as the email account of choice for several reasons:
+
Gmail is as the email account of choice for several reasons:
 
*Using an Athena account would require hardcoding in someone's username and password.
 
*Using an Athena account would require hardcoding in someone's username and password.
 
*Yahoo! Mail and hotmail do not support POP3 (or something like that).
 
*Yahoo! Mail and hotmail do not support POP3 (or something like that).
By using Gmail to check for new messages, Cruft Alarm in fact receives emails considerably faster than do normal Athena accounts (in contrary to what was initially believed). According to [[Ruth Shewmon]], this is because Gmail updates its email servers more often than Athena does (or something like that).
+
By using Gmail to check for new messages, Cruft Alarm in fact receives emails considerably faster than do normal Athena accounts (in contrary to what was initially believed). According to [[Ruth Shewmon]], this is because Gmail updates its email servers more often than Athena (or something like that).
  
 
=Mailing Lists=
 
=Mailing Lists=
Line 22: Line 22:
  
 
=Natural Language Processing=
 
=Natural Language Processing=
Foo.
+
Cruft Alarm is rumored to have passed the Turing Test.
 +
 
 +
==Cleanup==
 +
HTML tags are annoying. Thus the post class removes them (cf. the 'cleanup' method).
 +
 
 +
==Dictionaries==
 +
Cruft Alarm requires dictionaries in order to work.
 +
Current dictionaries: cruft, food, location, next, prev, remove. Descriptions of what these are will soon come.
 +
 
 +
==Get Items==
 +
(cf. the 'get_items' method in the post class) In order to find the cruft items in a message, the post class checks each of the words in the message with the words in the cruft dictionary.
 +
 
 +
==Get Location==
 +
(cf. the 'get_location' method in the post class) In order to find where the items in a message have been posted, the post class does the following:
 +
*It looks for any words beginning with 'NE', 'E', or 'W' (e.g., NE42, E50, and W20).
 +
*It looks for any words containing a hyphen (e.g., 26-100).
 +
*It checks the words in the message against the words in the location dictionary.
  
 
=To Do=
 
=To Do=

Revision as of 21:18, 11 May 2006

Cruft Alarm is a sophisticated computer program that screens several mailing lists for desirable items. It is written in the Ruby programming language.

Classes

Two classes, crufter.rb and post.rb, form the basis of Cruft Alarm.

crufter

The crufter class connects to the cruftalarm-at-gmail.com email account. If there are any new messages, it gives them to the post class, which manages the information in each message. The crufter class then prints this information.

post

The post class manages the information in each cruft email. It uses many advanced natural language processing techniques to achieve its lofty goals.

Gmail

Gmail is as the email account of choice for several reasons:

  • Using an Athena account would require hardcoding in someone's username and password.
  • Yahoo! Mail and hotmail do not support POP3 (or something like that).

By using Gmail to check for new messages, Cruft Alarm in fact receives emails considerably faster than do normal Athena accounts (in contrary to what was initially believed). According to Ruth Shewmon, this is because Gmail updates its email servers more often than Athena (or something like that).

Mailing Lists

Cruft Alarm receives e-mails from the gmail account cruftalarm-at-gmail.com. cruftalarm-at-gmail.com is subscribed to the Athena mailing list, the-companion. the-companion, in turn, is subscribed to the Athena mailing lists reuse and free-food.

Mailing lists cruftalarm/the-companion needs to be added to: freefood.

Natural Language Processing

Cruft Alarm is rumored to have passed the Turing Test.

Cleanup

HTML tags are annoying. Thus the post class removes them (cf. the 'cleanup' method).

Dictionaries

Cruft Alarm requires dictionaries in order to work. Current dictionaries: cruft, food, location, next, prev, remove. Descriptions of what these are will soon come.

Get Items

(cf. the 'get_items' method in the post class) In order to find the cruft items in a message, the post class checks each of the words in the message with the words in the cruft dictionary.

Get Location

(cf. the 'get_location' method in the post class) In order to find where the items in a message have been posted, the post class does the following:

  • It looks for any words beginning with 'NE', 'E', or 'W' (e.g., NE42, E50, and W20).
  • It looks for any words containing a hyphen (e.g., 26-100).
  • It checks the words in the message against the words in the location dictionary.

To Do

  • Get Edwin Chen's stupid computer to work with Ruby on Rails.
  • Add telephone capabilities, so that Cruft Alarm can dial a telephone number if a desirable item is posted.
  • Set up Cruft Alarm's visual interface (the LCDs).
  • Make Walker Chan and David Harvison give Edwin Chen a Master cruft list.
  • Set up version control. (?)
  • Add Cruft Alarm to more mailing lists (especially freefood).