La galaxie du logiciel
(anvaka.github.io)- Code Galaxies est une page de visualisation qui permet d’explorer les écosystèmes de paquets de plusieurs langages et systèmes d’exploitation comme s’il s’agissait de galaxies
- Chaque galaxie est reliée par un lien
#/galaxy/...et est organisée par gestionnaire de paquets ou par dépôt - Les destinations par langage incluent notamment npm, PyPI, RubyGems, Composer, NuGet, CRAN, crates.io
- Côté systèmes d’exploitation et distributions, on peut consulter séparément les paquets Debian, Fedora, Arch Linux, Arch Linux + AUR, Homebrew
- Certains liens incluent des paramètres comme les coordonnées de caméra, le niveau de zoom ou un point de version, afin d’ouvrir directement un état de visualisation précis
Galaxies de paquets par langage
-
Écosystème JavaScript
-
Dépôts et gestionnaires de paquets par langage
- Composer: gestionnaire de paquets pour PHP
- RubyGems: gestionnaire de paquets pour Ruby
- Go: recherche de paquets Go basée sur go-search.org
- Python(PyPI): Python Package Index
- NuGet: paquets de l’univers .NET
- R Language CRAN: réseau de paquets R
- Rust: dépôt de paquets Rust de crates.io
- Elm: langage Elm
Paquets des systèmes d’exploitation et distributions
- Debian: gestionnaire de paquets Debian
- Fedora: paquets Fedora
- Arch Linux: paquets Arch Linux sans AUR
- Arch Linux + AUR: paquets Arch Linux avec AUR
- Brew: gestionnaire de paquets Homebrew pour macOS
1 commentaires
Avis sur Hacker News
Quand on imagine que chaque point est un programme et qu’il y a au moins une personne derrière, on prend conscience de la complexité de ces projets.
Cela ressemble à une architecture humaine assez gigantesque.
Il suffirait d’ajouter chaque
includecomme arête du graphe.Les contrôles pour se déplacer dans la galaxie sont frustrants de difficulté.
Un toucher à un doigt fait avancer, donc il est difficile de toucher un point pour voir ce que c’est ; avec les gros points en particulier, on a beau vouloir les examiner par curiosité, on continue à sélectionner ce qui se trouve au-delà.
Tourner l’appareil change la direction, mais il est aussi difficile de viser une étoile précise ; visuellement c’est vraiment superbe, et j’aimerais pouvoir explorer une vraie galaxie à cette vitesse, mais les contrôles devraient être meilleurs.
On a l’impression que le téléphone devient une fenêtre ouverte sur un autre monde.
En me disant que j’étais dans un vaisseau spatial et qu’appuyer sur l’écran faisait accélérer, rien que cette perspective m’a rapidement donné le sens de l’orientation, c’était intéressant.
C’est très joli à regarder, mais une visualisation 2D aurait peut-être été plus pratique.
Par exemple, le fait que la taille d’un point représente le nombre total de paquets dépendants est masqué par le fait que la taille du point dépend aussi de la distance à la caméra.
C’était une vraie application, et ça avait l’air cool, mais ce n’était pas agréable à utiliser.
Les interfaces 3D fonctionnent généralement mal ; je me demande toutefois si des appareils comme le Vision Pro ou le Quest peuvent rendre possibles des UI 3D meilleures que la 2D.
On a déjà vu beaucoup de graphes de code en 2D.
Sur mobile, je n’ai pas trouvé de légende ni d’explication.
Modification : j’ai trouvé le about en bas à droite : https://github.com/anvaka/pm/tree/master/about#software-gala...
Les distances semblent déterminées par un algorithme de clustering, et paraissent assez arbitraires.
J’aime ce genre de choses :
https://github.com/acaudwell/Gource : génère de belles vidéos organiques à partir de dépôts Git.
https://code.google.com/archive/p/codeswarm/ : similaire à Gource.
https://skyline.github.com : mort désormais, comme Atom.
Elle tournait en boucle sur l’iPad devant le service, afin que les contributions, notamment celles des stagiaires présents brièvement, ne soient pas oubliées.
Si l’on chipote un peu sur l’astronomie, ceci ressemble plus à un amas d’étoiles qu’à une galaxie.
Les galaxies ont généralement une majorité de moment angulaire orbital et développent des structures comme des bras.
Même en termes marketing, “Software star clusters” serait peut-être plus approprié.
En plus, l’hypothèse largement acceptée est qu’une galaxie a besoin de matière noire pour rester cohérente, et je n’ai pas envie de pousser l’analogie logicielle jusque-là.
C’est presque inutilisable à cause de contrôles peu intuitifs et difficiles à découvrir.
Sur Firefox pour Android, les interactions standard d’écran tactile comme le pinch-to-zoom ou le panoramique ne fonctionnent pas.
La page about dit de tourner l’appareil, mais c’est assez audacieux de supposer que l’utilisateur en a envie, qu’il n’est pas dans le métro ou le bus, qu’il n’utilise pas une grande tablette fixée sur un support, ou qu’il n’a pas diverses contraintes d’accessibilité liées au handicap.
Mon Dieu, c’est plein de leftpad.
is-evena été le premier paquet que j’ai recherché.En me promenant dans la zone JavaScript, j’ai vu des choses assez drôles sur les bords.
Éjection du cœur de distorsion : https://i.imgur.com/h1ngR7A.png
Les bare defaults désolés : https://i.imgur.com/hLWXqER.png
Séparation atomique idéale : https://i.imgur.com/3lmujgV.png
Chevaucher vers l’horizon sur un cheval noir : https://i.imgur.com/e6NnsDv.png
Blague à part, la visualisation elle-même est correcte, mais la distribution est un peu déroutante.
Il y avait des cas clairs, comme Microsoft qui semble très loin dans son propre monde, mais aussi beaucoup de choses apparemment liées placées très loin sans connexion évidente ; j’ai aussi fini par trouver les références à angularJS sur les bords.
Le jeu de données côté Go a l’air très ancien et daté.
Il semble dater d’au moins 5 à 10 ans.
En cliquant sur quelques paquets, je suis tombé sur des publicités de casino.
Suis-je le seul chez qui cliquer sur la galaxie Golang ouvre un site qui ressemble à un site de paris, go-search.org ?
On dirait que quelqu’un a déjà ouvert une issue.