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

Also, even a very stable project that is "done" will receive a trickle of minor tweak PRs (often docs, tests, and cleanups) proportional to the number of its users, so the rate of change never falls to zero until the code stops being useful.


I think this is also in inverse proportion to the arcane-ness of the intended use of the code, though.

Your average MVC web framework gets tons of these minor contributors, because it's easy to understand MVC well enough to write docs or tests for it, or to clean up the code in a way that doesn't break it.

Your average piece of system software gets some. The Linux kernel gets a few.

But ain't nobody's submitting docs/tests/cleanups for an encryption or hashing algorithm implementation. (In fact, AFAICT, these are often implemented exactly once, as a reference implementation that does things in the same weird way — using procedural abstract assembler-like code, or transpiled functional code, or whatever — that the journal paper describing the algorithm did; and then not a hair of that code is ever touched again. Not to introduce comments; not to make the code more testable; definitely not to refactor things. Nobody ever reads the paper except the original implementor, so nobody ever truly understands what parts of the code are critical to its functioning / hardening against various attacks, so nobody can make real improvements. So it just sits there.)


I disagree. Tiny libraries can be fine indefinitely. For example this little library which inverts a promise in JavaScript.

I haven’t touched this in years and it still works fine. I could come in and update the version of the dependencies but I don’t need to, and that’s a good thing.

https://github.com/josephg/resolvable


I think total number of commits is probably a good metric too. If the project only has 7 commits to begin with then it's unlikely to get any more updates after it's "done". But a 10 year old project with 1000 commits where the last commit was 3 years ago is a little more worrying.


> so the rate of change never falls to zero until the code stops being useful

Non-useful software changes all the time ;) Also, Useful software stands still all the time, without any proposed changes.




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

Search: