Those are very valid points.
What I don’t understand is why you generally oppose to the idea of reinventing, or to put it differently, reformulating something when the scenario permits it or when you feel that the solutions which exist don’t fill the bill or could exist in a trimmed-down, more apt version for a given task.
I understand that you find the example in the article above problematic. That’s fair enough.
But ignoring the Markdown example, what I don’t quite understand is why you would generally negate the idea of the article, the underlying, broader thesis behind it; that a work by someone can and should be taken apart, reformulated, or approached with a completely new methodology when you, as a developer, and with the tools (your skills) think you could come up with a better solution for a task without compromising reusability or efficiency.
I’m not in any way implying that existing applications are bad, nor am I against jQuery and the like, but I don’t see how there can’t be room or valid scenarios for using alternative concepts.
I’d have thought that the general philosophy behind this approach would be right down your alley, Mitica.
[QUOTE=itmitică;5104491]There are two sides of the coin.
<hr>
N00bs would work and reinvent the wheel, it’s just that they don’t know how, so they turn to libraries instead
That’s assuming libraries are targeted to n00bs, since they can’t actually learn the language. Which is pretty much not true. If a library makes it easy for n00bs, it doesn’t mean the library is for n00bs and n00bs only. Or that any n00b could easily pick the library up and hit the ground running.
The truth is that libraries are for reusable code, for DRY code. And, most importantly, for productivity. Those that worked on projects beyond a certain level will probably understand that better. Using libraries and then finding spots where they don’t fit, or where a couple of lines of “vanilla” code are more suitable, really shows a flaw in the app design, which it’s certainly not an occasion for a developer to gloat, duct-tapping the holes.
<hr>
Seasoned developers dismiss libraries and would work on how to reinvent the wheel because they know how to
That’s assuming seasoned developers actually find it easier to learn how to use a library. Which is pretty much not true. A developer may find a particular library involves concepts it’s not qualified for, so it does things the way it knows instead. It “reinvents the wheel” thus admitting its knowledge and skills have limits too.
The truth is that it should learn, it should fill in the gaps in its knowledge and then it should move forward, like the rest. Or it should provide a better alternative. Or, if none of the above, it should understand it doesn’t really understand the topic.[/QUOTE]