Retour sur le passage de Kosmorro dans « Underscore_ »

Temps de lecture : 11 minutes

Le 8 décembre dernier, Kosmorro est passé aux côtés de deux autres projets, dans Underscore_, un talk show sur Twitch présenté par Micode et réalisée par ce dernier ainsi que Matthieu Lambda. Suite à cette présentation, accompagnée d'une démonstration du logiciel, les deux intervenants ont proposé une refonte graphique des PDF générés par le programme.

Cette initiative, qui fait suite à un appel à projets sur Twitter, n'est pas sans conséquence pour Kosmorro, et il me semblait important d'en faire un retour « à froid » ici, ainsi que les implications sur le futur proche du logiciel.

Micode et Matthieu Lambda observant un terminal présentant le retour de la commande `kosmorro --latitude=48.85 --longitude=2.34`

L'effet démo n'est pas arrivé.

Quelques retours obtenus par la présentation

Qui dit démonstration sur une chaîne Twitch suivie par 67 500 personnes, dit retours intéressants autant par les intervenants que par les personnes présentes sur le chat. Je vous propose donc de revenir sur les critiques constructives qui ont été données, ainsi que les améliorations qui seront réalisées afin de rendre Kosmorro plus agréable.

C'est chiant à installer

C'est très clairement le point le plus urgent sur lequel il faudra agir sur le court terme : à l'heure actuelle, installer Kosmorro relève presque du parcours du combattant, même pour une personne ayant un peu de connaissances avec la ligne de commande.

Pour mémoire, actuellement, plusieurs solutions existent si vous souhaitez installer Kosmorro :

  • soit vous utilisez Arch Linux, auquel cas, vous avez un paquet mis à votre disposition par votre serviteur sur l'AUR ;
  • soit vous utilisez FreeBSD, et vous vous avez la chance d'avoir un paquet disponible directement sur vos dépôts officiels grâce au travail de Thierry (merci encore à lui !).

Dans les deux cas, Kosmorro sera installé avec toutes les dépendances qui vont bien, et l'utilisation n'en sera que plus simple. Si vous êtes sous macOS ou sur une autre distribution Linux… alors vous avez beaucoup moins de chances, puisque vous devrez d'abord installer Python ainsi que son gestionnaire de paquets PIP pour enfin pouvoir installer Kosmorro depuis PyPI. Et espérer que le répertoire dans lequel il a été installé se trouve bien dans le $PATH du système.

Bref, vous l'aurez compris, du travail est nécessaire au niveau de la distribution du programme. Il faudra vous attendre à l'arrivée progressive de dépôts dédiés pour faciliter l'installation de Kosmorro sur les systèmes de gestion de paquets suivants :

  • APT (Debian, Ubuntu, etc.)
  • DNF (Fedora, Red Hat, etc.)
  • RPM (OpenSUSE)

De plus, Kosmorro sera également distribué sous la forme d'une AppImage, un simple fichier contenant tout le nécessaire pour faire fonctionner le programme sans avoir besoin d'installer quoi que ce soit.

Je ne donne aucune date ici, car tout dépend du temps dont je dispose. Si vous souhaitez apporter votre aide, n'hésitez pas à me contacter à ce sujet sur Discord (le lien est en pied de page). ☺️

Uniquement en ligne de commande ?

C'est probablement ce qui a été le plus critiqué sur le chat, à raison : le programme est disponible uniquement en ligne de commande, ce qui limite son accessibilité pour les personnes peu habituées à ce support réputé assez froid. Cette spécificité est pourtant aussi une qualité, puisque le fait que Kosmorro soit développé en premier lieu pour la ligne de commande permet de garantir une utilisation même dans des situations où une interface graphique ne peut être utilisée. Imaginez par exemple que vous ayez une machine peu puissante, ou non compatible, et que vous ayez installé Kosmorro sur un serveur distant : Kosmorro est alors utilisable avec une simple liaison SSH.

