> Without the experience of making and supporting such tools, you'll never acquire wisdom, or many useful skills.
There's nothing special about those specific tools. Instead, you'll acquire the wisdom and skills from the experience of making and supporting different tools. Ideally tools that don't already exist thousands of times over.
Go ahead and invent some totally unique tool nobody's ever seen before. I'll wait. You, uh, you got one yet? No?
The point is to make your own version of a thing; it doesn't have to be one of those few I listed. To see that some other design or implementation doesn't satisfy you, and analyze why, and do it "right". You can only get that by writing something you can compare to something else.
If you do invent a thing for the first time—which you won't—it would be terrible. It'll take many iterations, your own or more likely someone else's. That's how Human tool-making works, from the first half-assed rubbing-sticks-together fire to nuclear weapons (the first Atomic Bomb was not the best…)
And to a certain extent, I don't consider people incapable/unwilling to do this "programmers". Merely typists.
> Go ahead and invent some totally unique tool nobody's ever seen before.
I think people invent totally unique tools[1] all the time but, crucially, they'll be commercially sensitive or rarely of interest or use to anyone else.
[1] Of course, it depends how you define this. Decades ago I wrote something to blank out (not strip) comments in C++ source for someone. Is that a 'totally unique tool'?
> And to a certain extent, I don't consider people incapable/unwilling to do this "programmers". Merely typists.
There's nothing special about those specific tools. Instead, you'll acquire the wisdom and skills from the experience of making and supporting different tools. Ideally tools that don't already exist thousands of times over.