> There is no point in reinventing the wheel.<p>I wish there was a better way to phrase this. I understand the spirit of this advice but in software we don't get better compilers if we stick with the first compiler that gets invented.<p>I've reinvented many things simply to learn how they work. Sometimes I get ideas about how to do things better. Sometimes I do it for the challenge (<i>I bet I could do that</i>). Sometimes I find that I can cut out 2/3 of the code, half the features, and get a system that is easier to maintain and remove errors from.<p>It's hard to become a better software engineer if all you do is glue together libraries. It's hardly ever appropriate to write your own database from scratch in a production application. But it's also hard to understand how to write your own database if you never write one yourself.
I don't have a problem with reinventing the wheel if that's what you know you're doing. Other people have already pointed out the many good reasons why you would want to do that. What I do have a problem with is people who reinvent the wheel because they couldn't be bothered to check if someone had already invented it.
Agree with the points made here but<p>>There is no point in reinventing the wheel.<p>There's a difference in a wheel made out of stone and one made of carbon fiber.
I agree in various degrees with most of the letter, except one point I strongly disagree: compare with others.<p>First, comparing to others will motivate you to get better, have a positive target you want to reach: "I want to be as good as Jake" was my model when I was in college, Jake was at that time the best IT expert I met for a decade.<p>Second, because you need to know where you are and what is going around you. You need to know your peers and how you are qualified versus them, how productive and appreciated you are and how are you paid. You may be motivated to do something when you find the new colleague still in college is earning as much as you do after 10 years just because the company wants to promote women and "reverse the wage gap", so they give female college students positions and wages equal or higher than top rated senior engineers that are male. Just saying, I saw many such cases.