You shouldn't have absolutely no double negatives in your software, never
Programmers are always doing shit like
☐ "function A" (checking this box enables function A)
☐ "disable function B" (checking this box disables function B)
☐ "enable function C" (checking this box enables function C)
This is a lot like a questionnaire. And like I've said before, everyone is horrible at designing questionnaires and I should be the only person allowed to make them
@charlotte @schratze or "empty space" / "filled circle that looks like a bullet point"
@charlotte @schratze
turn on "do not disturb" to turn off disturbances
@schratze that's one more reason why it bothers me.
i shouldn't have to opt out of disturbances, and now it's completely normalisedt to disturb others with disturbances meant for you, anywhere, any time.
@charlotte
@schratze imo, one important exception: important security features that should only be disabled if you really know what you're doing
but i'm sure that's not what you're talking about and in most cases you're right
@f4grx @schratze @charlotte you click the button. It turns a slightly different shade of grey. It is impossible to determine if this is the checked or unchecked state. The function remains disabled in either case.
@gormster @f4grx @schratze @charlotte isn't that from the Infocom Hitchhikers game? 😁
@schratze and that's why I use nullable booleans. It sounds like a joke but yes/no/maybe actually works wonderfully if you use null to mean "default behavior". Because then you can unambiguously use true/false as on/off.
And somewhat annoyed there is no universally-agreed UI element for that either (but there certainly have been way too many attempts to make a ternary checkbox, and they are all awful).
@charlotte @schratze that's absolutely the worst UI as states make no sense anymore and you don't know what anything is set to
/Cinny
@confusomu @schratze it would be so easily solveable too because UI toolkits usually have a way to have a more detailed description in option menus
so why not
☑ Function A
When enabled, Function A will Do Stuff
@schratze then you also get buttons labeled "A On" which indicates A is enabled, pressing it disables A, and "A On" which indicates pressing it enables A, hence A is off
@burnitdown @schratze idk what that means but the even worse version of this is a toggle switch labelled "disable X" that, when you enable it, disabling X, changes text to "enable X"
that's kind of what my Simpsons reference is about.
there is an episode in one of the first eight seasons where there's a glass case with Smokey the Bear in it, at some tourist attraction, and a voice box asks "Only *who* can prevent forest fires?", so Lisa presses the only button, marked "YOU", and the voice box says "you have selected YOU, referring to ME. that is incorrect."
@schratze no that's just a loop
Haskell doesn't even have traditional loops