3 ms·
The concept that you can isolate "one thing" and it's not in itself "a set of other things" is a very nasty myth in the world of programming. Everything is comp
by 3cats-in-a-coat 3y ago
The concept that you can isolate "one thing" and it's not in itself "a set of other things" is a very nasty myth in the world of programming. Everything is composite. Everything is a pipeline of commands. Made of things. The "job to do" is in the eye of the beholder, not absolute. The "single responsibility principle" is not applicable in reality. It's always a tradeoff of maintaining a balance of cohesion and modularity. Where we make a cut and call it a "thing" is up to us and our needs.
For many people, for example, the tools of GitHub are so integral to their workflow, they can't use Git alone at all. So to them GitHub is the "one thing". So SQLite has their own "thing".
- hinkley 3y agoI'm not sure where I stand in this whole argument, but > The "job to do" is in the eye of the beholder, not absolute. It's definitely the case that the less sophisticated the user, the more requirements they can pack into a sentence.
- IshKebab 3y agoThey're not saying it doesn't encapsulate more than one thing. They're saying *at the abstraction level of "stuff you need to install and run" it is one thing.
- 3cats-in-a-coat 3y agoMy comment is in response to this in the parent comment: > I do prefer the "do one thing and do it well" approach.