¿Debe un periodista saber programar? Hacia una ecuación

Vamos a dejar a un lado lo que están haciendo en la educación infantil de China desde hace años, los avances de Argentina y, aunque todavía sólo con cuentagotas, los progresos en España. Vamos a olvidarnos también de las modas y los debates enconados en el seno del periodismo, con ataques de memes y de romanticismo incluidos. Y vamos a dejar para más adelante (aunque habrá referencias y no pocas) los listados de herramientas y recursos.

Fuente: Data Journalism Handbook

La pregunta de este artículo no es ni mucho menos nueva, pero muchas respuestas han servido para poco. Sobre todo, porque como precisó el periodista Jorge González, no es posible encontrar una respuesta única para una profesión sumamente compleja y diversa (como todas si se mira de cerca, supongo). Por no hablar de generalizar sobre la programación cuando existen diversos lenguajes y múltiples enfoques y formas de aplicarlos.

Este análisis pretende acercarse a una respuesta más práctica. Y lo hará con el permiso de una herramienta clásica de la economía. En esta especie de fórmula, por un lado estarán los beneficios que la programación puede aportar al periodista; por otro, los costes (los recursos que implican aprender a dominar sus lenguajes). Cuando esté perfilada (porque esto es solo un punto de partida), espero que ayude a que un periodista valore si le compensa aprender a programar en función de las actividades que realice (o aspire a desarrollar).

Beneficios

Para organizar las ideas, vamos a categorizar los beneficios en lo que podemos considerar las tres principales fases del trabajo del periodista: buscar, procesar y transmitir contenidos. Algo similar señalaban en Interhacktives, aunque limitando las fases al análisis y la visualización, en esta más que recomendable guía para que los periodistas comiencen a picar código.

Además, nos vamos a centrar en los cinco lenguajes más comunes y asequibles entre los periodistas: HTML, CSS, Python, R y JavaScript. Si quieres empezar a dejarte convencer, al menos de la idoneidad de estos lenguajes, yo empezaría con esta guía para que cualquier “periodista ordinario” se adentre en la programación de Miodrag Marković.

1. Buscar

Qué periodista no sueña con encontrar temas y enfoques que destaquen sus contenidos por encima del resto. No hablamos de formatos (todavía), sino de historias exclusivas. Explotar el big data y la automatización, y ahí R y Python son clave, puede servir para descubrir decenas de contenidos que pasarían desapercibidos o se perderían en la superficialidad.

En la unidad de datos de El País, por ejemplo, con Daniele Grasso, Kiko Llaneras y Borja Andrino a la cabeza, es ya común trabajar con R en lugar de hojas de cálculo para sacar temas como éste sobre el tráfico en Madrid. También en España, aunque en los márgenes de los medios, las mejores bases de datos sobre el coronavirus también utilizan scripts de R, como ésta de Montera34 (en contraste con el sonado colapso de los datos de Reino Unido por usar Excel).

Paradójicamente, la tendencia de explotar estos lenguajes es más clara en las islas británicas. Proyectos punteros en el periodismo local como The Reach, Bureau Local, BBC Shared Data Unit o Radar se basan en Python y R para sobresalir entre el resto. Más allá del charco, el repositorio de Fivethirtyeight en GitHub refleja cómo la gran mayoría de sus trabajos se basan en Jupyter Notebook, un proyecto que principalmente se basa en Python y R.

No podemos olvidarnos de Bepolit, lanzado por nuestro Miguel Carvajal, un robot que rastrea, jerarquiza y publica miles de enlaces para reflejar los contenidos más relevantes en Twitter. Está programado con Jekyll (escrito en Ruby) y se basa en T-Hoarder, que Mariluz Congosto desarrolló con Python.

Además de estos casos concretos, aprender a programar puede aportar a un periodista (como a cualquiera) nuevas formas de pensar. Tim Cook dijo en su día que el código es la segunda lengua más importante que puedes aprender, incluso por encima del inglés. Su antecesor, Steve Jobs, repetía que todos debemos conocer algún lenguaje informático porque permite pensar de otra manera. Esto puede resultar interesante para cualquier profesional, pero más aún para el proceso creativo que radica en las primeras fases del trabajo periodístico.

Y no podemos olvidarnos de algo esencial, especialmente en estos tiempos tan complejos para la industria: buscar trabajo. Entre las últimas ofertas que les han llegado a periodistas como Alba Otero, al profesional de la información le piden conocer lenguajes como JavaScript. No es de extrañar si tenemos en cuenta que medios de la profundidad de The New Yorker incluyen entre sus requisitos el conocimiento de HTML, CSS, JavaScript, R y Python.

2. Procesar

Casi todo lo anterior se aplica a la que podemos llamar la segunda fase del proceso periodístico: la que da forma a las ideas y los datos hasta convertirlos en historias. 

Comencemos con lo más elemental. Con una librería de Python es posible convertir un audio en texto de manera automática sin pasar por programas de pago como Trint o Happy Scribe. Con unos conocimientos un poco más avanzados, incluso es posible el proceso inverso: crear un sintetizador de texto en audio.

