Since I'm going to assume you have some kind of religious opposition to the Views module- I would opt for the custom module method.
A simple module could create a block that can be displayed on any page you like.
I would start here, http://drupal.org/node/206753. We're talking 6.x right? Of course we are. Once you have the .info and .module file setup, you can skip down to Declaring Block Content, (http://drupal.org/node/206758), and then onto Generating content (http://drupal.org/node/206759 )... this is where it gets interesting...
function yourModuleName_block($op='list', $delta=0) {
// set up the block
$block = array();
if ($op == "list") {
// This is what it will be listed as in your list of blocks
$block[0]["info"] = t('On This Date');
}
else if ($op == 'view') {
$block['content'] = yourfunctionToGetNewArticalContent();
}
}
Then create your function to return anything you want, For that you''ll want to take a look over here..
http://api.drupal.org/api/drupal/includes--database.mysql-common.inc/function/db_query/6