Hi, I'm a college student currently studying computer science and am extremely fascinated by bitcoin. I am interested in developing new applications and software involving bitcoin, but can't help but feel that I'm in over my head. Where would be a good place to start if I'm looking to learn how to write code that speaks bitcoin and also learn more about how the bitcoin protocol works in general?
Thanks,
Reed
Do what I did to 2 years ago: write a program that parses the blk*.dat produced by Bitcoin-Qt/bitcoind, and calculates the balance of an arbitrary address/script. That "simple" task will show you the entrance to the rabbit hole
The blk*.dat files are just a simple concatenation of blocks, each one is:
Magic Bytes (4)
Block Size (4)
Header (80)
NumTx (VAR_INT)
Tx0
Tx1
...
TxN
We recently started hiring employees for my company, and this is basically what I've had them doing to get initiated.
P.S. - Also developing your love-hate relationship with the available documentation on these things. The above task can be completed mostly with just the documentation at the following links:
https://en.bitcoin.it/wiki/Protocol_specificationhttps://en.bitcoin.it/wiki/Transactions