Something I read today in a Javascript forum gave me pause to think about broader attitudes in developer tools and libraries.
I love jQuery, but if this is all you want to do, jQuery is overkill.
Javascript libraries are great if you want to do a lot of things, or one really complicated thing, but if you're just doing something small and simple, just write the javascript code. arandomgeek
I respectfully disagree.
Of course, people say this about a lot of other libraries and I defend against this stance in, more or less, all of these cases. I have heard it about Python and things in the standard library, about jQuery, about Django and Twisted, and about any language that isn't C. The common thread here is someone feeling that, as they are not using every or many parts of a tool, they should not use it for the one or two things it could be useful for. These people suffer from the Fear of Overkill.
I can summarize the argument against this very simply.
It would be overkill for you to write the entire tool for the one or two uses you have. It would also be overkill for you to write a bad version of the one or two uses, when you could use what already exists. It is not overkill to simply use what has already been provided to you.
I can summarize the argument against this very simply.
It would be overkill for you to write the entire tool for the one or two uses you have. It would also be overkill for you to write a bad version of the one or two uses, when you could use what already exists. It is not overkill to simply use what has already been provided to you.
Comments
1) Using the libraries saves time and improves quality. As a general approach, if I felt the need, I would rather strip down an existing library than build up a new one. The pieces I do keep have been field tested.
2) From a JQuery perspective, I am better off using its library. It, like most of the libraries, have been tuned for cross browser comparability. Those few functions that aren't, are well documented. I would not what to face the task of testing and validating 6-7 browsers for XHR calls I wrote. Or the use cases for the return states.