# Welcome to the Bitcoin Protocol Development Seminar

## Reading

| Content                                                                                                                                                                   | Time (min) |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- |
| [Bitcoin Whitepaper](https://chaincode.com/bitcoin.pdf)                                                                                                                   | 30         |
| [Bitcoin Whitepaper Errata and Details](https://gist.github.com/harding/dabea3d83c695e6b937bf090eddf2bb3)                                                                 | 20         |
| [The Incomplete History of Bitcoin Development](https://b10c.me/blog/004-the-incomplete-history-of-bitcoin-development/)                                                  | 15         |
| [Bitcoin's Academic Pedigree](https://queue.acm.org/detail.cfm?id=3136559)                                                                                                | 30         |
| [If I'd Known What We Were Starting](https://www.linkedin.com/pulse/id-known-what-we-were-starting-ray-dillinger/)                                                        | 15         |
| [Bitcoin's Security Model: A Deep Dive](https://www.coindesk.com/markets/2016/11/13/bitcoins-security-model-a-deep-dive)                                                  | 20         |
| [The Onion Model of Blockchain Security](https://insights.deribit.com/market-research/the-onion-model-of-blockchain-security-part-1/)                                     | 10         |
| [Security Models with John Newbery](https://btctranscripts.com/chaincode-residency/2019-06-17-john-newbery-security-models)                                               | 60         |
| [Scaling Bitcoin: A trip to the moon requires a rocket with multiple stages](https://www.reddit.com/r/Bitcoin/comments/438hx0/a_trip_to_the_moon_requires_a_rocket_with/) | 20         |

## Discussion Questions

### Bitcoin Whitepaper

1. Why did Satoshi put so much stress on the irreversibility of transactions?
2. What proposed role do SPV nodes play in the bitcoin ecosystem?
3. What do you think might happen if Satoshi returned to Bitcoin development?

### Incomplete History of Bitcoin Development

1. How have show-stopping bugs or disruptions to the network been handled in the past?

### Bitcoin's Academic Pedigree

1. In your opinion, what did Satoshi "invent" that was truly innovative?
2. What is a Sybil Attack, and how has it been solved in the past? How does proof of work enable Sybil resistance for new nodes joining the Bitcoin network?
3. What is the "fair exchange" problem, and how does it apply to the blockchain?
4. Why do the authors of Bitcoin's Academic Pedigree believe that bitcoin was ignored by academia for a long time? What reputation/relationship does bitcoin have with academia today?

### If I'd Known What We Were Starting

1. How do you judge the merits or value of a good project/experiment?
2. Why do you think Bitcoin's creator remained anonymous and (as far as we know) chose not to profit from Bitcoin's success?

### Bitcoin's Security Model: A Deep Dive

1. What do you think will happen when the block subsidy runs out?

### Security Models with John Newbery

1. Define the differences between a full node, pruned node, and an SPV node?
2. What are the incentives to run a full node? If I do run a full node, why accept incoming connections given that they come at a cost? What might those costs be?
3. What is the difference between the block propagation network and the transaction relay network? How does participating in one or the other impact your definition of a full node?
4. What are checkpoints and do we need them?

### Scaling Bitcoin: A trip to the moon requires a rocket with multiple stages

1. Do you believe that bitcoin needs to be competitive with visa/mastercard to succeed?
2. How do you think the bitcoin community might react to a centralized payment processor that does as many transactions per second as visa/mastercard?


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://chaincode.gitbook.io/seminars/bitcoin-protocol-development/welcome-to-the-bitcoin-protocol.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
