Simple script with database can do it.
Pseudocode:
page_url = 'http://site.com/page_to_check'
page_content = http_fetch(page_url)
md5_page_hash = md5(page_content)
//query database
result = db.query('SELECT * FROM pages WHERE url="page_url"')
if(result) {
//webpage info is already in db
//check hashes
if(md5_page_hash != result.page_md5_hash) {
//page updated, so we can send notification letter, sms, etc...
//... notification stuff
//...
//update md5 hash of the page in db
db.query('UPDATE pages WHERE url="page_url" SET page_md5_hash="md5_page_hash"')
}
} else {
//there is no info about this page in db, so add it
db.query('INSERT pages(page_url, page_md5_hash) VALUES("page_url", "md5_page_hash")')
}