Do you need Algorithms?

Algorithm knowledge and being able to immediately guess which algorithm to follow in a specific case is a gift that the main difference between truly skilled programmers / designers and novice/amateur ones.

One of the most discussed and frequently asked questions that arouse from absolute beginners about programming is that if they need algorithms and mathematics knowledge in order to be a successful programmer. You can for sure develop something that does the desired job without going too deep into algorithms, however if you have solid background in algorithms you can do much more in an efficient way where the efficiency is the key since the very beginning of the computer science. So why not spare time and effort for some algorithm knowledge?