4 ms·
Yes this can't be emphasized enough. static linking is fine, I don't really care either way. But please, please don't vendor. The point of software is to be co
by Ericson2314 6y ago
Yes this can't be emphasized enough. static linking is fine, I don't really care either way. But please, please don't vendor.
The point of software is to be composable, and vendoring kills that. Vendoring will cause free software to drown in its own complexity and is completely irresponsible.
- chris_wot 6y agoCould someone explain what is meant by “vendoring”?
- jrockway 6y agoVendoring is when you just copy the dependencies into your own source tree, like in a third_party directory. Personally, I'm a big fan of just taking what you need. A little copying is better than a little dependency[1]. [1] https://www.youtube.com/watch?v=PAAkCSZUG1c&t=9m28s https://www.youtube.com/watch?v=PAAkCSZUG1c&t=9m28s
- deleted 6y ago[deleted]
- Ericson2314 6y agoIt's one a package contains it's dependencies, and often their dependencies too (transitive deps).' packages are supposed to be nodes in a dependency graph (or better, partial order), and there are nice composition rules. But one the nodes themselves represent graph/order closures (or almost-closure) we use that nice property. People that are very application oriented tend to like vendoring --- "my application is its own island, who gives a shit". But the distro's point isn't just gather the software --- that's an anachronism --- but plan a coherent whole. And applications who only care about themselves are terrible for that. The larger point is free and open source software really should be library-first. Siloed Applicationns are a terrible UI and holdover from the economics of proprietary shrink-wrapped software which itself is a skeuomorphism from the physical world of nonreplicable goods.
- dragonwriter 6y ago> Siloed Applicationns are a terrible UI and holdover from the economics of proprietary shrink-wrapped software which itself is a skeuomorphism from the physical world of nonreplicable goods Siloed applications are UI neutral and represent decoupling, which enables progress and resilience. Excessive interdependence is how you lose Google Reader because other services have changed requirements.
- Ericson2314 6y agoWhat? Getting rid of Google Reader was a business decision. > Siloed applications are UI neutral and represent decoupling, which enables progress and resilience. The medieval manorial economy is resilient. Is that progress? What happened to unified look and feel? and rich interactions between widgets? The smalltalk and Oberon GUI visions? All that requires more integration. I get that we need to make the here and no work, but that is done via the en-mass translation of language-specific package manager packages to distro packages (static or shared, don't care), not vendoring.
- dragonwriter 6y ago> What? Getting rid of Google Reader was a business decision It has been widely reported that a significant factor in that business decisions was Google’s massively coupled codebase and the fact that Reader had dependencies on parts of it that were going to have breaking changes to support other services. > The medieval manorial economy is resilient. It’s not, compared to capitalist and modern mixed economies, and unnecessary and counterproductive coupling between unrelated functions is a problem there, too. > Is that progress? Compared to its immediate precedents, generally, yes.
- sagichmal 6y agoFewer and fewer people are interested in the benefits provided by "coherent whole" distributions. And more and more people are interested in the benefits provided by "it's own island" applications. The future is statically linked and isolated applications. Distros need to adapt.
- vinay_ys 6y agoSoftware is composable - at compile/package time. It doesn't have to be composable at use time.
- Ericson2314 6y agoI agree entirely, but vendoring breaks composition compile/package time by definition! If you have compositional packages you bake into one giant executable or something, that's still not vendoring.