Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: Jan on March 14, 2014, 07:58:33 PM



Title: Finally a question about Bitcoin that I could not answer.
Post by: Jan on March 14, 2014, 07:58:33 PM
I did a Bitcoin presentation today at a company where I used to work (which happens to make hardcore cryptography for big classical financial institutions) and an old colleague asked me:

"If the Satoshi white paper is above my level, where do I find a book that explains all this in layman terms?"

... and I said "Hmm... good question."

I spent several years reading + writing code and forums to get my understanding of Bitcoin, and consider myself one of the few who really understand how Bitcoin works. Bitcoin has come far, but yet, we do not have a proper piece of literature that explains how it really works.

There is a book for everything.... except Bitcoin. There must be a big opportunity waiting here.

When I search for Bitcoin on Amazon I feel ashamed.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Trongersoll on March 14, 2014, 08:01:59 PM
Write "Bitcoin for Dummies".


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: grau on March 14, 2014, 08:04:52 PM
Yes, Jan this is very true.

Unfortunately, all of us, including you, who could write the book are too busy writing software. Times are just too exciting.
By the time there will be a good book on Amazon on Bitcoin we will retire ... not because of being old.



Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: itod on March 14, 2014, 11:04:25 PM
I spent several years reading + writing code and forums to get my understanding of Bitcoin, and consider myself one of the few who really understand how Bitcoin works. Bitcoin has come far, but yet, we do not have a proper piece of literature that explains how it really works.

This is very true. Learning by reading code is a good way, but really slow.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: knightcoin on March 14, 2014, 11:20:42 PM
I did a Bitcoin presentation today at a company where I used to work (which happens to make hardcore cryptography for big classical financial institutions) and an old colleague asked me:

"If the Satoshi white paper is above my level, where do I find a book that explains all this in layman terms?"

... and I said "Hmm... good question."

I spent several years reading + writing code and forums to get my understanding of Bitcoin, and consider myself one of the few who really understand how Bitcoin works. Bitcoin has come far, but yet, we do not have a proper piece of literature that explains how it really works.

There is a book for everything.... except Bitcoin. There must be a big opportunity waiting here.

When I search for Bitcoin on Amazon I feel ashamed.


As I said on https://bitcointalk.org/index.php?topic=515576.0 ... a guide/book about the bitcoin technology will help a lot. I suggest to you to open a crowdfunding project ... and please start writing your book ;) ...

ps-> I remembering now it took ages to Fyodor to write a book about nmap though ... the time he wrote I bought straightway ..


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: ns12123 on March 15, 2014, 03:09:11 AM
I could not agree, i can find you about 20 articles that explain you in DETAILS how it works, you don't need a book. But yes there is opportunity to someone who wants to write one.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: chriswilmer on March 15, 2014, 03:52:16 AM
*ahem* Shameless plug...

http://www.befuddled.org/befuddled

It's a little bit of everything... simple explanations of how Bitcoin works in laymen's terms, humor and cartoons, and also some fairly in depth chapters on elliptic curves that walk you through the digital signature algorithm. The last few chapters have programming examples too.

Hope you like it when it comes out!

PM me if you are interested in a sneak preview of some of the chapters.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: knightcoin on March 15, 2014, 04:16:05 AM
I could not agree, i can find you about 20 articles that explain you in DETAILS how it works, you don't need a book. But yes there is opportunity to someone who wants to write one.

no hell when I mean book is just a easy_going_way_ideas_following


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Jan on March 15, 2014, 08:02:23 AM
I could not agree, i can find you about 20 articles that explain you in DETAILS how it works, you don't need a book. But yes there is opportunity to someone who wants to write one.
Can you post a handful of links?


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: chriswilmer on March 15, 2014, 08:16:11 AM
Jan, just curious, is the book I suggested along the lines you are looking for? I realize it isn't out and so you can't really say with any certainty... but it's helpful for me to gauge whether people think it might be interesting to them based on the superficial details (i.e., the stuff that's apparent before you actually start reading it).


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: wheatstone on March 15, 2014, 02:49:26 PM
Can you post a handful of links?

