Here's what I do. First, the markup:
<time datetime="2011-08-27T19:15:38Z" pubdate>27 Aug, 2011</time>
So, time in [ISO 8601][0] format. Run JS to transform '27 Aug, 2011' into a relative date.
If the relative date is >1 month (or, whatever you'd like), then just display the full date.