Pero eso es solo el principio. Python y R son dos de los principales lenguajes para la aplicación de la inteligencia artificial y el machine learning. De ahí parten gran parte de los proyectos en este ámbito realizados en el periodismo (y los que están por llegar). 

Quizás uno de los casos más ilustrativos sea el de Hanna and Ismail, un proyecto periodístico en el que BR Data and Spiegel Online automatizaron el envío de miles de correos para demostrar el racismo del mercado inmobiliario alemán. Lo explican con detalle en su metodología y profundizan en todo el proceso de cálculo y codificación con lenguajes como R.  

3. Contar

Probablemente sea lo más evidente y relevante. Como señala el profesor Juan C. Camus, cuanto más se domina la programación, más formas de relatar tiene el periodista a su disposición.

Cada vez son más frecuentes las visualizaciones de datos (gráficos y sobre todo mapas) que se elaboran con R y después, muchas veces “maquilladas” con programas de edición de imágenes, se publican en medios de comunicación. Pero sin duda aquí el lenguaje estrella es JavaScript.

Este lenguaje de programación está presente desde en grandes productos audiovisuales como este webdoc del RTVE Lab sobre el descenso a una mina clandestina hasta este análisis cualitativo sobre los discursos y el Covid del New York Times.

Probablemente dos de los mejores exponentes de los mejores exponentes del uso de JavaScript y otros lenguajes de programación en las nuevas narrativas periodísticas sean dos españoles que están brillando en el extranjero. Martín González es periodista visual en The Economist y, aunque se atreve con casi todo, seguramente su especialidad sea la visualización de datos con D3, una librería de JavaScript. Adrián Blanco es reportero gráfico en The Washington Post y en su web, además de mostrar algunos de sus mejores trabajos, detalla los lenguajes que ha empleado en cada uno de ellos: 

Costes

Programar es complejo y, casi siempre, frustrante. Sobre todo, al principio. Lo explica bastante bien la periodista Hannah Sinclair, quien afirma que aprender código no puede doler y que ofrece muchas recompensas cuando se consiguen pequeñas victorias, pero también que invirtió dos meses en aprender solo las bases de la programación. A ella le salió gratis, pero también hay opciones de pago. Por eso vamos a clasificar los costes entre el tiempo y el dinero.

1. Dinero

El dinero no da la programación, pero ayuda. En teoría, es posible convertirse en un experto en cualquier código sin gastar un euro. Sobre todo, si además de escoger todas las opciones gratuitas, utilizas un equipo prestado (voluntariamente o por la fuerza), averiguas la contraseña del wifi del vecino y te enganchas a la red eléctrica exterior. Fuera bromas, vamos a intentar ver si invertir algo de recursos puede servir para que el complejo camino hacia el código sea algo más llevadero y de cuánto estamos hablando.

Libros

La oferta de libros gratuitos es muy amplia. Es muy fácil encontrar buenas recopilaciones de manuales en PDF o web de HTML y CSS, de JavaScript, de Python y de R. Para este último lenguaje, es especialmente recomendable R para profesionales de los datos.

Pero si quieres tener libros en papel o encontrar algo más especializado, es probable que tengas que pasar por caja en una librería especializada o en Amazon. Yo acabo de hacerme con Practical R for Mass Communication and Journalism (aunque aún no he podido empezarlo).

Tutoriales

La oferta aquí es todavía más amplia y pagar parece una opción poco necesaria. Para empezar con HTML o CSS, puede tener sentido ir al oficial de W3Schools

También se puede acudir a la web de Python para empezar. Y si quieres encontrar vínculos entre ambos lenguajes, puedes seguir estas instrucciones sencillas y al grano sobre HTML y Python de Andy Dickinson. Para profundizar un poco más sobre cómo aplicar Python en el periodismo, quizás lo más completo sea esta guía de Alan Jones.

En R, en cambio, puedes arrancar con esta guía para principiantes. Pero si quieres profundizar, te recomiendo este tutorial específico sobre cómo scrapear tuits con R de Interhacktives. La oferta sobre JavaScript es más limitada, pero para introducirse en lo que es y en cómo funciona resulta muy útil éste de la Berkeley University.

Cursos

En la formación más formal que proporcionan los cursos, el dinero sí tiene una mayor presencia. Entre las plataformas generalistas, el pago es más bien excepcional. Khan Academy, Free Code Camp, y Code.org tiene todo su catálogo de manera gratuita. En Code Academy, en cambio, sí hay una versión premium (14 euros al mes) con contenido exclusivo y ventajas como más prácticas con el móvil, guías paso a paso y certificados.

Si buscas cursos específicamente pensados para periodistas, la cosa cambia un poco. DataJournalism.com ofrece una más que interesante introducción a Python, con vídeos y foros incluidos, de manera gratuita. El de Investigative Reporters & Editors (IRE), también sobre Python, pero basado en texto, también es gratuito. Si quieres centrarte en HTML, CSS y JavaScript, probablemente el más recomendable (también sin pagar) es Code Actually, de Cindy Royal.