It's really a matter of which aspect of Bitcoin you want to understand.

I would recommend getting a feel for the overall nature of Bitcoin, then proceeding to whichever area tickles your fancy. You could look more into the blockchain, transactions, or encryption / digital signatures / hashes.

https://en.bitcoin.it/wiki/Bitcoin

http://www.coindesk.com/information/what-is-bitcoin/

http://arstechnica.com/tech-policy/2011/06/bitcoin-inside-the-encrypted-peer-to-peer-currency/

http://arstechnica.com/security/2013/10/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/

The forums here are also a good resource if you have any narrow questions (using the search function first is recommended since almost every conceivable question has been answered a dozen times before).


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: benjyz on March 15, 2014, 03:34:04 PM
It's very hard to explain if you start from the code and descriptions of the Bitcoin system itself, as it solves problem people usually have never thought about, or even conflicts knowledge in the fields of computer science, cryptography and economics. It's as if you had to explain a computer science problem to people who haven't seen computers before. So the explanation of the system requires an explanation of the goals. The whitepaper doesn't go into this, but satoshi's first posts.

Quote
The Byzantine Generals' Problem

A number of Byzantine Generals each have a computer and want to attack the King's wi-fi by brute forcing the password, which they've learned is a certain number of characters in length. Once they stimulate the network to generate a packet, they must crack the password within a limited time to break in and erase the logs, lest they be discovered. They only have enough CPU power to crack it fast enough if a majority of them attack at the same time.

They don't particularly care when the attack will be, just that they agree. It has been decided that anyone who feels like it will announce an attack time, which we'll call the "plan", and whatever plan is heard first will be the official plan. The problem is that the network is not instantaneous, and if two generals announce different plans at close to the same time, some may hear one first and others hear the other first.

They use a proof-of-work chain to solve the problem. Once each general receives whatever plan he hears first, he sets his computer to solve a difficult hash-based proof-of-work problem that includes the plan in its hash. The proof-of-work is difficult enough that with all of them working at once, it's expected to take 10 minutes before one of them finds a solution and broadcasts it to the network. Once received, everyone adjusts the hash in their proof-of-work computation to include the first solution, so that when they find the next proof-of-work, it chains after the first one. If anyone was working on a different plan, they switch to this one, because its proof-of-work chain is now longer.

After about two hours, the plan should be hashed by a chain of 12 proofs-of-work. Every general, just by verifying the difficulty of the proof-of-work chain, can estimate how much parallel CPU power per hour was expended on it and see that it must have required the majority of the computers to produce in the allotted time. At the least, most of them had to have seen the plan, since the proof-of-work is proof that they worked on it. If the CPU power exhibited by the proof-of-work is sufficient to crack the password, they can safely attack at the agreed time.

Quote
The root problem with conventional currency is all the trust that's required to make it work. The central bank must be trusted not to debase the currency, but the history of fiat currencies is full of breaches of that trust. Banks must be trusted to hold our money and transfer it electronically, but they lend it out in waves of credit bubbles with barely a fraction in reserve. We have to trust them with our privacy, trust them not to let identity thieves drain our accounts. Their massive overhead costs make micropayments impossible.

A generation ago, multi-user time-sharing computer systems had a similar problem. Before strong encryption, users had to rely on password protection to secure their files, placing trust in the system administrator to keep their information private. Privacy could always be overridden by the admin based on his judgment call weighing the principle of privacy against other concerns, or at the behest of his superiors. Then strong encryption became available to the masses, and trust was no longer required. Data could be secured in a way that was physically impossible for others to access, no matter for what reason, no matter how good the excuse, no matter what.

It's time we had the same thing for money. With e-currency based on cryptographic proof, without the need to trust a third party middleman, money can be secure and transactions effortless.

