Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Sometimes there can be pragmatic reasons to re implement existing software especially if your needs are simpler than the problem the library had in mind.

It can be a choice between "Write 200 lines of code that I understand and know does exactly what I need and no more" or "import 5000 lines of unknown code that might be abandoned and left to bit-rot by the original author, use 5% of it's functionality and hope I can shoehorn it in without too many gotchas"



Only try this if you are sure you understand the problem domain and are very comfortable dealing with all its pitfalls. Many times (especially when dealing with numeric code) 4500 of those 5000 lines are for dealing with special corner cases and obscure gotchas that people have spent month agonizing over how to fix and that has been battle tested by experts over years. Stuff which won't affect you 99% of the time, but when it does will leave you having to redo all their hard debugging work.


Yes, that is very true and I have been bitten by exactly that in the past also.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: