Someone on the WP support forum asked if it was possible to only show a single post on the front page. Thanks to the query_posts, and the template hierachy, this can be done fairly easily without resorting to any plugins.
First you’ll need to make a copy of the index.php file in your theme directory. Rename this file home.php. This file will take precendence over index.php and be used for the front page display.
We’re using the posts_per_page parameter to request that only a single post is retrieved and populated into the query object for The_Loop.
So why not change the reading options in the WP Admin panel? The reason is because this will also affect the pagination for searches and archives. Query_posts offers a simple, elegent solution to this problem.
Update: Some themes still use the old WP 1.2 version of the_loop e.g.
<?php if ( $posts ) : foreach ( $posts as $post ) : start_wp(); ?>
instead of the WP 1.5
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
These will need to be modified to the 1.5 style before this technique can work.