One of the fundamental building blocks for such a system is digital signatures. A digital coin contains the public key of its owner. To transfer it, the owner signs the coin together with the public key of the next owner. Anyone can check the signatures to verify the chain of ownership. It works well to secure ownership, but leaves one big problem unsolved: double-spending. Any owner could try to re-spend an already spent coin by signing it again to another owner. The usual solution is for a trusted company with a central database to check for double-spending, but that just gets back to the trust model. In its central position, the company can override the users, and the fees needed to support the company make micropayments impractical.

Bitcoin's solution is to use a peer-to-peer network to check for double-spending. In a nutshell, the network works like a distributed timestamp server, stamping the first transaction to spend a coin. It takes advantage of the nature of information being easy to spread but hard to stifle. For details on how it works, see the design paper at http://www.bitcoin.org/bitcoin.pdf

The result is a distributed system with no single point of failure. Users hold the crypto keys to their own money and transact directly with each other, with the help of the P2P network to check for double-spending.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: CoinBuzz on March 15, 2014, 09:06:07 PM
SUGGESTION:

Start a book about bitcoin in http://wikibooks.org
(since bitcoin is peer-to-peer maybe that sounds good if it's book be somehow p2p too)


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: monsterer on March 15, 2014, 09:24:35 PM
I wrote this article which tries to explain what a bitcoin is in layman's terms:

http://www.wildbunny.co.uk/blog/2014/03/03/what-is-a-bitcoin/

If you like it, pass it on :)


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Jan on March 17, 2014, 10:37:44 AM
Jan, just curious, is the book I suggested along the lines you are looking for? I realize it isn't out and so you can't really say with any certainty... but it's helpful for me to gauge whether people think it might be interesting to them based on the superficial details (i.e., the stuff that's apparent before you actually start reading it).
Chris, interesting way of communicating information. I must admit that I have never seen anything like it. I am probably more an old-school kinda guy who would look for something boring like this.
Kernighan & Richie's C book (http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&ie=UTF8&qid=1395052376&sr=1-1&keywords=Kernighan)
or
Stevens TCP/IP Illustrated (http://www.amazon.com/TCP-Illustrated-Vol-Addison-Wesley-Professional/dp/0201633469)
... something that explains Bitcoin on the protocol level and not so much how bitcoin is used today, as this gets outdated pretty quickly.
Maybe your way is more suitable to the younger generation, good luck with your project.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Cyrus on March 17, 2014, 12:21:33 PM
There is a project called Bitcoinomics: https://www.goldsilverbitcoin.com/bitcoinomics-the-book/
But I don't know if it's maintained anymore or not.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Joshuar on March 17, 2014, 12:28:41 PM
I did a Bitcoin presentation today at a company where I used to work (which happens to make hardcore cryptography for big classical financial institutions) and an old colleague asked me:

"If the Satoshi white paper is above my level, where do I find a book that explains all this in layman terms?"

... and I said "Hmm... good question."

I spent several years reading + writing code and forums to get my understanding of Bitcoin, and consider myself one of the few who really understand how Bitcoin works. Bitcoin has come far, but yet, we do not have a proper piece of literature that explains how it really works.

There is a book for everything.... except Bitcoin. There must be a big opportunity waiting here.

When I search for Bitcoin on Amazon I feel ashamed.


Wow, that's so true..oh how we don't think of the simplest things!


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: chriswilmer on March 17, 2014, 04:26:00 PM
Jan, just curious, is the book I suggested along the lines you are looking for? I realize it isn't out and so you can't really say with any certainty... but it's helpful for me to gauge whether people think it might be interesting to them based on the superficial details (i.e., the stuff that's apparent before you actually start reading it).
Chris, interesting way of communicating information. I must admit that I have never seen anything like it. I am probably more an old-school kinda guy who would look for something boring like this.
Kernighan & Richie's C book (http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&ie=UTF8&qid=1395052376&sr=1-1&keywords=Kernighan)
or
Stevens TCP/IP Illustrated (http://www.amazon.com/TCP-Illustrated-Vol-Addison-Wesley-Professional/dp/0201633469)
... something that explains Bitcoin on the protocol level and not so much how bitcoin is used today, as this gets outdated pretty quickly.
Maybe your way is more suitable to the younger generation, good luck with your project.

Thanks for the feedback. The book is mostly focused on the protocol and not how Bitcoin is used... but it makes use of comics, humor, and metaphors.

Kind of like this book about Lisp:

http://landoflisp.com/


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: jubalix on March 20, 2014, 11:33:44 AM
khan academy has a pretty good bitcoin presentation


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: MarketNeutral on March 20, 2014, 11:31:07 PM
Jan, I'm glad you brought this issue—and its potential—to the fore. I lament the lack of a concise 'Bitcoin book' that is like the many computer tutorial and reference guides I've enjoyed over the years. Indeed many people now prefer browsing online media in wiki or blog formats, still many others (such as myself) find value in traditional guide books and compendia. There are many classic computer books ranging from the serious and technical à la Dennis Ritchie or Donal Knuth to the more lighthearted, such as Simson Garfinkel's "Unix-Haters Handbook." So where's the bitcoin book?

Surely, this is a golden opportunity for someone to write the next classic.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: chriswilmer on March 20, 2014, 11:37:38 PM
Jan, I'm glad you brought this issue—and its potential—to the fore. I lament the lack of a concise 'Bitcoin book' that is like the many computer tutorial and reference guides I've enjoyed over the years. Indeed many people now prefer browsing online media in wiki or blog formats, still many others (such as myself) find value in traditional guide books and compendia. There are many classic computer books ranging from the serious and technical à la Dennis Ritchie or Donal Knuth to the more lighthearted, such as Simson Garfinkel's "Unix-Haters Handbook." So where's the bitcoin book?

Surely, this is a golden opportunity for someone to write the next classic.

http://www.befuddled.org/befuddled

It's a very light hearted (but technical!) book on how Bitcoin works.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: e4xit on March 21, 2014, 11:52:01 AM
Where is the Piachu's dissertation...?

Edit: found the link

https://bitcointalk.org/index.php?topic=88149.0


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: MarketNeutral on March 21, 2014, 01:03:10 PM
Jan, I'm glad you brought this issue—and its potential—to the fore. I lament the lack of a concise 'Bitcoin book' that is like the many computer tutorial and reference guides I've enjoyed over the years. Indeed many people now prefer browsing online media in wiki or blog formats, still many others (such as myself) find value in traditional guide books and compendia. There are many classic computer books ranging from the serious and technical à la Dennis Ritchie or Donal Knuth to the more lighthearted, such as Simson Garfinkel's "Unix-Haters Handbook." So where's the bitcoin book?

Surely, this is a golden opportunity for someone to write the next classic.

http://www.befuddled.org/befuddled

It's a very light hearted (but technical!) book on how Bitcoin works.

Thank you.  :)


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: activebiz on March 21, 2014, 02:30:17 PM
There is enough info about bitcoin on the net/wikipedia/bctforum, plus its opensource


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: flyMASTER on March 21, 2014, 02:40:53 PM
There is enough info about bitcoin on the net/wikipedia/bctforum, plus its opensource
That is true but Bitcoin content is spread all over the place, it is inconsistent in content and form and not written in a way that you can enter "easy" and go to the "hard" stuff by reading further. I think a book would have some advantages on that score.

