Principios de programación: la organización (2)
Pasión. Disciplina. Suelen ser palabras que me gustan. Uno de los principales problemas que me enfrenté para escribir mi libro Principios de programación, consistió en la organización. Antes de comenzar a escribir un libro me gusta tener el índice, al menos los nombres de cada capítulo. Me gusta tener un mapa. Que me sugiera los puntos claves. Ya las secciones y subsecciones pueden surgir o cambiar a medida que se va escribiendo.
Para escribir un índice, lo primero es cumplir con las siguientes reglas autoimpuestas:1
Que el tema no haya sido tratado en español.
Proponer una novedosa forma y estructura de presentar el contenido.
Después si el libro gusta ya no es mi responsabilidad. Un escritor lo único que puede intentar es, un esfuerzo sostenido en el tiempo, que procure un trabajo honesto hasta donde lleguen sus capacidades. Lo cual es bastante. Pero una vez publicado ya no hay nada que pueda hacer el autor: y es que ahora todo depende del lector.
Por tanto, y siguiendo estas reglas, jamás escribiría un libro, por ejemplo, de «Introducción a Python» porque rompe la regla 1; la única posibilidad sería hacer que la regla 2 sea tan novedosa que eclipsara la regla 1 (algunos autores lo han logrado presentando el contenido de una forma nunca antes vista, única, pero son la excepción).
Creo haber cumplido con ambas reglas en mis dos libros previos. Aunque con distinto grado de cumplimiento.
Mi primer libro: Computación y programación funcional (2020), presenta un tema que no había sido tratado en español. Que incluso en inglés no había sido estudiado con detalle: la relación del cálculo lambda (teoría) con la programación funcional (práctica), y menos con ejemplos en dos lenguajes que, a priori, parecen tan distintos, como lo son Racket y Python.
Mi segundo libro: Mentes geniales. La vida y obras de 12 grandes informáticos (2021), trae un tema nunca tratado en nuestra lengua, la historia de grandes informáticos, desde la perspectiva de las personas que dieron forma a la historia, y no, un libro de historia donde aparecen personas.
Ambos libros cumplieron la regla 1. Con respecto a la regla 2, esta fue cumplida en menor grado: el primero combinó la teoría con la práctica que, siempre, es riesgoso y novedoso. Y el segundo, todos los capítulos son independientes y tienen el nombre de una persona, evitando, de esta forma, una cronología.
Seguir estas reglas, a la hora de escribir un libro, me permite no abandonar el proyecto. Pues escribir un libro que ya has leído para mí carece de interés. Es mejor escribir un libro que te gustaría leer. Eso me da pasión.
Sin embargo, siempre tuve la intención de escribir un libro en donde ambas reglas tuvieran el mismo valor.
Mi tercer libro intenta aunar ambas reglas.
Este libro se divide en cinco tomos. Uso la palabra «tomo» y no «parte», primero para indicar independencia, y también, para no asumir un orden. Esto me permite sostener que cada tomo del libro se puede leer en cualquier orden. Ejemplo: puedo comenzar a leer el Tomo V para luego pasar al Tomo I, o viceversa. Por otro lado, si leo «Parte II», es probable que sienta la necesidad de continuar con la «Parte III» debido a la correlación que sugiere el uso de números. Sin embargo, al emplear la palabra «Tomo», se reduce esa sensación de correlación obligatoria.
El Tomo II es el que lleva el nombre del libro, el corazón, por así decirlo. El resto son los andamiajes para sostenerlo y justificarlo. Por ahora dejaré una imagen que presenta el título de cada tomo:
Dar coherencia a cada tomo me tuvo de cabeza por bastante tiempo. Buscando que las piezas calzaran. Que tuvieran sentido. Sentido. Porque pude dividir estos cinco tomos en tres libros distintos, pero me gusta seguir una tercera regla —no escrita— para cualquier proyecto, que reza así:
No te guardes nada. No seas como aquellos científicos deshonestos que viven repitiendo el mismo artículo, una y otra vez.
No.
Si tienes algo que decir: ¡Di todo! Ya en un siguiente libro trata un tema nuevo.
Que cada nuevo libro: sea un nuevo comienzo.
Por último: en las siguientes entradas ahondaré en cada uno de los tomos, y por supuesto, en el segundo: los Principios.
Este artículo es la continuación del siguiente:
Creo que estas reglas deberían ser cumplidas por cualquiera que quisiera escribir un libro de informática. Al menos, si no quiere que su libro quede obsoleto rápidamente.