Re: [Bitcoin-development] bits: Unit of account

2014-05-05 Thread Gordon Mohr
On 5/2/14, 10:41 PM, Aaron Voisine wrote:
 I have to agree with Mike. Human language is surprisingly tolerant of
 overloading and inference from context. Neurotypical people have no
 problem with it and perceive a software engineer's aversion to it as
 being pedantic and strange. Note that bits was a term for a unit of
 money long before the invention of digital computers.

Of course people *can* manage, when they need to; natural language is 
full of such overloading. But the clashes are not costless, they add 
mental load for first-time learners and low-context users.

So the concern is, when there's a free choice, why not bootstrap words 
that are less fragile and context-dependent? Why add extra comprehension 
gotchas into what is already a challenging domain?

And it's exactly the aspect that makes 'bit' attractive – it's right 
there in the name _Bit_coin! – that equally presents the clash – 
because the sense of 'bit' honored in the Bitcoin name, and central to 
the systems' essential properties, is the binary digit.

It's like intentionally introducing a 'false friend' word-correlation 
between the vernacular of the casual Bitcoin user, and the language of 
Bitcoin experts. And the word pair is nearly auto-antonymic in some 
essential dimensions: indivisible vs. divisible, base-2 vs. base-10, 
composed-geometrically vs. composed-arithmetically.

https://en.wikipedia.org/wiki/False_friend - interferes w/ lang learning
https://en.wikipedia.org/wiki/Auto-antonym

In naming amounts, there's no desperate need to stay in the shallow 
crowded pool of words just derived from bit and coin. Real 
currencies have many names for their units, including subunits with 
highly-unrelated sounds. The contrasting words help create more shades 
of meaning for different purposes. Some examples:

  dollars/bucks - bits (1/8ths) - dimes (1/10ths) - cents (1/100ths)
  pounds/quid - shillings (1/20ths) - pence (1/100th; formerly 1/240th)
  yuan/kuai - jiao (1/10ths) - fen (1/100ths)

Regarding the cute example of contextual disambiguation...

On 5/3/14, 11:15 PM, Aaron Voisine wrote:
 Bit by bit, it's become clear that it's a bit much to worry even a
 little bit that overloading the word bit would be every bit as bad
 as a two bit horse with the bit between it's teeth that bit the hand
 that feeds it, or a drill bit broken to bits after just a bit of use.

That there are many existing definitions doesn't reassure that one 
*extra* definition will still be costless, especially for 
low-literacy/low-context/low-numeracy users or learners.

Note that this example *doesn't* showcase the new proposed 
'100-satoshi-value' usage, nor activate the 'binary digit' meaning. (It 
does activate the part/quantity, usually small or imprecise sense of 
'bit', 7 times depending on how you classify the idioms.)

Try instead this mash of concepts, which someone deciding whether to 
trust 'bits' will face:

Bitcoin uses the digital science of bits, the indivisible 1s and 0s of 
computer logic, to create a networked money measured in bits, which 
split into 100 indivisible cents called satoshis. Bit amounts are 
represented as 64-bit integer counts of 1/100th of a bit, so 64-bit 
integers can represent any balance from the smallest positive bit total, 
0.01 bits (integer 1), up to a number over 92 quintillion bits (2^63-1, 
integer 9,223,372,036,854,775,808).

That max value won't be needed, though, because a crucial bit of the 
original Satoshi design is a maximum issuance of 21,000,000,000,000.00 
bits (21 trillion bits, 21 terabits). These new bits are awarded to 
computers racing to complete a digital verification task on an 
algorithmic schedule: currently 25 million bits (25 megabits) arrive 
about every 10 minutes. That is, the total number of Bitcoin bits is 
increasing at 6.33 Kbps, though that arrival slows to 0 bps by around 
the year 2140.

The most important bit to remember is that your ability to spend bits is 
controlled by secret 256-bit numbers, called private keys, bits of info 
that only you know. The fact that these keys are 256-bits long is what 
makes them practically unguessable, even if someone had a computing 
budget of all the bits in the world, or built a computer out of all the 
bits in the universe. (That is, even though the network can create 25 
million bits every 10 minutes, it can't guess your secret 256 bits in 
the lifetime of the universe!)

Watch out, though: human-chosen passwords and 4-8 word phrases typically 
provide much less than 128 bits of security, far too little to create a 
256-bit key. And in the math of bits, having half as many bits doesn't 
mean half the security, it means the square-root as much security. (For 
a 128-bit shortfall, that's 2^128 or 340 billion billion billion billion 
times less strength.)

