Question: We have a page where a user can see a list of products. This list is quite large, so initially, we don't show the list. The user can enter a search term, click 'search', and the correct products are shown.

Sometimes, a user will want to see all products.

How would you best implement this? Any popular examples?

Options we have:

* user can enter an empty search term en click 'search' (might not be as intuitive)
* a seperate button 'show all' (which clutters the UI more)

Answer: 
You've kind of given a clue to the answer in the question - **Sometimes** a user will want to see all products.

Don't bother the user with making them think about whether they want to see all the results even before they've done the search and before they know how many results you are talking about.

Only when you have displayed some results, do you then want the user to be able to decide if/how they want to refine the search. 

If there's only a few results, then don't even show the 'Show all' button. If there's lots of results (as you suggest there is in this instance) then show a manageable number and indicate how many out of the total are being displayed. At this point you can show the 'show all' button.

If the result is very very big you maybe don't want to give the option to 'show all' at all (unmanageable).

Once the user has an idea of the number shown and the total number, (and maybe of how paginated pages this corresponds to) they have the required information to be able to answer the question '*Do I want to see all the results at once - or is it more manageable to look at a page at a time?*'. 

Ideally, like eBay and some Amazon pages, you can also give an option to specify how many items can appear on each page - make this setting remembered between sessions if possible as it would automatically provide the 'number of items that the user is comfortable viewing at once'.

For a great example (and not just in **my** opinion), see www.JohnLewis.com - eg searching for sofas <http://bit.ly/kUSAaR>

JohnLewis were ranked top in the 2010 Ecommerce Usability for high street retailers (report here <http://bit.ly/lAiZcp>)
I reckon you may be looking for some sort of "faceted search" where what you initially show the user is e.g. "Latest products". The user can then change the search filter by selecting "All products" etc. A bit like the left-hand side panel on the Google results page, showing "The web" or "Pages from ..." (click "More search tools" to see more examples)