programminghistorian / ph-submissions

The repository and website hosting the peer review process for new Programming Historian lessons
http://programminghistorian.github.io/ph-submissions
140 stars 115 forks source link

Ticket de revisión de traducción: Minería de datos en las colecciones del Internet Archive #59

Closed vgayolrs closed 7 years ago

vgayolrs commented 7 years ago

The Programming Historian en español ha recibido la siguiente propuesta de traducción "Minería de datos en las colecciones del Internet Archive" de la lección "Data Mining the Internet Archive Collection" por parte de @jairomelo. Esta traducción se encuentra en estos momentos en fase de revisión por parte de @lozgarrido y puede leerse en:

http://programminghistorian.github.io/ph-submissions/es/traducciones/mineria-de-datos-en-internet-archive

Por favor, estás en libertad de utilizar los números de línea proporcionados en la vista previa, si eso ayuda a señalar mejor tus comentarios. Pero puedes estructurar tu revisión como mejor te parezca.

En adelante, intervendré como editor durante el proceso de revisión. Tras haber leído la lección y haber enviado mis comentarios al traductor, mi rol consistirá en solicitar otra revisión por parte de uno de los miembros de nuestro comité editorial y gestionar las conversaciones que se produzcan en este foro.

Otros miembros de nuestra comunidad también están invitados a ofrecer sus comentarios de una manera constructiva; los comentarios deberán publicarse en este hilo de conversación, por lo que se recomienda haber leído nuestra guía para revisores (http://programminghistorian.org/es/guia-para-revisores) y tener en cuenta nuestra política contra el acoso (ver más abajo). No se aceptarán más comentarios por parte de la comunidad tras la publicación de la segunda revisión formal a fin de que el traductor pueda empezar a trabajar en los cambios solicitados. Cuando esto ocurra, publicaré un anuncio aquí.

Asimismo, me comprometo a mantener la conversación abierta a todo el mundo en GitHub. Pero si alguno de los participantes quiere ponerse en contacto en privado conmigo, puede escribirme un correo electrónico. También es posible contactar con nuestros 'ombudpersons'.

Política contra el acoso

Esta es una declaración de los principios de Programming Historian en español y establece las expectativas para el tono y el estilo de toda la correspondencia entre los revisores, autores, editores y colaboradores de nuestros foros públicos.

El objetivo de The Programming Historian en español es ofrecer un entorno abierto en el que la comunidad de participantes sean libres para analizar ideas, realizar preguntas, sugerir cambios, y pedir aclaraciones; también queremos que sea un espacio libre de acoso y hostigamento para todo el mundo con independencia de su género, identidad, orientación sexual, minusvalía, apariencia física, tamaño corporal, raza, edad, religión o conocimientos informáticos. No se tolerará ningún tipo de acoso o ataque ad hominem. Los participantes que violen esta regla podrán ser expulsados del proceso editorial a discreción del equipo editorial. Si presencias o sientes que has sido víctima de algún tipo de acoso, por favor, contacta con nuestros 'ombudspersons' (María José Afanador-Llach o Víctor Gayol - http://programminghistorian.org/es/equipo-de-proyecto).

lozgarrido commented 7 years ago

¡Hola a todos!

Realizaré la revisión ortotipográfica, de estilo y de enlaces/bibliografía respetando el orden de los números de línea para que resulte más sencillo incorporar los cambios que se consideren apropiados. Intentaré explicar también los cambios después de cada línea, en caso de que esto sea necesario.

Espero tener la revisión de la lección completada en pocos días: mientras tanto estoy disponible, ya sea mediante conversación pública o por contacto privado, para resolver cualquier duda sobre las correcciones propuestas. Por favor, comunicadme cualquier problema que hubiera con las mismas.

Incluyo las primeras líneas como muestra: ¡cualquier sugerencia es bienvenida!

1.

Las colecciones del Internet Archive (IA) incluyen muchas fuentes digitalizadas de interés para los historiadores, entre las cuales se incluyen el early JSTOR journal content JSTOR Early Journal Content, la biblioteca personal de John Adams, y la colección Haití de la biblioteca John Carter Brown. En resumen, para citar al historiador-programador Ian Milligan, “The Internet Archive rocks.”

  • early JSTOR journal content > JSTOR Early Journal Content, tal como se recoge en el enlace
  • eliminación de la coma antes de la 'y' en la enumeración (la biblioteca personal de John Adams, y la colección Haití > la biblioteca personal de John Adams y la colección Haití)

2.

En esta lección aprenderás a descargar archivos desde esas colecciones usando un módulo de Python diseñado específicamente para el análisis semántico de registros MARC XML, un estándar usado comúnmente para dar formato a los metadatos bibliográficos.

3.

Para fines demostrativos, esta lección se enfocará en trabajar con la versión digitalizada de la Anti-Slavery Collection de la Biblioteca Pública de Boston de Copley Square. Primero descargaremos una cantidad relativamente grande de registros MARC desde esa colección, luego, usaremos Python para recolectar y analizar la información bibliográfica asociada a los elementos en esta colección. Por ejemplo, al finalizar esta lección, serás capaz de crear una lista con el nombre de cada lugar desde el cual las cartas de la antislavery collection Anti-Slavery Collection fueron escritas, la cual podrás utilizar posteriormente para un proyecto de creación de mapas o algún otro tipo de análisis.

  • antislavery collection > Anti-Slavery Collection

4.

Esta lección de nivel intermedio es útil para los usuarios de Programming Historian que hallan hayan completado las lecciones generales acerca de cómo descargar archivos y llevar a cabo análisis de textos en ellos, o que quieran ejemplos aplicados de aquellos principios. También puede ser de interés para historiadores o archivistas que trabajen regularmente con formato MARC o con el Internet Archive Internet Archive.

  • hallan > hayan
  • Internet Archive > Internet Archive, según la recomendación de Fundéu sobre el uso de la cursiva en nombres propios extranjeros
vgayolrs commented 7 years ago

¡Muchas gracias @lozgarrido ! Personalmente me parece bastante buena tu propuesta para continuar la corrección. Quedamos a la espera de que la completes para que @jairomelo se diponga a hacer las correcciones. ¡Saludos!

lozgarrido commented 7 years ago

Antes de empezar

5.

Trabajaremos con dos módulos de Python que no están incluidos en la librería estándar.

6.

El primero, internetarchive, provee acceso programático al Internet Archive Internet Archive. El segundo, pymarc, hace más sencillo analizar el análisis de los registros MARC.

7.

La manera más sencilla para descargarlos es mediante el uso de pip pip, el administrador de paquetes de Python. Comienza por instalar pip pip siguiendo la lección de Fred Gibbs: Installing Python Modules with pip. Después Para ello, escribe lo siguiente en la línea de comandos: Para comandos para instalar internetarchive:

  • pyp > pyp
  • Después > Para ello (sugerencia de estilo)
  • comandos: Para > comandos para

8.

Después necesitarás instalar el paquete pymarc, el cual también necesita requiere que la versión 1.9.0 de six, otro paquete de Python, también esté previamente instalado instalada. Para asegurarte de que el sistema tenga tiene la última versión de six primero intenta intenta primero lo siguiente:

  • también necesita > requiere (sugerencia de estilo)
  • también > esté previamente (sugerencia de estilo)
  • instalado > instalada
  • primero intenta > intenta primero (sugerencia de estilo)

9.

Después, instalar instala pymarc:

  • instalar > instala

10.

¡Ahora estás listo para trabajar!

lozgarrido commented 7 years ago

La Antislavery Collection Anti-Slavery Collection en el Internet Archive Internet Archive.

11.

La anti-slavery collection > Anti-Slavery Collection de la Biblioteca Pública de Boston en Copley Square contiene no sólo solo las cartas de William Lloyd Garrison, uno de los personajes icónicos en el movimiento abolicionista estadounidense; resguarda también una inmensa colección de cartas enviadas y recibidas por los reformadores conectados de alguna manera con su persona. Y por “inmensa colección” me refiero a gigantesca. De acuerdo con los cálculos de la biblioteca hay más de 16.000 elementos en Copley.

  • anti-slavery collection > Anti-Slavery Collection
  • sólo > solo
  • (?) 16.000 elementos > 16 000 elementos. Al no tener espacios de no separación en Markdown (para que los elementos no queden en filas distintas) mantener el punto separador de la versión original es la mejor opción disponible. La misma recomendación se extiende a todas las cifras de esta lección

12.

Al momento En el momento de escribir esta lección, aproximadamente 7.000 de aquellos elementos habían sido digitalizados y subidos al Internet Archive Internet Archive. Esa Esta es una buena noticia, no sólo solo porque el Archive está IA esté comprometido en poner sus considerables recursos culturales para la libre consulta, también porque cada elemento incorporado está acompañado por una riqueza de metadatos apropiada para la lectura de máquina.

  • Al momento > en el momento
  • Internet Archive > Internet Archive, ya que fue enlazado en su primera aparición en la lección y no hay razón para volver a hacerlo ahora
  • Esa > Esta (sugerencia de estilo)
  • sólo > solo
  • el Archiva está > IA esté

13.

Consulta esta carta enviada por Frederick Douglass a William Lloyd Garrison. Cualquiera puede leer el manuscrito original en línea, sin línea sin hacer el viaje a Boston, y sólo solo eso sería suficiente para revolucionar y democratizar la futura historiografía del abolicionismo. Pero puedes, también, descargar múltiples archivos asociados con la carta que carta, que ha sido enriquecida con mmetadatos, como metadatos como un registro Dublin Core y un completo registro MARCXML que usa el formato MARC 21 de la Biblioteca del Congreso para datos bibliográficos.

  • línea, sin > línea sin
  • sólo > solo
  • carta que > carta, que
  • mmetadatos, como > metadatos como

14.

Detente y piensa por un momento: cada elemento subido a la colección contiene esas cosas, justo ahora, ahora mismo, cada elemento subido a la colección contiene esas cosas, lo cual significa que los historiadores tienen acceso a metadatos enriquecidos, imágenes completas, y descripciones parciales de cientos de cartas, manuscritos y publicaciones antiesclavistas.

  • cada elemento subido a la colección contiene esas cosas, justo ahora, > ahora mismo, cada elemento subido a la colección contiene esas cosas
  • completas, y > completas y
lozgarrido commented 7 years ago

Acceder a una colección del IA con Python

15.

Todas las colecciones y archivos del Internet Archive Internet Archive (IA) tienen un identificador único, por lo cual todas las URL de las colecciones y archivos se ven así:

  • Internet Archive > Internet Archive

16.

Por ejemplo, esta es una URL al elemento mencionado arriba, la carta de Douglass a Garrison:

17.

Y esta es la URL a la antislavery collection Anti-Slavery Collection de la Biblioteca Pública de Boston:

  • antislavery collection > Anti-Slavery Collection

18.

Debido a que estas URL son tan similares, la única manera de distinguir si se está consultando la página de una colección, en lugar de la de un elemento particular, consiste en examinar la distribución (layout) de la página. La página de un elemento _contiene una previsualización del libro en la cabecera de la página_ La página de un elemento contiene una previsualización del libro en la cabecera de la página y en la columna derecha un listado de enlaces para descargar el archivo en otros formatos. La página de una colección despliega una galería de miniaturas y una serie de opciones para refinar la búsqueda en la columna izquierda La página de una colección despliega una galería de miniaturas y una serie de opciones para refinar la búsqueda en la columna izquierda. Puedes navegar por diferentes colecciones a través del portal eBook and Texts. También querrás leer algo acerca de cómo los elementos y sus URL están estructurados.

  • La página de un elemento _contiene una previsualización del libro en la cabecera de la página > La página de un elemento contiene una previsualización del libro en la cabecera de la página
  • La página de una colección despliega una galería de miniaturas y una serie de opciones para refinar la búsqueda en la columna izquierda > La página de una colección despliega una galería de miniaturas y una serie de opciones para refinar la búsqueda en la columna izquierda

19.

Una vez que tengas el identificador de una colección —bplscas en este caso— ver todos los elementos de la colección es tan sencillo como navegar a la página de búsqueda avanzada del Archive IA, seleccionar la id id del menú desplegable junto a “Collection”, y "Collection" y aplicar el botón de búsqueda (Search) Search. Al realizar la búsqueda seleccionado bplscas regresa esta página Al seleccionar bplscas en la búsqueda se obtiene esta página, que al momento en el momento de escribir esta lección mostraba 7.029 resultados.

  • Archive > IA
  • id > id
  • “Collection”, y > Collection y
  • (Search) > Search
  • Al realizar la búsqueda seleccionado bplscas regresa esta página > Al seleccionar bplscas en la búsqueda se obtiene esta página

20.

También podemos buscar en el Internet Archive usando el módulo de Python que ~~instalamos, al~~ instalamos: al hacerlo es más fácil iterar sobre todos los elementos de la colección con el propósito de realizar posteriores inspecciones y descargas.

  • instalamos, al > instalamos: al

21.

Por ejemplo, vamos a modificar el código de ejemplo de la documentación del módulo con el fin de ver si podemos saber, con Python, cuantos cuántos elementos hay en la Antislavery Collection Anti-Slavery Collection. El código de ejemplo luce similar al que ves debajo. La única diferencia es que en lugar de importar tan sólo solo los módulos search_items desde internetarchive vamos a importar la totalidad de la biblioteca.

  • cuantos > cuántos
  • Antislavery Collection > Anti-Slavery Collection
  • sólo > solo

22.

Todo lo que debemos hacer consiste en modificar el identificador de la colección: de nasa a bplscas. Después de iniciar el intérprete del ordenador intenta ingrear cada una de las líneas anteriores, seguidas por enter, pero modificando el id de la colección en el segundo comando:

  • ingrear > ingresar
  • anteriores, seguidas > anteriores seguidas
  • id > id

23.

Después de aplicar pulsar enter en el comando de impresión deberías ser capaz de ver un número que corresponde con la cantidad de resultados que verías al hacer una búsqueda avanzada en una colección desde el navegador.

  • aplicar > pulsar
vgayolrs commented 7 years ago

Gracias por reabrir el Ticket @lozgarrido . Supongo que faltan varias líneas para revisión (la traducción tiene 74 líneas). Tú nos dices cuándo consideras terminada tu evaluación. ¡Muchas gracias!

lozgarrido commented 7 years ago

Sí, fue un missclick. Espero poder darle un último empujón entre hoy y mañana, antes de vacaciones.

¡Gracias a vosotros!

El 10 abr 2017, a las 6:58 a. m., Víctor Gayol notifications@github.com escribió:

Gracias por reabrir el Ticket @lozgarrido . Supongo que faltan varias líneas para revisión (la traducción tiene 74 líneas). Tú nos dices cuándo consideras terminada tu evaluación. ¡Muchas gracias!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

vgayolrs commented 7 years ago

@lozgarrido ¿nos podrías indicar cuánto tiempo tomarás para terminar la revisión de la traducción? Saludos.

lozgarrido commented 7 years ago

Buenos días:

Acaba de avisarme @arojascastro: me fui en abril un par de semanas de vacaciones en abril y se me olvidó completamente que estaba esto pendiente. Voy a publicar directamente la revisión (sin explicar los cambios uno a uno) para acelerar.

Las correcciones empecé a hacerlas tal y como las hago cuando trabajo de corrector ortotipográfico y, por lo que he visto en otras correcciones, quizá sea una corrección demasiado estricta. Vosotros me decís.

Disculpas a todos por la demora.

lozgarrido commented 7 years ago

Aceder a un elemento del IA en Python

24.

El módulo internetarchive también permite acceder a elementos individuales mediante el uso de sus identificadores. Probemos modificando el código de ejemplo de la documentación del módulo de tal manera que obtengamos la carta de Douglass que discutimos mencionamos anteriormente.

25.

Si estás todavía en el intérprete de comandos de Python no necesitas declarar import internetarchive de nuevo. Como ya hemos importado el módulo completo tan sólo solo necesitamos modificar el código de ejemplo para que nuestro intérprete sepa que get_item pertenece al módulo internetarchive. También, necesitamos modificar el identificador de ejemplo stairs por nuestro identificador del elemento, lettertowilliaml00doug (nótese que el carácter entre los dos ceros es una L minúscula, no el número 1):

26.

Copia cada una de esas líneas en tu intérpete seguidas por Enter enter. Según la velocidad de tu conexión a Internet tomará aproximadamente un minuto o dos para que el intérprete de comandos retorne, esto se debe a que tu ordenador se encuentra descargando todos los archivos asociados a ese elemento, incluyendo algunos algunas imágenes muy pesadas. Pero cuando se está Cuando se haya descargado podrás ver una nueva carpeta en tu ordenador cuyo nombre es el mismo del identificador del elemento. Para verificar verificarlo, primero sal de tu intérprete de Python:

27.

A continucación continuación liste los contenidos del directorio presente para corroborar que ahora existe una carpeta llamada lettertowilliaml00doug. Si despliegas el contenido de esa carptea carpeta podrás ver una lista similar a esta:

28.

Ahora que sabemos cómo usar las funciones Search y Item en el módulo internetarchive podemos pensar en como cómo usar este proceso de manera más eficaz para descargar grupos de información desde las colecciones para un posterior análisis.

Descargar los registros MARC de una colección

29.

Descargar un elemento está bien, pero ¿si pero ¿y si queremos revisar miles de elementos en una colección? Estamos de suerte, porque la función Search del módulo internetarchive nos permite iterar sobre todos los resultados de una búsqueda.

30.

Para ver cómo comencemos cómo, comenzaremos iniciando nuevamente nuestro el intérprete de Python. Necesitaremos importar una vez más nuestro módulo y hacer de nuevo una búsqueda:

31.

Sin cambios

32.

Nótese que después que, después de ingresar la primera línea tu línea, tu intéprete de Python imprimirá puntos suspensivos automáticamente en la línea dos, esto dos: esto se debe a que iniciaste un bucle (for loop) y Python espera que haya más. El intérprete intenta saber lo que quieres conocer de cada resultado de búsqueda, por ello, una vez que des Enter enter en la segunda línea verás una tercera con otros puntos suspensivos, esto suspensivos; esto se debe a que Python no sabe cuándo has terminado de decirle qué hacer con cada resultado. Haz click clic en Enter enter una vez más para finalizar el bucle y ejecutar el comando.

33.

Deberías ver entonces que tu terminal empieza a imprimir los identificadores de cada resultado obtenido de nuestro buscar en bplscas—en este caso, ¡de todos los 7029 elementos! bplscas (en este caso, ¡de todos los 7029 elementos!) Puedes interrumpir la impresión dando Ctr-C pulsando ctrl+c en tu teclado, lo cual te regresará al intérprete de comandos.

34.

Sin cambios

35.

Recuerda que los espacios en blanco cuentan en Python y necesitas indentar las líneas en un for loop para que Python pueda saber cuáles qué comandos ejecutar en cada elemento del bucle.

vgayolrs commented 7 years ago

Hola @lozgarrido , ¿nos podrías indicar si en la parte restante de la traducción has encontrado algún otro punto para corrección o consideras terminada tu revisión? Saludos.

vgayolrs commented 7 years ago

@jairomelo un favor ¿podrías revisar y coregir lo que te parezca de las observaciones que te ha hecho Carlos para que yo pueda darle una segunda repasada a tu traducción? Mil gracias y una disculpa por atrasar tanto la publicación de tu trabajo.

jairomelo commented 7 years ago

Con mucho gusto @vgayolrs y así le damos salida a esta lección que lleva bastante tiempo en espera.

jairomelo commented 7 years ago

@vgayolrs Realizados los cambios. Propuse un pull request (que no sé si debía hacerlo 😅 ) y quedo en espera de los demás cambios que haya que hacer.

vgayolrs commented 7 years ago

@jairomelo muchas gracias. Ya fusioné tu propuesta de corrección al archivo de la traducción. Antes de proseguir, voy a ver qué es lo que se requiere para adaptar tu traducción ya que la lección original fue modificada (2017-05-25) después de hecha la traducción (2017-03-31). Mil disculpas.

vgayolrs commented 7 years ago

@jairomelo : ya revisé los cambios habidos desde tu traducción y son de índole técnica así que como editor las he corregido. Pero lo que sí te voy a pedir es que revises y corrijas las siguientes líneas que no fueron revisadas por Carlos:

39.- "...es que se puede contener..." "es que puede contener..."

42.- ...son nombrado de acuerdo" | "son nombrados de acuerdo" (corregir también en redireccionamiento al enlace al final)

43.- "TODOS" a bajas

43.- "...o tu editor de texto" | "o en tu editor de texto"

55.- "...donde guardaste tus archivos MARC, no te sorprendas..." | "...donde guardaste tus archivos MARC. No te sorprendas..."

70.- "También puedes trabar..." | "También puedes trabajar..."

Creo que eso sería todo. Muchas gracias.

jairomelo commented 7 years ago

@vgayolrs Realicé las correcciones sugeridas. Cualquier otra modificación me avisan para realizarla 😃

vgayolrs commented 7 years ago

@jairomelo , muchas gracias. Hice el "merge" con tus correcciones pero desgraciadamente no indiqué el número de ticket para que apareciera aquí. @arojascastro y @mariajoafana , me parece que está lección está ya lista gracias a los observaciones de @lozgarrido y la revisión segunda que yo hice. Sin embargo, no estaría por demás si tienen ustedes alguna observación hacedla lo más pronto posible para poder publicar esta traducción que ya tiene demasiados meses en proceso de revisión. Gracias de antemano.

arojascastro commented 7 years ago

¿La puedo leer este fin de semana?... @vgayolrs

vgayolrs commented 7 years ago

¡Encantado, @arojascastro !

vgayolrs commented 7 years ago

@jairomelo : surgió un pequeño problema con la lección original pues tiene que ser actualizada para incluir permisos pues parece que internet archive ha puesto candados. Por favor, consulta el siguiente ticket en: https://github.com/programminghistorian/jekyll/issues/621 . Por lo visto es algo bastante sencillo.

No obstante, @arojascastro y @mariajoafana , soy de la opinión de que la revisión ya debe quedar lista lo más pronto posible e, incluso, publicar la traducción y luego modificarsse en cuanto esté lista la actualización. ¿Qué opinan?

arojascastro commented 7 years ago

Totalmente de acuerdo, lo importante es que la publiquemos de una vez - espero echarle un vistazo entre hoy y mañana.

arojascastro commented 7 years ago

Aquí van mis sugerencias:

vgayolrs commented 7 years ago

¡Muchísimas gracias por tu tiempo, @arojascastro ! Creo que con esto ya puede terminar @jairomelo el trabajo.

vgayolrs commented 7 years ago

@jairomelo : ya está lista la actualización de la lección original. Puedes ver los cambiambos en https://github.com/programminghistorian/jekyll/commit/a1c4949f5cf196f85ff6dcbef14c7644a81eaadf#diff-76bcca8c94c80317afc212c217b7220d Esperamos tu edición para cerrar el proceso. Gracias por tu paciencia!!!

jairomelo commented 7 years ago

@vgayolrs ¡perfecto! Esta tarde me aplico y hago los cambios. Gracias @arojascastro por las sugerencias. Saludos

jairomelo commented 7 years ago

@vgayolrs Realizados los cambios en la traducción más la traducción de la actualización de la lección original.

vgayolrs commented 7 years ago

Muchas gracias @jairomelo ! Integradas. Reviso cualquier cosa y a publicar.

vgayolrs commented 7 years ago

Traducción publicada. ¡Muchas gracias a todo el mundo!

arojascastro commented 7 years ago

Genial. Faltan, sin embargo, los metadatos sobre el editor de la traducción (tú) y diría que también sería justo añadir mi nombre como revisor, pues me la leí entera.

vgayolrs commented 7 years ago

Lo siento mucho @arojascastro , ya está tu crédito.