Je ne peux cependant, évidemment, pas nier que Kosmorro aurait grandement besoin d'une interface graphique, et c'est pourquoi j'ai annoncé dans mon précédent article le début, dès 2022, le début du développement d'une interface écrite à l'aide de GTK+, une librairie libre réputé pour sa légèreté et sa fiabilité.

C'est quoi une éphéméride, une conjonction ?

Un programme destiné aux astronomes amateurs, qui utilise des termes qui peuvent paraître obscures pour eux. Avouez qu'il y a quelque chose de cocasse là-dedans.

Matthieu ne pouvait pas le savoir (car rien ne le lui indiquait), mais Kosmorro inclut une page de manuelle dédiée pour définir ces termes. En anglais, certes, mais elle existe.

La page de manuelle de Kosmorro

Pour obtenir cette page, il faut invoquer man 7 kosmorro.

Cette situation m'a amené à confirmer une réflexion que je m'étais faite il y a quelques temps déjà : cette page de manuelle n'est pas adaptée. On ne sait pas qu'elle existe, et donc on est facilement perdu, attaqué par des gros mots que l'on ne comprend pas. C'est tout le contraire de l'idée que je me fais de ce que devrait être Kosmorro : un outil simple et convivial (même dans sa version en ligne de commande), y compris pour les novices qui n'ont pas de connaissances en astronomie.

Cette page de manuelle sera donc supprimée et remplacée par une nouvelle option, intégrée à Kosmorro cette fois, destinée à expliquer les termes lorsqu'ils apparaissent. Ainsi, dès la version 1.0, il vous suffira d'invoquer la commande kosmorro avec l'argument --explain (ou de déclarer une variable d'environnement KOSMORRO_EXPLAIN si vous souhaitez conserver ce comportement), et le programme donnera des définitions simples et compréhensibles de tous les termes affichés par la commande.

Le gâchis d'encre et de papier

Le climat se détraque à cause des activités humaines, c'est une réalité. Et on ne peut pas négliger le fait qu'un programme qui invite l'utilisateur à imprimer un papier qui ne servira qu'une soirée n'est pas forcément le meilleur compromis d'un point de vue écologique.

En fait, il est plutôt courant chez les astronomes amateurs d'emporter avec eux des notes sur papier avec les informations sur ce qu'ils comptent observer, pour la simple raison que c'est encore la solution la plus pratique : ça ne prend aucune place dans les bagages et ça ne demande pas de batterie pour fonctionner.

Surtout, le papier répond très efficacement au problème de l'accommodation de l'iris : en soirée d'observation, nous sommes amenés à observer des objets célestes très peu lumineux, et qui nécessitent donc que la pupille de nos yeux soit le plus ouvert possible. Or, l'humain étant une espèce diurne, ses yeux ont donc évolué de sorte que la pupille s'adaptent le plus rapidement possible (en quelques secondes) à une lumière vive. En revanche, ils mettent bien plus de temps (plusieurs minutes) à se réadapter à l'obscurité. Il est donc indispensable pour l'astronome d'éviter toute source lumineuse pouvant provoquer la contraction de l'iris, qui empêcherait alors une observation dans des conditions satisfaisantes. C'est pour cette raison que je n'envisage pas de mettre Kosmorro à disposition sur une application mobile : cela n'aurait pas beaucoup d'utilité.

L'utilisation du papier reste cependant un réel problème, c'est pourquoi j'invite tous les utilisateurs de Kosmorro à l'utiliser avec parcimonie, grâce à des gestes relativement simples :

  • utilisez du papier recyclé ;
  • utilisez les deux côtés de votre feuille ;
  • assurez-vous d'avoir correctement renseigné les paramètres (les coordonnées GPS que vous avez fournies sont-elles bonnes, avez-vous indiqué la bonne date, le bon fuseau horaire ?) ;
  • attendez le jour même pour imprimer votre PDF (ce serait dommage d'utiliser du papier pour finalement annuler la soirée d'observation à cause de la météo !).

