Sure we can remove any node from displaying in the front page by various way, you can select it not to be published to front page from the content type edit form or node edit form, you can also use $node to set the status to be not published to front page and invoke node_save to save it, you May also use views to replace your frontpage alltogether..... blah blah blah.

So don't complain that the way that I'm going to show you is impractical etc... I did this code just because I can and it is needed for my case. Anyway here is the code :

/**
 * Removing product display from frontpage display
 * This can be configured from the module configuration form
 * 
 * @param QueryAlterableInterface $query
 */
function YourModuleName_query_node_access_alter(QueryAlterableInterface $query) {
  // put any node type that you don't want to show on the frontpage
  $product_display = array('article');

  // remove foreach looping if you have only 1 node
  foreach ($product_display as $field) {
    $query->condition('n.type', $field, '!=');
  }
}

This code need to reside in a custom module, and basically it will call query_alter function to alter the query before it is executed. Enjoy!