If your secret has enough bits, though, you can be confident that you 
can put millions of dollars into bits, because of the cryptographic 
power of hundreds of bits. The current value of 

Re: [Bitcoin-development] bits: Unit of account

2014-05-02 Thread Gordon Mohr
[resend - apologies if duplicate]

Microbitcoin is a good-sized unit, workable for everyday transaction 
values, with room-to-grow, and a nice relationship to satoshis as 'cents'.

But bits has problems as a unit name.

Bits will be especially problematic whenever people try to graduate 
from informal use to understanding the system internals - that is, when 
the real bits of key sizes, hash sizes, and storage/bandwidth needs 
become important. The bit as binary digit was important enough that 
Satoshi named the system after it; that homage gets lost if the word is 
muddied with a new retconned meaning that's quite different.

Some examples of possible problems:

* If bit equals 100 satoshis, then the natural-language unpacking of 
bit-coin is 100 satoshi coin, which runs against all prior usage.

* If people are informed that a 256-bit private key is what ultimately 
controls their balances, it could prompt confusion like, if each key 
has 256-bits, will I need 40 keys to hold 10,000.00 bits?

* When people learn that there are 8 bits to a byte, they may think, 
OK, my wallet holding my 80,000.00 bits will then take up 10 kilobytes.

* When people naturally extend bit into kilobits to mean 1000 
bits, then the new coinage kilobits will mean the exact same amount 
(100,000 satoshi) as many have already been calling millibits.

I believe it'd be best to pick a new made-up single-syllable word as a 
synonym for microbitcoin, and I've laid out the case for zib as that 
word at http://zibcoin.org.

'Zib' also lends itself to an expressive unicode symbol, 'Ƶ' 
(Z-with-stroke), that remains distinctive even if it loses its stroke or 
gets case-reversed. (Comparatively, all 'b'-derived symbols for 
data-bits, bitcoins, or '100 satoshi bits' risk collision in contexts 
where subtleties of casing/stroking are lost.)

(There's summary of more problems with bit in the zibcoin.org FAQ  at: 
http://zibcoin.org/faq#why-not-bits-to-mean-microbitcoins.)

- Gordon

On 5/1/14, 3:35 PM, Aaron Voisine wrote:
 I'm also a big fan of standardizing on microBTC as the standard unit.
 I didn't like the name bits at first, but the more I think about it,
 the more I like it. The main thing going for it is the fact that it's
 part of the name bitcoin. If Bitcoin is the protocol and network, bits
 are an obvious choice for the currency unit.

 I would like to propose using Unicode character U+0180, lowercase b
 with stroke, as the symbol to represent the microBTC denomination,
 whether we call bits or something else:
   http://www.fileformat.info/info/unicode/char/0180/index.htm

 Another candidate is Unicode character U+2422, the blank symbol, but I
 prefer stroke b.
 http://www.fileformat.info/info/unicode/char/2422/index.htm

 Aaron

 There's no trick to being a humorist when you have the whole
 government working for you -- Will Rodgers

 On Apr 21, 2014 5:41 AM, Pieter Wuille pieter.wuille@gm... wrote:

 On Apr 21, 2014 3:37 AM, Un Ix slashdevnull@... wrote:

 Something tells me this would be reduced to a single syllable in common
 usage I.e. bit.

 What units will be called colloquially is not something developers will
 determine. It will vary, depend on language and culture, and is not
 relevant to this discussion in my opinion.

 It may well be that people in some geographic or language area will end up
 (or for a while) calling 1e-06 BTC bits. That's fine, but using that as
 official name in software would be very strange and potentially confusing
 in my opinion. As mentioned by others, that would seem to me like calling
 dollars bucks in bank software. Nobody seems to have a problem with
 having colloquial names, but US dollar or euro are far less ambiguous
 than bit. I think we need a more distinctive name.

 --
 Pieter

 --
 Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
 Instantly run your Selenium tests across 300+ browser/OS combos.  Get
 unparalleled scalability from the best Selenium testing platform available.
 Simple to use. Nothing to install. Get started now for free.
 http://p.sf.net/sfu/SauceLabs
 ___
 Bitcoin-development mailing list
 Bitcoin-development@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/bitcoin-development


--
Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.  Get 
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free.
http://p.sf.net/sfu/SauceLabs
___
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development