# Todo List for v2.0 of Learning Bitcoin
This is a list of potential (or planned) TODO items for "Learning Bitcoin from the Command Line". Many are drawn from issues found at the previous locale of this repo.
**Updating Work Begun:** 6/10
**Updating Work Done:** 10/27
**Pending Issues:** Third-party edit of whole course
Please also see [TODO-30.md](the v3.0 TODO) for the next iteration of the course.
## 1. Integrate with Bitcoin-Standup
Replace our current scripts with Bitcoin Standup (which was based on those scripts)
1. Fix Verification errors in Bitcoin Standup Scripts **6/10**
* Fix IPADDR error in Bitcoin Standup Scripts **6/10**
2. Upgrade Bitcoin Standup Scripts to Debian 10 **6/16**
3. Upgrade Bitcoin Standup Scripts to Bitcoin 0.20 **6/16**
4. Ensure Bitcoin Standup covers everything else in previous scripts **6/16**
5. Rewrite the StackScript chapter **6/16**
6. Rewrite the "by-hand" chapter to match Bitcoin Standup **7/27**
* Write New Appendix 1 **7/27**
* Revise All Chapter Ordering for Cut ยง2.1 **7/27**
7. Reintroduce aliases after setup **6/19**
8. Figure out what to do about the old `btcblock` on testnet, where there seems to be no CLI way to determine blockheight. **No Known Solution on Testnet**
## 2. Upgrade to 0.20
9. Walk through chapters 1-6, making sure all commands work with Bitcoin Core 0.20 (and changing them if not). Redo the output of all examples. **6/19**, **6/23**, **6/30**
* Edit Chapter 0 **6/19**
* Edit Chapter 1 **6/19**
* Re-edit Chapter 2 **6/19**
* Edit & Check Chapter 3 **6/19**
* Edit & Check Chapter 4 **6/23**
* Double-check fee calculator in 4.2I with a more complex example **6/19**
* Integrate older Curl Interlude **6/19**
* Edit & Check Chapter 5 **6/23**
* Edit & Check Chapter 6 **6/30**
* Update for change in importaddress **7/7**
## 3. Add BTCDEB Support
10. Update Scripting & Integrate `btcdeb`
* Edit & Integrate Chapter 9 **7/15**
* Fix P2PKH Example **7/15**
* Write P2WPKH Chapter **7/15**
* Edit & Integrate Chapter 10 **7/15, 7/21**
* Write P2WSH Chapter **7/21**
* Edit & Integrate Chapter 11 **7/21**
* Edit & Integrate Chapter 12 **7/21**
* Edit & Integrate Chapter 13 **7/21**
* Turn off verbose info on btcdeb?
* Get sigs working right on btcdeb?
## 4. Add New Concepts
Add and document the following new concepts:
11. Add SegWit Transactions. The majority of Bitcoin transactions now use this signing methodology, so it needs to be fully explained and incorporated, alongside its newer bech32 addresses. **6/23**
* Add definitions of Segwit and bech32 addresses to 3.3 **6/23**
* Do we still have to use "bitcoin-cli getnewaddress "" legacy" on CLI? If not, run back through chapters that use legacy in their examples, starting in 3.3 **Gonna leave it for now. A future version might shift to P2SH-SegWit as default.**
* Integrate discussions of SegWit into early parts of chapter 4. **6/23**
* Write chapter 4.6 **6/23**
12. Add PSBT. Partially Signed Bitcoin Transactions are a powerful new interchange format that should be fully included in our discussions of multi-sigs and escrows (which instead fell back on older methodologies in v1.0). **7/2**, **7/7**, **7/10**
* Research PSBTs **7/2**
* Update Outlines **7/2**
* Write 7.1: Creating a PSBT **7/7**
* Create Illustrations for 7.1 **7/7**
* Write 7.2: Using a PSBT **7/7**, **7/10**
* Multisigs **7/7**
* Redo with correct math **7/10**
* Fund Pooling **7/10**
* CoinJoins **7/10**
13. Add Wallet Updates. **6/30**, **7/2**, **7/7**
* Bitcoin Descriptors **6/30**
* Show what a SegWit descriptor looks like **7/2**
* Show what a multi-sig descriptor looks like **7/2**
* Revise based on comments **7/7**
* Key Ordering (sortedmulti) **7/2** **Partially Supported in 0.20**
14. Consider HWI. **7/14**
* Write 7.3: Using HWI **7/14**
* Edit All of Chapter 6-8 **7/14**
15. Consider splitting up Chapter 6 (definitely if we get an HWI chapter)
* Break apart Chapter 6 **7/2**
* Rewrite all section links in early chapters (1-5, 6, 8) **7/7**
* Update Script Chapters **7/15**
* Update Tor Chapter **7/22**
* Update Programming Chapters
## 5. Finish Later Chapters
16. Edit & Integrate Tor Chapter. **7/22**
17. Edit & Integrate all "C" work **8/5** - **8/26**
* Edit & Update Chapter 15 **8/5**
* Write the Libwally section **8/5** - **8/26**
* 16.1: Intro **8/5**
* 16.2: BIP39 **8/11**
* 16.3: BIP32 **8/11**
* 16.4: PSBTs **8/12**
* 16.5: Scripts **8/12**
* 16.6: Other Functions **8/18**
* 16.7: Integration **8/25**, **8/26**
18. Edit & Integrate all "Other Languages" work **9/1**-**9/30**
* Edit 17.1: Go **9/1**
* Edit 17.2: Java **9/2**
* Edit 17.3: NodeJS **9/2**
* Edit 17.4: Python **9/8**
* Edit 17.5: Rust **9/8**
* Write 17.6: Swift **9/29**
* Setup Swift Environment **9/9**, **9/15**
* Document Swift Environment **9/23**
* Do Basic RPC Commands **9/29**
* Look at Wallets **9/29**
* Create Transaction **9/29**
* First edit of Swift **9/30**
* Edit All of 17 **9/30**
* Finalize Naming of Src **9/30**
* Full Edit of 17.1-17.6 **9/30**
19. Edit & Integrate Appendices work **7/27**, **8/4**
* Edit & Integrate A2: Compiling **7/27**
* Edit & Integrate A3: RegTest **8/4**
20. Edit & Integrate Lightning Chapters **10/13**, **10/14**
* Figure out how/if to set up a pruned c-lightning **10/13**
## 6. Finalize Book
21. Take out warnings for all old chapters **10/20**
22. Add new first chapter, indicating places to start for people of different levels **10/20**
23. Add other Bitcoin standup options to Ch. 2 **10/27**
24. Move an coding appendices (e.g., JQ interlude) to src code directory **10/20**
25. Write letter about new edition **10/27**
26. Write tweetstorm **10/27**
## 7. Additional Support
27. Full edit of book (intern?)