How can I find (programmatically) which fields have been edited on a piece of content? I want to have a computed field pull in the name and content of a field after it has been edited. I would also like the computed field to contain the content that was edited before edit (if that makes sense?). So what code do I need to find which field has been edited?

I also found this in the node_form drupal api:

// Changed must be sent to the client, for later overwrite error checking.
$form['changed'] = array(
  '#type' =&gt; 'hidden', 
  '#default_value' =&gt; isset($node-&gt;changed) ? $node-&gt;changed : NULL,
);


Is there a way I access this 'changed' value to check if a piece of content has been changed?

p.s. I am new to drupal and php, so stating your answer in simpler terms with more explination is greatly appreciated.
In the node form submit, you can call node_load($node-&gt;nid, NULL, TRUE) for Drupal to retrieve the original about-to-be-overwritten node, allowing you to walk the list of fields, and compare them.

I would use sha1sum(serialize($field)) to compare them, as that makes it easy to do regardless of field type.