Originally introduced by Google and Blogger to reduce the amount of spam content added to weblogs, the ‘nofollow’ attribute is used on link statements in html (e.g. Link to my site) to tell search engines NOT to follow those links, and therefore not give link value to the target web page. Although the link will still work when clicked by normal web visitors, search engine spiders should not follow them (although some search engines follow the link to spider and index the target site without actually giving link value to the site).
Some search engines also use nofollow as a way of recognising paid links (which they dislike). If you have any links on your site which are paid for by the target website, you might want to think about adding a rel=nofollow to the html links. Without nofollow on your links, there is a chance that search engines may penalise you by reducing your page rank value, thereby relegating you in the Search Engine results. You will still give the target site some traffic, but they will not benefit in terms of link value (link juice).
The ‘nofollow’ cause is a just one – search engine companies believe in the natural selection and promotion of websites in SERPs based on content and relative popularity within the internet community. If you have a website that lots of other popular websites link to, then that is a sign that yours is a valuable resource. The nofollow attribute helps prevent paid advertisers from distorting those results.