-
Visualización de ISBN
- Anna's Archive ofrece el catálogo abierto de libros más grande de la historia de la humanidad.
- Cada píxel representa 2,500 ISBN, y el píxel se muestra en verde cuando hay un archivo disponible.
- Solo el 16% de todos los libros tienen respaldo, y se necesita mucho más trabajo.
-
Antecedentes
- Anna's Archive crea un catálogo de libros utilizando números ISBN para respaldar el conocimiento de la humanidad.
- Los ISBN se asignan a los libros publicados en la mayoría de los países desde la década de 1970.
- Funciona como un sistema distribuido sin autoridad central, y los números se asignan en el orden de países, grandes editoriales y editoriales pequeñas.
- Anna's Archive recopila metadatos de diversas fuentes como ISBNdb, Worldcat y Google Books, y posee el mayor conjunto abierto de metadatos de libros.
- Es importante identificar y preservar libros raros y en riesgo.
-
Visualización
- Se pueden ver distintos conjuntos de datos por separado, y es posible cambiar entre ellos usando el menú desplegable y los botones.
- Los conjuntos de datos incluyen Anna's Archive, Google Books, Goodreads, Internet Archive y otros.
- En la visualización se pueden observar patrones como líneas y bloques regulares, así como áreas vacías.
-
Recompensa de $10,000
- Hay una recompensa para mejorar la visualización, y se debe enviar código de código abierto antes del 31 de enero de 2025.
- La mejor propuesta recibirá $6,000, la segunda $3,000 y la tercera $1,000, pagados en Monero (XMR).
- Incluso si no se cumple el criterio mínimo, podría pagarse una parte de la recompensa.
- Las propuestas deben mejorar la visualización modificando el HTML, y deben funcionar bien en escritorio y móvil.
- Se otorgarán puntos adicionales según la usabilidad y el atractivo visual.
-
Código
- El código de generación de imágenes y los ejemplos están en un directorio específico.
- Se utiliza un formato de datos comprimido de 75MB para proporcionar información de ISBN.
- No es necesario usar este formato para participar en la recompensa, pero es el formato más conveniente para comenzar.
- Todo el código debe proporcionarse como código abierto.
1 comentarios
Comentarios de Hacker News
Viendo que abajo aparece una recompensa, quizá estoy tirando por la borda mis posibilidades de ganarla, pero esta visualización parece perfecta para mapearla a una curva de Hilbert [0]
Si conviertes los datos en “rayas” como ahora, puntos que están cerca en el ordenamiento pueden quedar bastante lejos entre sí. La distancia de bajar una fila en el eje Y salta toda una línea de datos, mientras que la distancia en el eje X corresponde 1:1 con los datos originales
Si se mapea a una curva de Hilbert, los ejes X e Y en sí dejan de tener significado, pero los puntos cercanos en la lista ordenada también quedan visualmente cerca en la imagen resultante
Como en el ISBN la primera parte es el país, la segunda la editorial, la tercera el título y al final hay una suma de verificación, supongo que quitaría la suma de verificación y ordenaría cada uno como un número grande, sin guiones
Entonces las grandes áreas ocupadas por los países con más publicaciones se verían como “islas”, y dentro de esas islas los códigos de editoriales aparecerían como puntos brillantes. Si además se etiquetan esas áreas, serían puntos extra
Hace tiempo hice algo aplicando este método a datos meteorológicos para una entrevista [1]. Los datos por estación quedan agrupados y la estacionalidad se ve con mucha claridad
[0] https://en.wikipedia.org/wiki/Hilbert_curve
[1] https://graypegg.com/hilbert (puede servir de referencia si quieres intentar la recompensa con este código: https://github.com/graypegg/hilbertcurveplayground. Si lo reutilizas, al menos me gustaría que mencionaras mi nombre, aunque no puedo impedirlo)
[0] https://github.com/jakubcerveny/gilbert
[1] https://jakubcerveny.github.io/gilbert/demo/
Me preocupa que la curva de Hilbert, en realidad, no sea más que un producto de la estructura de la curva, y haga que el resultado parezca tener divisiones “cuadradas” claras en los datos [0]. En ese sentido, la visualización actual es más útil porque permite identificar de inmediato la ubicación de cada país
[0] https://raw.githubusercontent.com/jakubcerveny/gilbert/maste...
El problema es que el ISBN no es jerárquico. Los ISBN se compran por bloques, o también puedes comprar uno individual pagando un costo adicional absurdo. Lo digo como alguien que compró uno para reeditar un solo libro
Por eso esta visualización no muestra nada especialmente interesante ni útil
Creo que sería mucho más útil una visualización que use la Clasificación de la Biblioteca del Congreso de EE. UU. o la Clasificación Decimal Dewey, especialmente si estuviera conectada con repositorios y listados de dominio público y de obras libres de copyright. Algo así como una versión interactiva y visual de los recursos de John Mark Ockerbloom
https://onlinebooks.library.upenn.edu/
La imagen es de 1000×800 píxeles y hay 2500 ISBN por píxel, así que visualiza 2.000 millones de ISBN. El ISBN-13 consta de 12 dígitos más 1 dígito de control, así que cabría esperar que la imagen original fuera 500 veces más grande o más densa que la actual
Que tenga este tamaño parece indicar que solo incluye ISBN con prefijos 978 y 979, y como la mitad inferior está más dispersa, probablemente corresponda al nuevo rango 979
Según la explicación, debería poder distinguir píxeles rojos y verdes, pero pensé que no los veía por mi daltonismo. Solo veo rojo y negro
Pero incluso usando una extensión del navegador para corregir daltonismo, no logro distinguir más colores. Me pregunto si soy solo yo o si el gráfico está mal
Desplázate hacia abajo hasta encontrar la herramienta de visualización interactiva y cámbiala a “Files in Anna's Archive [md5]”; entonces las ubicaciones de los píxeles verdes se resaltan en gris
Haz clic derecho en la imagen, elige “Inspect” y agrega un nuevo filtro CSS hue-rotate al elemento
element { max-width: 100%; margin: 0 auto; filter: hue-rotate(-90deg); }Normalmente uso
filter: saturate(100);, pero no funcionó bien con esta imagen. Quizá tengas que ajustar el ángulo de rotación; para mí -90 grados fue lo que mejor funcionóAnna's Archive es una de las maravillas del mundo. Aunque la humanidad casi se autodestruyera, si Anna's Archive sobreviviera, habría esperanza de una reconstrucción relativamente rápida
La IP del servidor parece estar bloqueada en la UE. En Internet de Ziggo, en Países Bajos, aparece este mensaje:
“Este sitio web ha sido bloqueado
Sanciones europeas
El Consejo de Europa decidió que los sitios web de RT (antes Russia Today) y Sputnik News ya no deben transmitirse. El sitio web al que intentas acceder está sujeto a estas sanciones europeas
VodafoneZiggo tiene la obligación de implementar las sanciones, por lo que bloqueó el sitio web”
https://web.archive.org/web/20250106112552/https://annas-arc...
¿A alguien más le aparece este mensaje?
“Este servidor no pudo demostrar que es annas-archive.org. Su certificado de seguridad fue emitido para *.hs.llnwd.net. Esto puede deberse a un error de configuración o a que un atacante está interceptando tu conexión”
Si ignoras la advertencia y entras a cualquier sitio, da un error HTTP 400
Según Wikipedia, www.ukispcourtorders.co.uk era un sitio que antes listaba dominios bloqueados y las órdenes judiciales relacionadas
https://en.wikipedia.org/wiki/List_of_websites_blocked_in_th...
En este gráfico es bastante difícil saber qué corresponde a qué. Si alguien marcara dónde está Bookland, es decir, 978, sería un poco más fácil orientarse
¿Es ilegal descargar y usar el archivo de ISBN de ese sitio? No entiendo cuál sería el problema de tener esa información
Dice: “Cada píxel representa 2,500 ISBN. Si tenemos archivos para esos ISBN, hacemos que el píxel sea más verde”, pero no entiendo qué significa más verde. No veo tonos de verde
¿Y los píxeles negros se pueden considerar ISBN no registrados?
Me aparece este mensaje:
“Sanciones europeas
El Consejo de Europa decidió que los sitios web de RT (antes Russia Today) y Sputnik News ya no deben transmitirse. El sitio web al que intentas acceder está sujeto a estas sanciones europeas”
En Italia simplemente falla con NS_ERROR_CONNECTION_REFUSED