654 / 736BK38

Programming Bitcoin

Jimmy Song: comprender Bitcoin escribiendo código

Programming Bitcoin guía a los programadores hacia la comprensión de Bitcoin mediante la construcción gradual de su propia biblioteca en Python. Jimmy Song basa la enseñanza en ejercicios y pruebas preparadas. La finalidad de la biblioteca es aprender; el autor no la presenta como una implementación completa ni optimizada en rendimiento.

Libro técnico de Jimmy Song publicado por O’Reilly en 2019. Este panorama se basa en el prefacio completo y el capítulo final Advanced Topics and Next Steps del repositorio oficial, las ilustraciones del prefacio que examinamos y los datos editoriales.

Programming Bitcoin fue escrito por Jimmy Song. El catálogo de O’Reilly indica febrero de 2019; el README del repositorio del autor señala marzo de 2019. Conservamos ambos datos por separado. El repositorio público ofrece textos y archivos complementarios, pero su rama en continua actualización puede no ser idéntica a un ejemplar impreso concreto. [1] [2]

El prefacio establece un objetivo claro: comprender la tecnología de Bitcoin escribiendo personalmente los componentes de una biblioteca. No analiza los efectos monetarios, económicos o sociales. El autor también dice que la biblioteca no pretende ser exhaustiva ni eficiente y que el libro no es un manual de referencia para la especificación de cada función. [3]

Se requiere saber programar, especialmente en Python; la biblioteca utiliza Python 3. El autor prefiere un nivel intermedio, pero considera que incluso un principiante puede comprender muchos conceptos. Para las partes matemáticas espera aproximadamente conocimientos de álgebra e introduce las nuevas nociones gradualmente. Por tanto, no es una introducción sin ningún requisito técnico previo. [3]

El prefacio describe 14 capítulos como una construcción progresiva: fundamentos matemáticos y serialización, transacciones, bloques y comunicación de red. Los capítulos 1–12 contienen ejercicios de programación. Culminan en una tarea en testnet en la que el lector obtiene datos de un nodo, construye y firma una transacción y la envía a la red. No confundimos este plan de enseñanza con haber completado las tareas nosotros mismos. [3]

En el procedimiento descrito, el lector trabaja con cuadernos Jupyter y modifica los archivos Python relacionados para superar pruebas previamente preparadas. Las soluciones están disponibles en un apéndice y en los directorios de los capítulos. Examinamos las ilustraciones de este procedimiento; leer y ver imágenes no demuestra que ejecutáramos los ejercicios ni verificáramos su entorno actual. [3]

El capítulo final propone las carteras como tema de estudio posterior y destaca la dificultad de proteger las claves privadas. Para un proyecto de cartera de prueba también menciona la interfaz de usuario, las copias de seguridad, la libreta de direcciones y el historial de transacciones. Saber firmar no cubre todo el diseño de la aplicación; las propuestas son pasos adicionales de aprendizaje, no una cartera segura ya terminada. [4]

El autor recomienda contribuir a proyectos abiertos y propone ideas como un explorador de bloques, una tienda web o una biblioteca de utilidades. Para la tienda aconseja comenzar en testnet y utilizar bibliotecas criptográficas seguras. El capítulo orienta hacia estudios posteriores; no adoptamos su lista histórica de proyectos ni sus consejos laborales como evaluación actual de servicios o garantía de empleo. [4]

Leímos todo el prefacio y todo el capítulo Advanced Topics and Next Steps del repositorio oficial y examinamos las cuatro imágenes del prefacio. Verificamos el catálogo editorial y el README. No verificamos íntegramente los demás capítulos ni el código complementario y no ejecutamos ningún ejercicio del libro; no es una reseña completa ni una auditoría de seguridad de la biblioteca. [1] [2] [3] [4]

Para obtener la imagen más completa, lee esta entrada junto con Private Key, Transacción, Bitcoin Script, Full Node.

01¿Necesito saber programar antes de leerlo?

Sí, el prefacio presupone conocimientos de programación, especialmente Python. El autor prefiere un nivel intermedio, pero señala que incluso unos conocimientos básicos pueden bastar para comprender muchos conceptos.

02¿La biblioteca del libro es una solución terminada para fondos reales?

En el prefacio, el autor la define como herramienta de aprendizaje, no como biblioteca completa o eficiente. No ejecutamos su código ni los ejercicios del libro, y este panorama no confirma su seguridad para manejar fondos reales.

DOC · 001O’Reilly — Programming BitcoinEditorial DOC · 002Programming Bitcoin — official repositoryFuente primaria DOC · 003Programming Bitcoin — PrefaceFuente primaria DOC · 004Programming Bitcoin — Advanced Topics and Next StepsFuente primaria
Revisado: Fuentes primero · No es asesoramiento financiero