Earlier quoted context omitted.
> you can program it yourself easily I consider myself a seasoned programmer, but after a decade I continue to fail to do any significant customization (other than a tidy .emacs leveraging use-package (since before it was cool^H^H integrated by default)). Lisp's syntax is easy, but Emacs' API surface and concepts are bewildering, especially due to its aforementioned mismatch with modern terms.
I found it somewhat hilarious that you wrote a prose sentence with nested parentheses then began the next sentence with "Lisp's syntax is easy"
You can't do that because I hate you
131–140 of 216 posts
Re: You can't do that because I hate you
#132I have a similar pet peeve in software, what I refer to as ‘Don’t Suck’ Buttons. A ‘Don’t Suck’ Button is a setting, turned off by default and usually hidden in a corner of the UI or configuration file, which fixes a common issue that new users experience, and/or turns on the behavior that everyone wants from the product in the first place. The best examples of ‘Don’t Suck’ Buttons involve settings with no obvious di…
Often it's not that universal; especially for older software there's a lot of variety in how people use it, and changing defaults can be hugely confusing for existing users. A lot of these (alleged) "don't suck" buttons are probably more subjective than you might think.
The HDMI thing may be a security-related, or maybe there are is another reason. I think it's important to know why something behaves as it does, without too quickly assuming there's no good reason for it. That's also my criticism of this submission by the way: it makes little to not effort to understand why things are as they are.
Re: You can't do that because I hate you
#133Such a weird rant. Yes, some tools do some things, but not others. Making tools do everything for everyone just bloats them to unmaintainable messes. And it’s a special kind of entitlement to believe that the way _I_ imagine things must be working is the only possible correct interpretation. Reality is messy, there are trade-offs, and a lot of smart people think very hard about what the correct trade-offs should be g…
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.
Re: You can't do that because I hate you
#134I have a similar pet peeve in software, what I refer to as ‘Don’t Suck’ Buttons. A ‘Don’t Suck’ Button is a setting, turned off by default and usually hidden in a corner of the UI or configuration file, which fixes a common issue that new users experience, and/or turns on the behavior that everyone wants from the product in the first place. The best examples of ‘Don’t Suck’ Buttons involve settings with no obvious di…
> “Allow HDMI Devices to Control this TV” It would IMO be nice to have a default-off option to disable CEC on a specific port. Or to disable certain CEC features.
Re: You can't do that because I hate you
#135First example seems odd? The author acknowledges that the two proposed alternatives (printing " " or actually exiting) aren't great. The fact that the Python REPL provides a helpful hint seems like extra effort to make your life easier. This is especially notable given that in the next example, the author's complaint is about a command _not_ providing special guidance about the thing the user is probably trying to do…
Re: You can't do that because I hate you
#136I have a similar pet peeve in software, what I refer to as ‘Don’t Suck’ Buttons. A ‘Don’t Suck’ Button is a setting, turned off by default and usually hidden in a corner of the UI or configuration file, which fixes a common issue that new users experience, and/or turns on the behavior that everyone wants from the product in the first place. The best examples of ‘Don’t Suck’ Buttons involve settings with no obvious di…
> “Allow HDMI Devices to Control this TV” It would IMO be nice to have a default-off option to disable CEC on a specific port. Or to disable certain CEC features.
Re: You can't do that because I hate you
#137Earlier quoted context omitted.
I'd have done both the hint and the actual result. Like this: >>> print >>> exit Hint: Use exit() or Ctrl-D (i.e. EOF) to exit >>> This way, it does do the thing you literally asked for, but also does help a newbie out.
But really it should just exit. There's really no reason why it shouldn't. I think telnet does something stupid along the same lines "I know you want to quit but please ask address me as Sir first".
Programming languages have rules that the programmer is expected to learn. Part of being a programmer is foregoing a certain amount of user friendliness in favor of an environment that is more powerful so that we can actually get things done. Programmers are paid to memorize and follow these rules so that the end user does not have to learn them.
Re: You can't do that because I hate you
#138I have a similar pet peeve in software, what I refer to as ‘Don’t Suck’ Buttons. A ‘Don’t Suck’ Button is a setting, turned off by default and usually hidden in a corner of the UI or configuration file, which fixes a common issue that new users experience, and/or turns on the behavior that everyone wants from the product in the first place. The best examples of ‘Don’t Suck’ Buttons involve settings with no obvious di…
iPhone Haptic Touch duration not set to “Fast” by default.
Re: You can't do that because I hate you
#139I have a similar pet peeve in software, what I refer to as ‘Don’t Suck’ Buttons. A ‘Don’t Suck’ Button is a setting, turned off by default and usually hidden in a corner of the UI or configuration file, which fixes a common issue that new users experience, and/or turns on the behavior that everyone wants from the product in the first place. The best examples of ‘Don’t Suck’ Buttons involve settings with no obvious di…
Any time an assumption is made, it's guaranteed to be wrong for someone. In your example, there are two really positive factors in play:
1. The user can change the setting.
2. It's pretty clear what the default should be.
Most of the time, we don't get either of these.
Re: You can't do that because I hate you
#140I have a similar pet peeve in software, what I refer to as ‘Don’t Suck’ Buttons. A ‘Don’t Suck’ Button is a setting, turned off by default and usually hidden in a corner of the UI or configuration file, which fixes a common issue that new users experience, and/or turns on the behavior that everyone wants from the product in the first place. The best examples of ‘Don’t Suck’ Buttons involve settings with no obvious di…
Emacs is full of these. In its defense, Emacs predates most modern UI paradigms (including, y'know, Ctl-C/V for copy-paste, or calling things "windows" vs "frames"), and is very conservative about updating defaults due to inertia.
I also don't think they were jackasses by default...