3 puntos por GN⁺ 2024-06-29 | 1 comentarios | Compartir por WhatsApp
  • Code Galaxies es una página de visualización que permite explorar ecosistemas de paquetes de varios lenguajes y sistemas operativos como si fueran galaxias
  • Cada galaxia se enlaza mediante links #/galaxy/... y se divide por gestor de paquetes o repositorio
  • Los destinos por lenguaje incluyen npm, PyPI, RubyGems, Composer, NuGet, CRAN, crates.io, entre otros
  • En sistemas operativos y distribuciones, se pueden ver por separado los paquetes de Debian, Fedora, Arch Linux, Arch Linux + AUR, Homebrew
  • Algunos links incluyen parámetros como coordenadas de cámara, nivel de zoom y punto de versión para entrar directamente en un estado de visualización específico

Galaxias de paquetes por lenguaje

  • Ecosistema JavaScript

    • Bower: gestor de paquetes JavaScript del lado del cliente
    • npm: gestor de paquetes JavaScript
  • Repositorios y gestores de paquetes por lenguaje

    • Composer: gestor de paquetes para PHP
    • RubyGems: gestor de paquetes para Ruby
    • Go: búsqueda de paquetes Go basada en go-search.org
    • Python(PyPI): Python Package Index
    • NuGet: paquetes del mundo .NET
    • R Language CRAN: red de paquetes de R
    • Rust: repositorio de paquetes Rust de crates.io
    • Elm: lenguaje Elm

Paquetes de sistemas operativos y distribuciones

  • Debian: gestor de paquetes de Debian
  • Fedora: paquetes de Fedora
  • Arch Linux: paquetes de Arch Linux sin AUR
  • Arch Linux + AUR: paquetes de Arch Linux que incluyen AUR
  • Brew: gestor de paquetes Homebrew para macOS

1 comentarios

 
GN⁺ 2024-06-29
Comentarios de Hacker News
  • Si imaginás que cada punto es un programa y que detrás hay al menos una persona, te das cuenta de lo complejos que son estos proyectos.
    Parece una arquitectura humana bastante enorme.

    • También deja ver mejor el enorme esfuerzo humano que hubo detrás de estos proyectos.
    • También sería interesante ver una versión del Linux Kernel.
      Bastaría con poner cada include como una arista del grafo.
  • Moverse por la galaxia es frustrantemente difícil.
    Tocar con un dedo mueve hacia adelante, así que cuesta tocar un punto para ver qué es; sobre todo con los puntos grandes, aunque den curiosidad, uno termina seleccionando lo que está más allá.
    Al girar el dispositivo cambia la dirección, pero también es difícil apuntar a una estrella específica. Visualmente es realmente genial, y ojalá pudiéramos explorar una galaxia real a esa velocidad, pero los controles deberían mejorar.

    • Estoy de acuerdo en que moverse en la dirección del dispositivo dificulta parte de la exploración, pero también tiene un atractivo raro.
      Se siente como si el teléfono fuera una ventana a otro mundo.
    • Al principio parecía difícil, pero cuando me levanté y empecé a hacer paneo alrededor, le agarré la mano rápido.
      Si pensás que estás dentro de una nave espacial y que al presionar la pantalla acelerás, solo con ese punto de vista desarrollás rápidamente sentido de orientación; me pareció interesante.
    • En PC y con teclado fue fácil.
    • En móvil fue horrible, pero en escritorio se puede mover uno de forma bastante divertida con W-A-S-D + flechas.
  • Se ve muy bien, pero quizá una visualización 2D habría sido más práctica.
    Por ejemplo, el hecho de que el tamaño del punto represente el número total de paquetes dependientes queda oculto porque el tamaño del punto también se ve afectado por la distancia a la cámara.

    • Me hizo acordar a la UI del explorador de archivos 3D que salía en Jurassic Park.
      Era una aplicación real y se veía genial, pero no era buena para usar.
      En general, las interfaces 3D no suelen salir bien; me da curiosidad si dispositivos como Vision Pro o Quest podrán habilitar UI 3D mejores que las 2D.
    • Si el objetivo fuera tomar decisiones de arquitectura, 2D podría ser más práctico, pero creo que este proyecto se volvió más interesante y divertido porque el autor tomó de forma lúdica la metáfora de la nave espacial.
      Ya vimos muchos grafos de código en 2D.
    • No sé con qué se calcula la distancia.
      En móvil no encontré ninguna leyenda ni explicación.
      Edit: encontré el about abajo a la derecha: https://github.com/anvaka/pm/tree/master/about#software-gala...
      Parece que la distancia la determina el algoritmo de clustering, y se ve bastante arbitraria.
  • Me gustan estas cosas:
    https://github.com/acaudwell/Gource : genera videos hermosos y orgánicos a partir de repositorios Git.
    https://code.google.com/archive/p/codeswarm/ : parecido a Gource.
    https://skyline.github.com : como Atom, ya está muerto.

    • En nuestro departamento teníamos Gource renderizando un video cada medianoche, con un montón de overlays y fotos de perfil para mostrar el progreso del proyecto y quién hizo qué.
      Lo reproducíamos en loop en un iPad frente al departamento, para que no se olvidaran tampoco las contribuciones de los pasantes que participaron por poco tiempo.
  • Si nos ponemos un poco astronómicos, esto se parece más a un cúmulo estelar que a una galaxia.
    Las galaxias normalmente tienen en su mayoría momento angular y forman estructuras como brazos.
    Como término de marketing, “Software star clusters” quizá también sería mejor.
    Además, está ampliamente aceptada la hipótesis de que para que una galaxia se mantenga unida hace falta materia oscura, y no quiero llevar la metáfora del software hasta ahí.

    • Entonces, ¿lo que al final nos mantiene unidos a todos es la dark web?
    • No hay que confundirlo con las estrellas de GitHub y su dinámica social.
  • Casi no se puede usar por controles poco intuitivos y difíciles de descubrir.
    En Firefox para Android no funcionan gestos estándar de pantalla táctil como pinch-to-zoom o paneo.
    La página about dice que hay que girar el dispositivo, pero es bastante audaz asumir que el usuario quiere hacer eso, que no está en el metro o en un bus, que no está usando una tablet grande fijada a un soporte, o que no tiene varias limitaciones de accesibilidad para personas con discapacidad.

  • Dios mío, está lleno de leftpad.

    • is-even fue el primer paquete que busqué.
  • Al recorrer la zona de JavaScript, vi cosas bastante graciosas en los bordes.
    Expulsión del núcleo warp: https://i.imgur.com/h1ngR7A.png
    Los desolados bare defaults: https://i.imgur.com/hLWXqER.png
    Separación atómica ideal: https://i.imgur.com/3lmujgV.png
    Cabalgando hacia el horizonte sobre un caballo negro: https://i.imgur.com/e6NnsDv.png
    Bromas aparte, la visualización en sí está bien, pero la distribución es algo confusa.
    Hubo casos claros, como Microsoft estando lejos en su propio mundo, pero también muchos elementos que parecían relacionados y estaban ubicados lejos sin una conexión evidente; incluso terminé encontrando referencias a angularJS en los bordes.

  • El dataset de Go parece muy viejo y desactualizado.
    Parece tener datos de hace al menos 5 a 10 años.

    • Para Golang usaron un sitio de agregación un poco raro, que parece haber quebrado hace unos años.
      Hice clic en algunos paquetes y me salieron anuncios de casino.
    • Con R pasa lo mismo.
  • ¿Soy el único al que, al hacer clic en la galaxia de Golang, le aparece un sitio que parece de apuestas llamado go-search.org?