2013-06-10

Código y datos para las ciencias sociales- Parte 2

En la entrada anterior, presentamos el manual Code and Data for the Social Sciences: A Practitioner’s Guide, publicado por Matthew Gentzkow y Jesse M. Shapiro. A continuación resumimos algunas de la mejores prácticas que recomiendan.

Capítulo 2- Automatizar 

Es su primera recomendación. Proponen dos reglas:
  1. Automatiza todo lo que puede ser automatizado
  2. Escribe un única secuencia de comandos (script) que ejecute todo el código de principio a fin
Un modo frecuente de trabajar consiste en abrir un fichero en Ms Excel, salvarlo como un fichero de texto. Abrir un programa estadístico o Ms Access, cargar, remodelar, unir ficheros. Realizar nuestro análisis. Finalmente, copiar los resultados, gráficos y conclusiones en un Ms Word, PowerPoint o directamente  en nuestro correo electrónico. Este modo interactivo de trabajar no es recomendable. Nos dan dos razones:
  • La primera razón es la replicabilidad. Si reproducimos los resultados, tienen que ser los mismos. Con el modo anterior de trabajar no hay un registro de los pasos dados para alcanzar los resultados obtenidos.
  • La segunda es eficiencia. No tener que repetir los pasos, quizá cientos, para modificar alguna variable o paso intermedio del análisis. 
Ampliar los límites de la automatización genera grandes dividendos. El coste tiende a ser menor de lo que parece y los beneficios mayores. Como norma uno termina ejecutando cada paso más veces de lo que piensa. Y los costes de repetir manualmente se acumulan rápidamente por encima de los costes de invertir una vez en una herramienta reutilizable.

Capítulo 3- Control de versiones
  1. Almacena el código y los datos controlando su versión
  2. Ejecuta todo el directorio antes de revisar sus ficheros
Existen buenas razones para almacenar múltiples versiones del mismo archivo. La más obvia es que facilitan una manera rápida de eliminar cambios que queremos descartar. Otra es que facilita la comparación. Nos ofrecen información sobre los  programas necesarios para implementar un control de versiones. Mencionan SubVersion repository con el que interactúan con TortoiseSVN. Otros métodos  Git o BitBucket. Se tarda un par de días en montar un repositorio y aprender como interactuar con él. Se recupera esa inversión de tiempo en uno o dos meses.

No hay comentarios:

Publicar un comentario

Nube de datos