Je passe sur le côté troll, c'est de bonne guerre.
Sur le fond par contre, peut-être que je suis devenu vieux (certainement), mais oui, ça me gêne. J'ai commencé avec un PC Windows 3.11 (avec un PC qui avait mon âge, dans les années 95... 1995). J'ai gardé une certaine hantise d'avoir un disque rempli de trucs qui ne servent pas du point de vue applicatif (avec une position rigoureusement inverse pour ce qui est du fichier texte, images, etc.).
La question du "poids" d'un binaire est liée à l'usage. 9 Mo ou 20 Mo, pour un besoin de préprocessing de texte basique (inclusion, etc.), avec une syntaxe un peu moderne, c'est probablement 80 ou 90% de code inutile (sinon plus). C'est "packagé" pour être autonome, mais ce n'est que la façade d'un assemblage. J'ai connu au boulot des débats sur Snap par exemple : ça apporte de la sûreté, de l'isolation, mais ça a un prix et si tu multiples ce prix (ce poids) par 10 ou 15 k VM pour un SI classique de taille moyenne, puis par applicatif embarqué, c'est loin d'être négligeable.
On a la même chose avec Docker aujourd'hui : c'est tellement cool et simple qu'on a ne fait pas gaffe au poids, à la distribution (c'est magique) ; et on lance sur des systèmes toujours plus nombreux en unités, au prix d'un gouffre de ressources. Et ce n'est pas être anti-conteneurs, car on peut en faire des légers et efficaces : j'interroge là leur construction trop souvent simpliste.
Avoir un interpréteur Python complet avec sa logique, son intérêt certains mais aussi sa capacité à être détourné d'un usage par un exploitant mal intentionné (car peut-être que le cas c'est aussi de servir du contenus peu contrôlés, venant d'un service Web ?), juste pour faire du préprocessing de texte... bof.
Dans mon cas je suis relativement sûr que mes effets de bord seront limités, surtout si je jail bien la partie FS et seccomp de manière large.
Car après tout, si j'ai un interpréteur Python, je peux remplacer les commandes courantes (ls, grep, sed, etc.). Voir tout un OS, pourquoi pas.
Tu me diras "c'est tiré par les cheveux car tu mélanges commandes 'bas niveau' et 'haut niveau'" - en gros ce qui est indispensable ou non. Je te répondrais par : "c'est l'utilisateur qui fixe ce qui lui est indispensable."
Là j'ai une solution légère, facile à distribuer (cf. un format binaire), qui fait des choses bêtes (= ce qu'on [je] lui demande). Au-delà de l'aspect cool d'en avoir fait la conception et le développement, et de le proposer pour qui le souhaite.
Oui, même si mon vieux PC portable fait plus de 1000 fois 1 Go de stockage (!), le poids d'un applicatif qui ne serait pas maîtrisé, par ce qu'il draine ou d'une logique sous-tendue, me gêne.
[^] # Re: standalone jinja
Posté par JulienG . En réponse au journal Publication de Moustache, votre nouvel ami dans la transformation de texte. Évalué à 2. Dernière modification le 11 juin 2024 à 22:22.
Je passe sur le côté troll, c'est de bonne guerre.
Sur le fond par contre, peut-être que je suis devenu vieux (certainement), mais oui, ça me gêne. J'ai commencé avec un PC Windows 3.11 (avec un PC qui avait mon âge, dans les années 95... 1995). J'ai gardé une certaine hantise d'avoir un disque rempli de trucs qui ne servent pas du point de vue applicatif (avec une position rigoureusement inverse pour ce qui est du fichier texte, images, etc.).
La question du "poids" d'un binaire est liée à l'usage. 9 Mo ou 20 Mo, pour un besoin de préprocessing de texte basique (inclusion, etc.), avec une syntaxe un peu moderne, c'est probablement 80 ou 90% de code inutile (sinon plus). C'est "packagé" pour être autonome, mais ce n'est que la façade d'un assemblage. J'ai connu au boulot des débats sur Snap par exemple : ça apporte de la sûreté, de l'isolation, mais ça a un prix et si tu multiples ce prix (ce poids) par 10 ou 15 k VM pour un SI classique de taille moyenne, puis par applicatif embarqué, c'est loin d'être négligeable.
On a la même chose avec Docker aujourd'hui : c'est tellement cool et simple qu'on a ne fait pas gaffe au poids, à la distribution (c'est magique) ; et on lance sur des systèmes toujours plus nombreux en unités, au prix d'un gouffre de ressources. Et ce n'est pas être anti-conteneurs, car on peut en faire des légers et efficaces : j'interroge là leur construction trop souvent simpliste.
Avoir un interpréteur Python complet avec sa logique, son intérêt certains mais aussi sa capacité à être détourné d'un usage par un exploitant mal intentionné (car peut-être que le cas c'est aussi de servir du contenus peu contrôlés, venant d'un service Web ?), juste pour faire du préprocessing de texte... bof.
Dans mon cas je suis relativement sûr que mes effets de bord seront limités, surtout si je jail bien la partie FS et seccomp de manière large.
Car après tout, si j'ai un interpréteur Python, je peux remplacer les commandes courantes (ls, grep, sed, etc.). Voir tout un OS, pourquoi pas.
Tu me diras "c'est tiré par les cheveux car tu mélanges commandes 'bas niveau' et 'haut niveau'" - en gros ce qui est indispensable ou non. Je te répondrais par : "c'est l'utilisateur qui fixe ce qui lui est indispensable."
Là j'ai une solution légère, facile à distribuer (cf. un format binaire), qui fait des choses bêtes (= ce qu'on [je] lui demande). Au-delà de l'aspect cool d'en avoir fait la conception et le développement, et de le proposer pour qui le souhaite.
Oui, même si mon vieux PC portable fait plus de 1000 fois 1 Go de stockage (!), le poids d'un applicatif qui ne serait pas maîtrisé, par ce qu'il draine ou d'une logique sous-tendue, me gêne.
PS :