Para profundizar en R y en otros aspectos de programación para periodismo (sobre todo de datos), la oferta es más exigente. El Centre for Investigative Journalism (CIJ) organiza un curso online que cuesta 119 libras o 70 si eres estudiante. La opción más completa probablemente sea este curso presencial centrado en Python, en Estocolmo, de J++, que cuesta más de 4.000 euros. 

Pero también el Knight Center for Journalism in the Americas ofrece un completo programa formativo gratuito con vídeos y material en PDF que se puede ver en la web oficial del curso o en la página específica creada por el propio profesor, Andrew Ba Tran. Aunque de manera menos estructurada, también hay muchos y buenos recursos en este blog de Rob Grant. y en este listado de recursos de Timo Grossenbacher.

Aunque no sean cursos, merece la pena nombrar también los eventos, todos (al menos, los que yo he visto) gratuitos. Destacan los que organiza Journocoders sobre código, principalmente R y Python, y los del Knight Lab, sobre datos, visualización y código.

2. Tiempo

Si el dinero es casi siempre una elección o un problema menor, el tiempo es probablemente el mayor contrapeso de esta ecuación. Es imposible calcular las horas que cada persona debe dedicar para aprender un lenguaje, porque depende de múltiples factores (conocimientos previos, motivación, enfoque, organización…). Pero sí hay algo claro: aprender a programar es un proceso lento y, aunque haya curvas de aprendizaje con más o menos pendiente, el camino siempre es cuesta arriba.

Para que nos hagamos una idea, solo los vídeos del citado curso introductorio de Python de DataJournalism.com duran más de cinco horas. Completar esa formación elemental, si intentas poner en práctica lo aprendido, puede multiplicar por dos o tres ese tiempo. La suma de la visualización de los vídeos y la lectura de los documentos del tutorial del Knight Center sobre R para periodistas puede superar las 50 horas. Éste otro también del Knight Center sobre Python (ya no disponible) duraba cinco semanas bastante intensas.

Hannah Sinclair dedicó dos meses en un curso intensivo para tener también una visión general sobre la programación. Fenómenos de este mundo como los también nombrados probablemente dediquen gran parte de su jornada laboral a seguir aprendido, aunque sea para resolver problemas concretos, en un universo infinito. El curso del CIJ se desarrolla en tres mañana, con sesiones de hora y media y después trabajo autónomo tutorizado. El de J++ dura unas dos semanas, también alternando clases dirigidas y práctica individual. 

¿Un balance?

La respuesta más sensata a este debate tampoco es nueva: conviene al menos aprender lo esencial para saber hasta dónde se puede llegar y comunicarse con profesionales especializados, y después dar la opción de profundizar. Lo explica con claridad el profesor Chema Valero:

Pero esta respuesta abre otras muchas preguntas. Si tengo que elegir, ¿qué lenguajes me proporcionarían mayores ventajas? ¿Qué grado de profundidad debo alcanzar en el conocimiento de estos códigos? ¿De verdad me compensa introducirme en todo este mundo?

Como decía al principio, la fórmula todavía está en fase de desarrollo. Entre otras cosas, porque confío en ampliar sustancialmente los beneficios y los costes con las aportaciones a esta publicación. El resultado quizás se parezca a este simpático quiz para saber si debes aprender a programar o a este inspirador árbol de decisiones. Es probable que para seguir buscando y procesando información, pero sobre todo para transmitirla de la mejor manera posible, tenga que seguir aprendiendo a programar.

Entradas recientes

Alfredo Casares (Instituto de Periodismo Constructivo): “Hay que cambiar las preguntas y las perspectivas con las que miramos, hay que salirse del carril”

Jose A. García Avilés

Redacción periodística con herramientas de IA: para qué sí y para qué no

Alicia de Lara

Kiko Llaneras, periodista de datos (El País): “La atención a los peligros de la IA no debe opacar el potencial para el descubrimiento de nuevos usos y beneficios”

Félix Arias

El método de escucha a los lectores “Better listening” aumenta su disposición a pagar por los contenidos periodísticos o hacer donaciones al medio

Jose A. García Avilés

David Corral, responsable de innovación (RTVE): “¿Debemos confiar todos los procesos a la IA? Creo que no, no debemos perder el potencial creativo del periodista o del realizador”

Jose A. García Avilés

Jose A. Navas, jefe de suscripciones (El Confidencial): “El buen periodismo vende suscripciones. Siempre que tenemos exclusivas potentes crecemos”

Miguel Carvajal

Universidad con Sello de Excelencia Europea

La Universidad Miguel Hernández de Elche consiguió el Sello de Excelencia Europea 500+ en 2004, y posteriormente fue renovada en dos ocasiones consecutivas, la primera en 2007 y la segunda en 2009.