Et Stellarium ?

C'est une remarque que j'ai vue plusieurs fois dans le chat : après tout, pourquoi utiliser Kosmorro alors que Stellarium répond déjà très bien à mon besoin ? Et vous savez quoi : vous avez entièrement raison !

Stellarium est un excellent logiciel de planétarium, qui fournit un très grand nombre de fonctionnalités pour visualiser le ciel depuis n'importe où dans le monde, et même depuis n'importe quel autre objet du système solaire. Je le considère comme un logiciel indispensable à la préparation des soirées d'observation, et Kosmorro n'a jamais eu pour ambition de le remplacer. Ils ne remplissent pas le même but :

  • Stellarium est un logiciel de planétarium. Il permet de visualiser le ciel à un instant donné, depuis un lieu donné. Bien qu'il possède des fonctionnalités de calcul, ce n'est pas sa fonctionnalité principale (peut-être même que vous ne l'aviez pas remarqué jusqu'ici d'ailleurs).
  • Kosmorro est un programme de calcul astronomique. Il permet d'obtenir une table d'éphémérides ainsi qu'une liste d'événements pour une date et un lieu donnés. Il ne permet en revanche pas de visualiser son emplacement dans le ciel.

Il est donc possible que Kosmorro ne réponde pas du tout à votre besoin, et ce n'est pas grave ! La raison d'être des logiciels libres de répondre à un problème qui leur est propre, pas de se poser en concurrents les uns aux autres.

Pimp my PDF

Venons-en maintenant à l'autre point de cette article : après la présentation des projets, les présentateurs de l'émission ont décidé de m'offrir une prestation sur le site Fiverr : ils vont ainsi faire appel à un(e) designer UI, afin de refaire le design du document PDF généré par Kosmorro.

J'aimerais commencer par tous les remercier : Micode, Matthieu Lambda, toute l'équipe de Underscore_, sans oublier, bien entendu (parce qu'il faut dire les choses, on n'y pense jamais) la personne qui est, à l'heure où je suis en train d'écrire ces lignes, en train de réaliser, sans forcément s'en rendre compte, un travail qui fera énormément avancer Kosmorro.

Il ne vous aura pas échappé que pour générer les documents PDF, Kosmorro utilise le LaTeX. Il s'agit d'une technologie qui permet de créer des documents d'une grande qualité, tout en minimisant les efforts sur la mise en page, cette partie étant gérée par le compilateur. Et ça tombe bien, car je ne suis pas très fort en mise en page.

Cet avantage vient cependant avec un inconvénient majeur : pour générer le PDF, il faut installer un logiciel supplémentaire, nommé TeXLive. Cela n'était pas un problème jusqu'ici, puisqu'il est disponible sur les dépôts de la plupart des distributions, et qu'il s'installe donc très facilement, et pèse une soixantaine de méga-octets, sur Linux comme sur macOS. Et probablement aussi sur FreeBSD.

Le problème, c'est que je me suis récemment rendu compte que cela devenait totalement faux lorsque l'on arrive à Windows : j'ai en effet été surpris de découvrir que sur ce système d'exploitation, l'installation de TeXLive revenait à imposer à l'utilisateur de télécharger et d'installer sur son disque… plusieurs giga-octets de fichiers ! Cela n'était évidemment pas souhaitable, c'est pourquoi j'ai dû abandonner cette idée.

Cette opportunité offerte par l'émission Underscore_ va donc permettre de répondre assez élégamment au problème : dans la version 1.0, les PDF ne seront plus générés à l'aide de LaTeX, mais d'un document HTML, ce qui rendra en passant le tout bien plus simple à maintenir.

Tout ceci sera implémenté en live, sur la chaîne Twitch, à l'occasion de sessions de live coding. J'espère que cela vous plaira !