Whatever the first implementation does ends up being a suicide pact by default.
I agree. The behavior of rm
and cat
and cp
and mv
and dd
and many other utilities don’t necessarily have the interface I would prefer, but they are too widely used for it to be helpful to radically change them. It’s somewhat unfortunate that these names are already reserved, but I don’t think it’s necessary to change them.
In the same way, I don’t have a problem with packages having generic names but not actually being useful: I’ve read that the requests
and urllib3
packages for Python aren’t being maintained very well, but I don’t mind that as long as I can accomplish things while following best practices.
Because of this, I’m not afraid to use names like “getRequest” or “result”, especially if they were generated with an automatic refactoring, and I’m not upset when I see similarly generic names being used with source code I’m changing, since I know that the second name for something that’s similar to an existing thing will have to actually be descriptive, but the first name is likely to not be.
I have another example of how I’d apply these thoughts: the process for developing v2+ modules for the Go programming language strikes me as inelegant, so I would probably prefer to just create an entirely new repository rather than try to attempt that.
https://www.privacyguides.org/en/real-time-communication/