La multitud todavía se reúne en torno al código hecho a mano
Escuchar el artículo (experimental) · 09:12

Una de las preguntas de programación más leídas en Stack Overflow recientemente trataba de cómo calcular a mano un CRC de 32 bits para un archivo PNG. 1.171 visitas en su contador público. Su mejor respuesta, un recorrido paciente por la aritmética de polinomios, sumó 27 puntos, una cifra que casi nada en el sitio de hoy alcanza. Nadie necesita hacer esto. zlib calcula CRCs correctamente desde 1995, todas las bibliotecas de PNG del planeta la envuelven, y cualquier modelo que puedas nombrar escupe el código funcionando antes de que termines de escribir la pregunta. Según cualquier medida económica, el tema está resuelto, automatizado y cerrado.
Más de mil personas vinieron a mirar de todos modos.
Recorre lo demás que atrajo multitudes en el sitio últimamente y el patrón se repite hasta que deja de parecer coincidencia. El Juego de la Vida de Conway, un juguete de 1970, con 855 visitas. "Should I make my own vector in C++ and use that more than the one built in?" (¿debería construir mi propio vector en C++ y usarlo en lugar del que viene incluido?) con 373, una pregunta cuya respuesta de manual es un no rotundo, y cuya respuesta de verdad es que construir uno es la manera de descubrir qué está haciendo el que viene incluido. "What are the requirements for C code that can run without an operating system?" (¿cuáles son los requisitos para código C capaz de ejecutarse sin sistema operativo?) con 274. Un hilo sobre interrupciones de hardware en modo protegido. Una pregunta duplicada y cerrada sobre cómo conseguir un compilador de C para HelloWorld.c que aun así atrajo veinticinco comentarios, y una discusión sobre implementar cifrado poscuántico en C puro que atrajo veintiséis. Los pisos altos pertenecen casi por completo a cosas que ya nadie cobra por construir desde cero: checksums, autómatas celulares, contenedores, código de arranque, criptografía.
Escribí en un ensayo anterior sobre lo que dicen ahora los cierres del sitio: el centro factual de las preguntas y respuestas de programación ha sido automatizado hasta dejar de ser escaso, y las preguntas que prosperan son las que las máquinas no pueden zanjar. Pero las cifras de visitas están midiendo algo que a los cierres se les escapa. Una pregunta cerrada te dice lo que la gente ya no necesita preguntar. Mil cien visitas a un CRC hecho a mano te dicen lo que la gente todavía quiere ver.
Una nota metodológica, para que los números sean honestos: los recuentos de visitas y las puntuaciones son contadores públicos en cada pregunta de Stack Overflow, y los míos son una instantánea del tramo en que estuve escribiendo esto. El patrón no depende de la instantánea. Mira cualquier mes y las cosas hechas a mano flotan.
Nadie necesita el checksum
Sé preciso sobre lo que esas visitas no son. No son necesidad. Un desarrollador que de verdad necesite un CRC en 2026 no lee una respuesta larga sobre división de polinomios; llama a la función de la biblioteca, o le pregunta al modelo que tiene al lado y pega el resultado, y ambas son la jugada profesional correcta. Si fuera la necesidad lo que impulsara ese tráfico, la pregunta tendría la audiencia del mercado laboral de su tema, es decir, casi ninguna.
Tampoco son nostalgia, o no principalmente. La nostalgia se congregaría en torno a las viejas tecnologías en sí, y no hay multitud alguna congregándose alrededor de Delphi o SOAP. La multitud se reúne específicamente en torno a fundamentos construidos a mano: el checksum calculado paso a paso, el vector implementado mal a propósito, el programa en C sin sistema operativo debajo. No cosas viejas. Cosas desnudas.
La actividad humana más cercana que encuentro es mirar a un alfarero. La cerámica industrial ganó hace un siglo; tu alacena es la prueba. Y sin embargo, pon un torno en un escaparate y la gente deja de caminar. Nadie de los que miran tiene intención de tornear su propia vajilla. Miran porque el proceso es legible de una manera en que la fábrica no lo es, porque la destreza ejercida a la vista merece atención por sí misma, y porque una parte de comprender plato solo existe en ver cómo se hace uno. La vasija no es el producto de la demostración. La imagen en la cabeza del que mira sí lo es.
Esa última frase es la misma a la que sigo llegando desde otras direcciones. Cuando defendí que atascarse es el objetivo, la tesis era que la comprensión se forma allí donde tu imagen de la máquina se encuentra con la máquina y pierde. Ver un CRC calculado a mano es la versión de espectador del mismo acontecimiento. El lector de esa respuesta no está adquiriendo un checksum. Está viendo bits moverse a través de un polinomio hasta que la caja negra etiquetada "comprobación de integridad" se convierte en un mecanismo que sostiene en las manos, y ese mecanismo se transfiere a cada checksum, hash y código de error que se encuentre después. La respuesta es una demostración de que el suelo bajo las abstracciones es sólido y se puede pisar. No necesitas recorrerlo a diario. Necesitas haberlo recorrido una vez.
El preguntar se fue, el mirar se quedó
Esta es la división que esas cifras hacen visible. El preguntar se ha ido en gran parte a las máquinas, y así debía ser. Preguntar es necesidad, la necesidad quiere velocidad y privacidad, y un modelo entrega ambas sin juzgar a las tres de la madrugada. El mirar siguió siendo humano, y creo que se quedó por una razón que importa a cualquiera que escriba o enseñe: mirar es como se propaga de verdad lo profundo. Siempre lo fue. La clase magistral, la lección del maestro, la sesión de pair programming, la demo de live coding en la conferencia que todo el mundo recuerda años después, todo eso es el torno del alfarero, destreza hecha legible en movimiento. El formato de respuesta de Stack Overflow, en su mejor versión, siempre estuvo más cerca de eso que de una tabla de consulta, y la multitud está votando exactamente por las respuestas que escenifican la comprensión en vez de limitarse a despacharla.
Lo cual reencuadra para qué sirve una pregunta como "¿debería construir mi propio vector?". Leída como una petición de decisión, es trivialmente respondible y un poco embarazosa, y por eso la vieja constitución mantenía estas preguntas a distancia. Leída como lo que realmente es, una invitación a que alguien con destreza desmonte la máquina en público, está entre las cosas más valiosas que le quedan al sitio. La respuesta de 27 puntos sobre el CRC no se escribió para el que preguntaba. Se escribió para los mil cien, y los mil cien supieron acudir.
Hice la misma apuesta con mi propio consejo de aprendizaje del oficio: aprende a programar precisamente porque las máquinas saben, ya que el valor se mudó de producir el artefacto a sostener la imagen. Estas cifras son el argumento de ese ensayo corriendo en libertad, con visitas a la vista. Cuando generar se volvió gratis, el artefacto dejó de atraer a la multitud. El hacer siguió atrayéndola.
Escribe para los que miran
Si haces cosas, hay una conclusión práctica escondida en esos números. La demostración hecha a mano no es contenido obsoleto; es casi el único contenido cuya audiencia las máquinas no han absorbido, porque su valor nunca estuvo en el resultado. Nadie va a necesitar jamás tu CRC hecho desde cero, tu asignador de memoria de juguete, tu renderer construido en una semana de vacaciones. Publica su proceso de creación de todos modos, con el razonamiento a la vista, con los desvíos equivocados dejados dentro. El modelo que todo el mundo tiene al lado se ha quedado con el trabajo de despachar respuestas, y que le aproveche. Con lo que no se ha quedado es con el escaparate, el torno, la arcilla, y la pequeña multitud que todavía se detiene, con toda fiabilidad, mil personas un martes cualquiera, a ver cómo alguien que sabe lo que hace fabrica una cosa a mano.
Preguntas que responde este artículo
¿Por qué la gente sigue leyendo sobre hacer las cosas a mano si la IA las hace al instante?
Porque el valor de la demostración nunca estuvo en el resultado. Un desarrollador que de verdad necesita un CRC llama a la función de la biblioteca o le pregunta al modelo que tiene al lado, y ambas son la jugada profesional correcta; las mil y pico personas que leen uno calculado a mano están viendo cómo la caja negra etiquetada como comprobación de integridad se convierte en un mecanismo que sostienen en las manos. El paralelo humano más cercano es el alfarero en un escaparate: la cerámica industrial ganó hace un siglo y la gente sigue dejando de caminar.
¿No es esto simple nostalgia de la tecnología vieja?
No, o no principalmente. La nostalgia se congregaría en torno a las viejas tecnologías en sí, y no hay multitud alguna congregándose alrededor de Delphi o SOAP. Lo que atrae las visitas son fundamentos construidos a mano: el checksum calculado paso a paso, el vector implementado mal a propósito, el programa en C sin sistema operativo debajo. No cosas viejas, cosas desnudas.
¿Merece la pena construir mi propio vector, asignador de memoria o checksum desde cero?
Leída como una petición de decisión, la respuesta es un no rotundo, y por eso la vieja constitución de Stack Overflow mantenía estas preguntas a distancia. Leída como lo que realmente es, una invitación a que alguien con destreza desmonte la máquina en público, está entre las cosas más valiosas que le quedan al sitio. 373 personas fueron a ver esa pregunta sobre el vector, porque construir uno es la manera de descubrir qué está haciendo el que viene incluido. No necesitas recorrer ese suelo a diario; necesitas haberlo recorrido una vez.
¿Qué merece la pena publicar cuando un modelo responde a cualquier pregunta?
Publica el proceso de creación, con el razonamiento a la vista y los desvíos equivocados dejados dentro. El modelo se ha quedado con el trabajo de despachar respuestas y que le aproveche, pero no se ha quedado con el escaparate, y la demostración hecha a mano es casi el único tipo de contenido cuya audiencia no ha absorbido. La respuesta de 27 puntos sobre el CRC no se escribió para el que preguntaba; se escribió para los mil cien, y los mil cien supieron acudir.
Leer a continuación
AIHistoria de dos preguntas sobre Claude Code
El mismo sitio, la misma herramienta, las mismas pocas semanas. Una pregunta cerrada a menos ocho, una respuesta votada por las nubes. La diferencia entre ellas es el consejo de escritura más útil de la era de la IA.
AILas preguntas que Stack Overflow ahora premia
Un tag ejecutado en 2010 ha vuelto a aparecer en preguntas vivas, la súplica de ayuda de un estudiante superó a los segfaults, y la comunidad está renegociando en público su regla más antigua. Lo que el regreso de las preguntas prohibidas dice sobre el Q&A después de que los hechos se automatizaran.