3 ms·
I agree with the rant, but not the examples. It pisses me off when programmers add "features" which forces users to deal with them. For example, pipenv always
by xdennis 3y ago
I agree with the rant, but not the examples.
It pisses me off when programmers add "features" which forces users to deal with them.
For example, pipenv always prints a message when you activate an environment (I don't know if it's still the case because I don't use it anymore). I had to migrate a cronjob which ran a Python script and sent an error email if anything got printed to stderr.
This is a pretty standard Unix thing to do, but pipenv decided to always print to stderr that the environment got activated, even though it's not an error. And there is of course no way to get it to shut up. I had to use some Bash hackery to filter that out.
Ryan Dahl's 2011 rant on this is quite relevant:
> Those of you who still find it enjoyable to learn the details of, say, a programming language - being able to happily recite off if NaN equals or does not equal null - you just don’t yet understand how utterly fucked the whole thing is. If you think it would be cute to align all of the equals signs in your code, if you spend time configuring your window manager or editor, if put unicode check marks in your test runner, if you add unnecessary hierarchies in your code directories, if you are doing anything beyond just solving the problem - you don’t understand how fucked the whole thing is. No one gives a fuck about the glib object model.
- Ferret7446 3y agostderr is not reserved for errors. It is perfectly acceptable in *nix to print diagnostics and logs to stderr. Granted, pipenv should have a quiet flag, but you should be checking the status code if you want to be notified of errors.
- JohnFen 3y ago> pipenv decided to always print to stderr that the environment got activated, even though it's not an error. This is a pet peeve of mine. I see it every so often and every time, I wonder if the dev wasn't familiar with the norms of the platform or if the dev was being malicious. Either way, it doesn't speak well for them.
- johnnyanmac 3y ago>if you are doing anything beyond just solving the problem It's a rant so I won't take it TOO literally, but: The opposite extreme of this philosophy is why we have stuff like Blender pre-2.7 and GIMP. There is some use to polishing up a proper looking UI and ensuring familiar UX. Especially if your audience is non-developers. But yes, I understand. configs and CLIs should be as "dumb" as possible. Proper line breaks for readability and maybe color if needed, but there's nothing more frustrating than debugging what comes down to a bare basic command.