4 ms·
That is one thing authors of open source software should learn: while it might be fun to have clever insider terminology, when publishing, come up with terms wh
by _ph_ 5y ago
That is one thing authors of open source software should learn: while it might be fun to have clever insider terminology, when publishing, come up with terms which are unabigous to understand. Also, don't use terms which might be off-putting or even offensive to some.
- RobertRoberts 5y agoThe term "plumbing" is so common of a term in the US (maybe Britain also) to refer to "inner workings" of anything at that to be offended by it implies manufactured outrage with dubious motives. This guy is sharing his work of his own free will and deserves respect and owes no one anything at all. A recent news topic you should review on this: https://news.ycombinator.com/item?id=16631476 https://news.ycombinator.com/item?id=16631476 [Edit. Removed slightly inflammatory statement]
- _ph_ 5y agoIt is more the explicit reference to toilets, which also drags the term plumbing into it, as I cannot think of something else than sewage in this context. I don't find the term plumbing by itself off-putting. And it certainly isn't about being offended by "other people's culture". I talked to enough americans who shared my sentiment. And as we see here in the discussion, it just wasn't understood. That was the other part of what I wrote: even if the term might be completely innocent, it might be difficult to understand for outsiders. It is not, that I haven't been guilty myself of bad naming in my projects. It can be fun or even convenient to come up with "insider" terms. But as soon as you have to communicate with outsiders to the project, the tend to bite you, even if there is no offensiveness about it. Naming is one of the hard problems in software engineering :)
- diesal11 5y agoNaming things can be hard. How would you describe the distinction between these two command types?
- _ph_ 5y agoHow about "infrastructure" and "interface"?
- zufallsheld 5y agoInfrastructure is certainly not unambiguous here.
- bmn__ 5y agoLet's see how this sounds when we flip it around. "That is one thing news aggregator commenters should learn: while it might be fun to just put one's ignorance on display for the world to see, when publishing, come up with a modicum of curiosity and willingness to learn about and engage with for the craft and its culture that one is part of."
- _ph_ 5y agoSorry, I have difficulties parsing your statement. While the term plumbing might be understandable by itself, porcellain certainly isn't, until you are explained the metaphor of porcellain and plumbing in this context. It just isn't efficient to come up with new terms for things which have to explained to any newcome to the project. As I wrote in another post, it is nothing I haven't been guilty of myself, but am trying to avoid.
- bmn__ 5y ago> I have difficulties parsing your statement The underlying idea is: as a hacker, and as a first step, the onus is on you to come up with the explanation‡ yourself, not expect the burden of education on somebody else's back to be carried towards you. Same goes for other (potential) git users in a similar situation. It is okay to disagree with this, but then one would mark oneself as a member of the out-group. HTH; HAND ‡ We are blessed to live in the information age. The explanation is abundant and easy to find, literally within seconds: <https://git-scm.com/book/en/v2/Git-Internals-Plumbing-and-Porcelain https://git-scm.com/book/en/v2/Git-Internals-Plumbing-and-Po...> <https://stackoverflow.com/questions/6976473/what-does-the-term-porcelain-mean-in-git https://stackoverflow.com/questions/6976473/what-does-the-te...>
- pintxo 5y agoCommunication is dependent on context. If two people do not share any context, nothing will be unambiguous. As sender it's impossible to know the context off all recipients beforehand.
- _ph_ 5y agoWithout any context, communication is difficult indeed. But the context here is general IT, a lot of context is established there and can be anticipated by any "sender".
- tubby12345 5y agoPeople are so entitled that they demand 1000s of hours of free (OSS) dev and aesthetics that please them. If the name is off-putting to you, you're free not to use it. If lots of people agree with you (that the off-putting name is more significant than the contribution) then the market will have spoken and the tool will die. But if it doesn't die then you should probably reconsider your hang-up.
- _ph_ 5y agoYou completely misunderstood the intention of my posting. I feel no entitlement to use git. My posting was meant as a comment about practises in programming. Being a long-term developer, I know about all the temptations about funny names, insider jokes, sometimes inappropriate humor. And yes, they are can be fun. But at some point it might be a good idea not to expose all of this to the public. That it is a good idea to try to use appropriate terms for things. Makes it easier to understand.
- tubby12345 5y agoAnd you completely misunderstood the intention of my response: people should try to look beyond their own fragile sensibilities the contribution rather than the aesthetics. Barring that they should just pass (instead of criticizing).
- rswail 5y agoThe guy came up with git over a weekend. The same guy wrote an operating system and named it after himself. In-jokes and easter eggs are famous in software engineering. Linus is the original author of two foundational pieces of software technology in use today. I think he can name things whatever he wants. If you're offended by the terminology of plumbing and porcelain because you can only think of toilets, then I suggest you look around your bathroom and consider what the basins are made of, or the bidet, or some bathtubs. It's a perfectly valid extension of the "plumbing" term meaning the underlying infrastructure, while porcelain is the way users interact with the system. When I do "man git" the first two lines are: NAME git - the stupid content tracker Further down in that manpage is: GIT COMMANDS We divide Git into high level ("porcelain") commands and low level ("plumbing") commands.