Recommender systems are an important part of the information and
e-commerce ecosystem. They represent a powerful method for enabling
users to filter through large information and product spaces. Nearly
two decades of research on collaborative filtering have led to a varied
set of algorithms and a rich collection of tools for evaluating their performance.
Research in the field is moving in the direction of a richer
understanding of how recommender technology may be embedded in
specific domains. The differing personalities exhibited by different recommender
algorithms show that recommendation is not a one-sizefits-
all problem. Specific tasks, information needs, and item domains
represent unique problems for recommenders, and design and evaluation
of recommenders needs to be done based on the user tasks to
be supported. Effective deployments must begin with careful analysis
of prospective users and their goals. Based on this analysis, system
designers have a host of options for the choice of algorithm and for its
embedding in the surrounding user experience. This paper discusses
a wide variety of the choices available and their implications, aiming to
provide both practicioners and researchers with an introduction to the
important issues underlying recommenders and current best practices
for addressing these issues.