Library Usage Debate
This cluster debates the merits of using external libraries versus implementing functionality from scratch, focusing on dependency management, development speed, code understanding, and avoiding over-engineering.
Activity Over Time
Top Contributors
Keywords
Sample Comments
I'll upvote you. That's a fine reason not to use a library.
In general libraries are there to make your life easier and help speed up development so you don't reinvent the wheel. The issue is then that you have a dependency, so you have to be able to manage that going forward(including testing other versions usually). In my experience, people normally use libraries pretty heavily and don't rewrite the functionality using primitives unless there is a real reason that everything needs to be standalone(such as writing embedded software where there
Why use any library, ever? Why not just reimplement the wheel yourself every time then?
"Go not to the elves for counsel, for the will tell you both yea and nay." - TokienIt's impossible to say if it's a good thing or a bad thing, since so much of it depends on the programmers, the business, and the libraries you are replacing.Fun side project, maybe write your own. You are Solo or tiny team, maybe write your own You know why exsisting libraries have problems, write your own. You have plenty of customers, and need to scale beyond what other people are doi
It's not a library unless it's 80% as hard to use it as it would be to implement its functionality from scratch.
Transposed to programming I'll take this as saying "Don't use other people's libraries, write your own, because you will understand them properly and they will integrate better with your programs."
maybe what you need to practice is figuring out how to locate, evaluate, and use new libraries and tools?if not, then that means those libraries and tools save you less time than it would appear, and you might as well write your own code
not usually, because:1. usually a library has a wider range of features than you need. So you don't have to rewrite the whole library, just the bits you need, and you end up writing much less code because don't have to integrate the bits you need with the bits you don't need.2. you do have to spend a lot of time understanding the interface of the imported library and writing integration code to use it correctly.3. (as others have said) there's a lot of time spent aud
In addition to what @ggm said, consider why software projects tend to employ external libraries instead of rolling their own solution. The time investment of reinventing the wheel is often immense, even though the eventual result may be objectively superior.
If it's not my own code, it's worth being a library.And I don't want to spend my time learning to write it correctly to handle all case and be performant.