Programming Bitcoin adalah buku teknis Jimmy Song dari 2019. Bitcoin dijelaskan lewat pustaka Python: bagian program yang dapat dipakai berulang dan dibangun pembaca secara bertahap. Ini buku ajar bagi orang dengan dasar pemrograman, bukan dompet siap pakai.
Memakai aplikasi dan memahami cara kerjanya adalah keterampilan berbeda. Song ingin membawa pembaca dari yang pertama ke yang kedua: bukan sekadar menjelaskan Bitcoin, tetapi mengajak menulis dan mencoba komponennya. Tujuannya memahami cara memperoleh data yang diperlukan, membuat transaksi, dan menyerahkannya ke jaringan. Persoalan moneter dan sosial tidak menjadi cakupannya. [3]
Buku ini memiliki 14 bab yang saling membangun. Dimulai dengan matematika untuk kunci dan tanda tangan, lalu serialisasi: mengubah data ke format yang tepat untuk penyimpanan dan pengiriman. Setelah itu dibahas transaksi, blok, dan komunikasi jaringan. Urutannya penting karena tugas yang lebih sulit memakai komponen yang sudah dibuat. [3]
Bab 1–12 berisi latihan. Pembaca mengubah berkas Python dan menjalankan pengujian yang telah disediakan untuk memeriksa apakah jawabannya memenuhi tugas. Notebook Jupyter di sini bukan laptop, melainkan dokumen kerja untuk menjalankan kode dan langsung melihat hasilnya. Jawaban tersedia di lampiran dan repositori; yang penting memahami kesalahan sendiri, bukan hanya menyalin jawaban benar. [3]
Latihan pemrograman terakhir menggabungkan pekerjaan sebelumnya: terhubung ke simpul lain, mengetahui dana yang tersedia, menyusun dan menandatangani transaksi, lalu menyiarkannya. Ini dilakukan di testnet, jaringan terpisah untuk eksperimen. Rencana pengajaran penulis bukan berarti kami telah menjalankan latihan itu atau memeriksa apakah masih berfungsi dalam lingkungan saat ini. [3]
Pustakanya memakai Python 3. Song menyarankan kemampuan menengah, tetapi menurutnya pemrogram pemula pun dapat memahami banyak konsep. Dasar aljabar seharusnya cukup untuk matematikanya; alat baru dikenalkan bertahap. Jika belum pernah memprogram, lebih mudah belajar dasar Python dahulu daripada mempelajari bahasa itu dan protokol Bitcoin sekaligus. [3]
Dalam bab terakhir, Song menekankan sulitnya melindungi kunci privat. Dompet juga membutuhkan antarmuka yang mudah dipahami, cadangan, dan riwayat transaksi. Lulus pengujian satu fungsi tidak membuktikan keamanan seluruh program. Pustaka ini untuk belajar, bukan implementasi lengkap atau yang dioptimalkan; tidak bisa langsung dianggap layak untuk dana sungguhan. [3] [4]
Penulis menyarankan dompet uji, penjelajah blok, toko daring, atau pustaka utilitas buatan sendiri. Untuk toko, ia menyarankan memulai di testnet dan memakai pustaka kriptografi yang aman. Berkontribusi ke proyek terbuka adalah jalan lain. Itu gagasan belajar, bukan daftar layanan yang diperiksa saat ini atau janji pekerjaan. [4]
O’Reilly mencatat Februari 2019, sedangkan README repositori penulis menyebut Maret 2019. Kedua catatan tetap dibedakan. Tinjauan ini berdasarkan informasi penerbitan, seluruh kata pengantar, dan bab penutup Advanced Topics and Next Steps. Ini bukan ulasan seluruh buku atau pengujian kode pendampingnya. Teks daring dapat berubah; petunjuk pemasangan lama perlu dibandingkan dengan dokumentasi terbaru sebelum dipakai. [1] [2] [3] [4]
Untuk gambaran yang lebih utuh, baca entri ini bersama Private Key, Transaksi, Bitcoin Script, Full Node.
01Apakah buku ini untuk pemula total?+
Bisa untuk pemula dalam pengembangan Bitcoin yang sudah memiliki dasar pemrograman. Kata pengantar terutama mengasumsikan Python dan matematika kurang lebih setingkat aljabar. Jika ingin memahami penggunaan Bitcoin dahulu tanpa menulis kode, panduan pengantar menawarkan jalur lebih langsung.
02Bolehkah saya mempercayakan bitcoin ke pustaka setelah latihan selesai?+
Menyelesaikan latihan saja tidak cukup untuk menyimpulkan demikian. Penulis secara tegas menjadikan pustaka sebagai alat belajar. Penanganan dana sungguhan secara aman memerlukan pemeriksaan jauh lebih luas, termasuk perlindungan kunci dan pemulihan cadangan; tinjauan ini tidak memberikan pemeriksaan tersebut.