11 de noviembre de 2010
Programming Windows
Como hasta ahora solamente he programado con software libre, para aprender el Windows he querido estar a la última: ese cuadernillo de 1.500 páginas llamado Programming Windows. Un libro del año 88, revisado y actualizado en el 98, también llamado "la Biblia de la programación en Windows".

Obviamente, aquí no se habla ni del C#, ni del .NET, esto es C y la Winapi. Quien busque una guía rápida para ponerse "up and running" o unos tutoriales para hacer lo mismo que hace todo el mundo, aquí no los va a encontrar. Quien siga esa máxima de ahora que dice: "el coste está en las horas de programación, no en el hardware", tampoco aquí va a encontrar técnicas al efecto (cuando quiera que sus mierda-horas se paguen alguna vez mejor, tal vez sí que debería de hacerse con un ejemplar). Los demás, sigan leyendo.

Petzold es el puto crack de Windows y tal vez el mejor escritor técnico vivo. Y digo vivo porque tal vez Richard W. Stevens esté un punto por delante, pero sólo un punto. Petzold escribió el libro cuando un programador no era un machaca juntaclases, sino un pionero que hacía cosas que nadie había hecho. Programar una interfaz gráfica con un monitor de dos colores y ocho megas de RAM no era tarea para "FPs cañeros" sino para autodidactas con espíritu científico.

Es cierto que en UNIX hay un ambiente más académico y científico, mientras que en el Windows de aquellos años hay vaqueros, jersey de pico y una orientación a la facilidad de uso, tanto para los usuarios finales como para los programadores de aplicaciones. Las dos cosas más jodidas de UNIX, que son las interrupciones y la sincronización de hilos, están muy edulcoradas en Windows. Los mensajes llegan en orden, incluso los del timer. Los que han hecho el trabajo duro y complejo han sido los de Microsoft, y los que han trincado toda la pasta habida y por haber han sido los de Microsoft.

Pero hablando del libro en sí, es un megatocho inolvidable, que mezcla especificaciones técnicas, tutoriales, programas enteros y hasta anécdotas y chascarrillos. Petzold no mete fragmentos de código sino todo el programa, y luego lo comenta extensamente. También se explaya con la historia de Windows. Es un tío que no va con prisas por la vida, y así lleva 12 años sin actualizar el libro y sigue vendiendo.

Los capítulos más interesantes son los que enseñan a dibujar a través del GDI, sin formularios, ni componentes, ni "Foundation Classes", echándole huevos, trazando líneas, elipses, rectángulos, midiendo píxeles y capturando los eventos del ratón. Así dejarás de preguntar si tal cosa "se puede hacer". Cuando tú controlas todos los píxeles de un monitor, básicamente todo se puede hacer.

Luego ya se mete Petzold en el apasionante mundo del bitmap, que le lleva casi 200 páginas. No habla nada del JPEG, y esa me parece una de las grandes carencias del libro. Sí que habla largo y tendido de los sonidos y la música, tal vez el mejor capítulo de todos.

Luego hay algunos capítulos breves y añadidos a modo de apéndice. La multitarea y el multihilo están comentados escuetamente, pero no hace falta más. El capítulo de los sockets sí que se le queda flojo y hace falta comprarse otro libro para completar.

Pero nadie es perfecto. A Petzold se le podrá reprochar que pide inteligencia, y los programadores de Windows no la suelen tener, pero todos reconocen que su obra monumental es absolutamente insuperable.

19:53:16 ---------------------  



© A. Noguera

"Mirar el río hecho de tiempo y agua
y recordar que el tiempo es otro río,
saber que nos perdemos como el río
y que los rostros pasan como el agua".
Jorge Luis Borges


Leer los archivos

Entradas destacadas:
Pepito Relámpago - Pepita Nuncabaja - Seis meses en meetic - Etapas de la burbuja