How about training a neural network for each user? You could provide lots of inputs that wouldn't be useful for all users (time of day, pervious likes, week of month, moon cycle, volume on twitter, DJIA movement) but may be very useful for a given user...<p>So many web apps (due to their nature, I'm sure) are based on a one-size-fits-all approach recommendation engine (i.e. Netflix, Pandora). How about an "everybody is different" approach that takes advantage of cloud processing/storage and scale? Sounds like a fun experiment, at least.