Imoh a good in depth book about Bitcoin would be a great thing. Even better if it gets updated continuously. Better still if its free (CC0 for example). Right? Right!
I have started a LaTeX GitHub repository (https://github.com/TBoehm/Bitcoin-for-Dummies) which we can use for collaborative writing. Also I have added a tip4commit (http://tip4commit.com/projects/660) in order to incentivise those "busy developers" to write some lines of text as well as enable people to directly support this project.

What do you think?


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: wheatstone on March 22, 2014, 07:22:11 PM
I have started a LaTeX GitHub repository (https://github.com/TBoehm/Bitcoin-for-Dummies)

Something tells me that title is going to result in a takedown request sooner rather than later.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: knightcoin on March 22, 2014, 08:26:59 PM
Jan, just curious, is the book I suggested along the lines you are looking for? I realize it isn't out and so you can't really say with any certainty... but it's helpful for me to gauge whether people think it might be interesting to them based on the superficial details (i.e., the stuff that's apparent before you actually start reading it).
Chris, interesting way of communicating information. I must admit that I have never seen anything like it. I am probably more an old-school kinda guy who would look for something boring like this.
Kernighan & Richie's C book (http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&ie=UTF8&qid=1395052376&sr=1-1&keywords=Kernighan)
or
Stevens TCP/IP Illustrated (http://www.amazon.com/TCP-Illustrated-Vol-Addison-Wesley-Professional/dp/0201633469)
... something that explains Bitcoin on the protocol level and not so much how bitcoin is used today, as this gets outdated pretty quickly.
Maybe your way is more suitable to the younger generation, good luck with your project.

or something like

Applied Cryptography: Protocols, Algorithms, and Source Code in C, Bruce Schneier ( ISBN-10: 0471117099 )

A book like that I would buy :D



Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: mczarnek on March 23, 2014, 04:32:56 AM
Relatively easy to understand article, it was what made Bitcoin mostly click for me.

http://www.michaelnielsen.org/ddi/how-the-bitcoin-protocol-actually-works/


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Jan on April 02, 2014, 11:38:11 AM
aha... look at what I found:
http://shop.oreilly.com/product/0636920032281.do

Sounds promising. Estimated to be available August 2014.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: goatpig on April 02, 2014, 01:41:29 PM
Interestingly enough, on French Amazon, there are 4 books (from french authors) on the topic. I presume the language barrier (rather high in France) pushed for the initiative. This is even more unexpected, seeing France one of Euro countries that exhibits the least interest in Bitcoin.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: harding on April 02, 2014, 02:14:25 PM
Hi,

We've been working on a developer guide for Bitcoin.org which might be what you're looking for.  We have a forum thread (https://bitcointalk.org/index.php?topic=511876.0), GitHub repository (https://github.com/saivann/bitcoin.org/tree/dev), and a demo site (http://bitcoindev.us.to/en/developer-guide).

We're actively looking for writers and reviewers, so if you'd like to help, please see the forum thread above.

Thanks!, -Dave


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Bitram on April 02, 2014, 03:24:10 PM
I guess there is time to write such book .


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: Jan on April 03, 2014, 03:13:33 PM
Hi,

We've been working on a developer guide for Bitcoin.org which might be what you're looking for.  We have a forum thread (https://bitcointalk.org/index.php?topic=511876.0), GitHub repository (https://github.com/saivann/bitcoin.org/tree/dev), and a demo site (http://bitcoindev.us.to/en/developer-guide).

We're actively looking for writers and reviewers, so if you'd like to help, please see the forum thread above.

Thanks!, -Dave
Looks pretty comprehensive. Thanks for the heads up.
Guess it is time to chip in.


Title: Re: Finally a question about Bitcoin that I could not answer.
Post by: harding on April 03, 2014, 03:32:20 PM
Hi, Jan.

We'd absolute love any help!  We're mostly guessing about what developers need to know, so feedback based on your experience with Mycelium would be hugely appreciated.  For example, what assumptions made by other documentation has tripped you up?[1]  Which BIPs have you found hard to understand?[2]  What important things just aren't documented elsewhere?[3]

Thanks!,

-Dave

[1] As an example of assumptions, one developer told us that the standard format for describing scripts is confusing to new devs because it doesn't mention the op-push-data codes that must be used.  It just assumes you know about them. We revised the documentation based on his feedback.

[2] As an example of finding documentation hard to understand, when I wrote a quick test implementation of BIP70, trying to figure out one particular sentence from BIP70 cost me three hours of time.

[3] I'm sure there are plenty of examples of undocumented things. :-)