The collaborative filtering engine for Java. The engine takes users' preferences for items ("tastes") and returns estimated preferences for other items. Engine is scalable (millions of preferences) and flexible (can selectively replace implementations).