jducoeur: (querki)
[personal profile] jducoeur
Way back in the early days of Querki, I was figuring out what the major Property Types were going to be.  Figuring out the list was easy; figuring out what to call them was another matter, since I'm trying to avoid techie jargon in the basic parts of Querki.  So instead of "Markup", it's simply "Text", and "Integer" is "Whole Number".  (Yes, Integer is a perfectly good math word, but most people have long since forgotten their grade school math.)

And then there's the jargony-est of them all, Boolean.  It's one of the first jargon words a programmer learns, and an incredibly useful one, but it's basically a techie shibboleth.  No way was I going to use it in Querki.  After thinking about it for a while, I gave up, called a spade a spade, and named the type YesNo.

But three years on, I find that I'm reconsidering that.  Calling the values in the database "Yes" or "No" doesn't feel quite right most of the time.  You need the concept, but I'm not sure of that terminology.

So I'm looking for opinions.  What term do *you* think would be clearest for this concept, and what do you think would be clearest for the typical user -- someone moderately smart and educated, but explicitly non-technical?  Comments welcome: naming is, as ever, the hardest part of programming...
[Poll #2030349][Poll #2030349]

(no subject)

Date: 2015-12-10 09:06 pm (UTC)
From: [identity profile] etherial.livejournal.com
I'd call the values "True" and "False" and the variable type "Truthiness".

(no subject)

Date: 2015-12-10 09:30 pm (UTC)
From: [identity profile] goldsquare.livejournal.com
I'm not sure.

We use boolean-concepts all the time (Right/Left, Yes/No, True/False, Either/Or, OneOrTheOther, ThisOrThat).

They have minor distinctions for one of two exclusive choices.

In that sense, I presume Querki has a type for "one from a sequence of choices", isn't this just the minimalist case for choice?

Or are you trying to recreate Boolean logic and algebra without the overhead of teaching math?

(no subject)

Date: 2015-12-10 10:03 pm (UTC)
From: [identity profile] goldsquare.livejournal.com
So, I think you are cleft on a real problem.

If the name is too much like English or an English concept, it may read funny. Because, epistemologically as I said, the choice between two things is sometimes truth value, sometimes Have/Haven't, and so forth.

You may want to create a non-English term that represents the binary duality, without picking a term that implies a specific part of speech equivalence. "2Choice" or "AlternativeChoice" or something - a new noun that has a meaning you can use. The noun can hint at duality, but then your writing will use it as a noun, not as a human part-of-speech.

I can't think of a normal human word that means BinaryChoiceBetweenArbitraryChoices.

(no subject)

Date: 2015-12-11 04:12 pm (UTC)
From: [identity profile] be-well-lowell.livejournal.com
Restating the problem: One always can present a binary choice as a yes/no or true/false option, but it can get awkward linguistically. Trying to look at that as an English speaker rather than a computer person, I'm thinking that [livejournal.com profile] goldsquare has the right idea, but maybe an easier implementation would be to keep a yes/no choice but suggest that some two-option choices can be best implemented through multiple choice, specifically because it already has the concept of detailing the options.

I get that this is a problem at the moment because multiple choice isn't actually available, but you have to fix that anyway.

(no subject)

Date: 2015-12-10 10:31 pm (UTC)
dsrtao: dsr as a LEGO minifig (Default)
From: [personal profile] dsrtao
uhhuh/uhuh

(no subject)

Date: 2015-12-11 12:30 am (UTC)
From: [identity profile] metahacker.livejournal.com
One of the problems is that, while programmers are used to sliding up and down the scale of abstraction, most other folks aren't. So while it makes sense implementationally to have a single type to encode a two-value thing, for users it might make sense to have a bunch of them--yes/no, true/false, left/right, up/down, enabled/disabled, and so forth.

This could be a labeling problem, but possibly not. Some folks simply won't think to grab the "2-choice" type and slap, say, "active/inactive" into the labels.

I like "yes/no" for its non-technical-ness. But it might trip up folks who are trying to encode something where "yes" is confusing.

(no subject)

Date: 2015-12-15 04:50 pm (UTC)
laurion: (Default)
From: [personal profile] laurion
I like the idea of the 'This or That' type. You can have this, or you can have that. But it's at least as terrible an abstraction as Boolean.

(no subject)

Date: 2015-12-11 01:45 am (UTC)
mindways: (Default)
From: [personal profile] mindways
I'm positive "Boolean" is the wrong terminology to use.

I strongly suspect that "TrueOrFalse" is better than "TrueFalse", and that either is better than "YesNo".
Edited Date: 2015-12-11 01:45 am (UTC)

(no subject)

Date: 2015-12-11 11:50 am (UTC)
From: [identity profile] hudebnik.livejournal.com
Most people who attended a U.S. school are familiar with the notion of "true/false questions", so if you called it "TrueOrFalse" people would almost certainly understand what you meant (although they might have negative associations with test-taking, or conclude that as with a true/false question, you can flip a coin for the answer and you're 50% likely to be right). "TrueFalse" sounds oxymoronic to me.

For other two-way choices like "LeftOrRight", I wouldn't try to force them to use the same type: that's a programmerese data-representation decision. Instead, work on that "choices" UI :-)

BTW, does "choices" mean basically an enum of finitely many discrete values, or does it cover polymorphism of distinct types too? For example, could I define List as "choice between Empty and (First Object together with Rest List)"? [Made-up syntax; I haven't done any Querki.]

I worked in a programming language (long long ago, in a galaxy far far away) in which "whether" was the identity function but enforced that its argument type was Boolean. It made a lot of code more readable: "set Overtime to whether hours > 40"

(no subject)

Date: 2015-12-13 01:53 pm (UTC)
From: [identity profile] hudebnik.livejournal.com
Yes, I was pretty sure you must already have a "list" type or equivalent; that was just an example of the kind of data definition one might want to be able to do with polymorphism.

Speaking of that programming language long long ago, in a galaxy far far away, I think its word for Boolean was "flag".

(no subject)

Date: 2015-12-11 08:05 pm (UTC)
mneme: (Default)
From: [personal profile] mneme
Assertion.

Binary (most people who don't understand "boolean" still understand that a "binary" thing only has two values).

(no subject)

Date: 2015-12-13 01:57 pm (UTC)
From: [identity profile] hudebnik.livejournal.com
Ooh, are we playing the alphabet game? Me too!

Assertion

Binary (if not Boolean)

Choice

Decision

Either

Flag

Umm... I'm stuck on G....

(no subject)

Date: 2015-12-29 03:37 am (UTC)
tpau: (Default)
From: [personal profile] tpau
see, i would call it a Boolean, and in the exposed user thing show examples. i say this because clearly you have 20 replies here, and they are mostly all saying various things.

alternately, flag or on/off may work BUT... i would call it Boolean. because honestly it is what it is, and most users actually know the word these days. the helpy texgt would help the 20%

(no subject)

Date: 2015-12-30 05:58 am (UTC)
tpau: (Default)
From: [personal profile] tpau
hmm, not sure how to test it honestly. my experience is purely anecdotal

Profile

jducoeur: (Default)
jducoeur

July 2025

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
27 28293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags