1. A method for providing search results on a search engine, the method comprising: gathering a plurality of profile data; generating a user profile associated with a user identification using the plurality of profile data; receiving a search input from a user and the user identification; generating a search result comprising a plurality of search result items based on the search input; and creating a ranked search result personalized to the specific user using the user profile.