I suppose it depends on which wheel one plans to reinvent. It's a judgment call.<p>As a programmer, I've found myself seeing an app or framework and trying to recreate it on my own. Whether I succeed or fail doesn't really matter, but rather the knowledge from the experience is what I'm after.<p>In practice, I almost always try to use existing tools where I can rather than building them from scratch. That said, sometimes it makes sense to quickly hack the part that I need rather than include an entire vendor library or to attempt to extract the part that I need.
There are plenty of examples of reinventing (or at least reimagining) something with great results. Apple has a great track record with the iPod (not the first MP3 player, iPhone (not the first smartphone with apps), and the iPad (not the first tablet PC). Google was also not the first search engine, and Facebook was not the first social network. If you can do it better or more profitable or even just different, do it.
In my particular slice of the industry, it's because there's already thousands of developers out there supporting, extending, and maintaining the wheel that's already been invented.