Author

Topic: How to learn bitcoin software development without downloading whole Blockchain (Read 275 times)

legendary
Activity: 1624
Merit: 2509
This part of the book is written a bit incomprehensible.

If you specify the prune size to be N, then core won't need more than N mb to store the blockchain on your hard drive.
This phrase probably meant to emphasize, that you still need to download and verify the full blockchain (~ 180 gb). But it won't need more than N mb storage.

Depending on what you want to develop, you should make sure to index all addresses, not only the ones your wallet holds.
If you don't do this, but still need this information later, you'll have to redownload the whole blockchain again.

Another way would be to develop on the testnet. In case of something missing / needs to be redownloaded, it will be way faster (~ 14 gb to download).
legendary
Activity: 3010
Merit: 3724
Join the world-leading crypto sportsbook NOW!
I've bought Antonopoulos' Mastering Bitcoin and there he states that you can install Bitcoin Core and configure it to reduce the size of the blockchain by discarding old blocks, but that it will still download the entire dataset before discarding data (page 38).
I don't think this is true. I'm pretty sure it'll discard data as you go.

Think that section of the book is correct, but what it means to say, to my understanding, pruning just means you save on storage. But you will still have to download all blocks and verify each block once, before the client discards it. Essentially, you still have to download the entire blockchain (so you'll use up download bandwidth to the total size of the current blockchain) but you'll only store the max of the amount you specify on your disk space. Space-wise, you only need to prepare enough to the limit you set.

In other words, OP, however much space you manage to save, you can't escape downloading everything if you want to run a full node (by definition, one that's verified every block).
legendary
Activity: 1946
Merit: 1427
Enable pruning? You can set Bitcoin Core to only use X amount of GB/MB.

I've bought Antonopoulos' Mastering Bitcoin and there he states that you can install Bitcoin Core and configure it to reduce the size of the blockchain by discarding old blocks, but that it will still download the entire dataset before discarding data (page 38).
I don't think this is true. I'm pretty sure it'll discard data as you go.
newbie
Activity: 39
Merit: 0
Agree,  testnet is a good choice in your situation. Or even regtests (see test/functional folder in bitcoin sources with python tests in it). This variant allows you to start many nodes on one PC and to model different complex situations, write and test your code from very beginning and don't require free space at all, I recommend to use regtests to learn bitcoin programming.
newbie
Activity: 1
Merit: 0
Hi there,

I want to learn how to develop blockchain applications and how to interact with the blockchain properly.

I've bought Antonopoulos' Mastering Bitcoin and there he states that you can install Bitcoin Core and configure it to reduce the size of the blockchain by discarding old blocks, but that it will still download the entire dataset before discarding data (page 38).

The problem is: my computer simply does not have the total amount of disk space to do this. I'd like to spend a maximum amount of something like 2-4GB of disk space with this.

How can I install Bitcoin Core ONLY to learn how to develop bitcoin software? I don't desire to run a node for any other purpose other than that.

As a sidenote: if this is not possible, I think it's very dumb and uninviting Angry that the interested devoloper has to spend so much time and resources only to start learning how bitcoin works and how to interact with the network. So I obviously hope that this is not the case. Unfortunately I couldn't find anything in Google about this so I also hope you can light my path.

Thank you in advance for the helpful answers.  Grin
Jump to: