LogicielsL'avenir du BeerXML

Les programmes de gestion, brassage, calculs et autres, et les discussions qui vont avec...
Règles du forum
Chers membres, merci de prendre connaissance et respecter les quelques règles de bon sens suivantes avant de poster votre message :
- Vous assurer que vous postez dans la bonne rubrique
- Vérifier qu'il n’existe pas déjà une réponse à votre question ou un sujet identique
- Prendre conscience que vos propos n’engagent que vous et que vous devrez en assumer la paternité
- Vérifier les sources des informations que vous diffusez, en vous assurant le cas échéant de respecter les droits d’auteur qui peuvent être liés aux informations, images ou documents cités
- Prendre soin de respecter vos interlocuteurs et bannir les insultes et autres propos diffamatoires ou dégradants
- Vous assurer de rester autant que faire se peut dans le sujet exposé
- Prendre le temps de vérifier l’orthographe et la grammaire de votre message
Merci par avance de votre contribution à préserver le bon esprit de ce forum.
Avatar de l’utilisateur
Aza-
Maître Brasseur
Maître Brasseur
Messages : 2692
Inscrit depuis : 5 ans 10 mois
Je suis tuteur : oui
Mon équipement : Kit basic Saveur biere
Cuve Inox induction 20L
Chambre tempéré Inkbird 308 + tube chauffant
BIAB
Brasseur : Amateur
Localisation : Verdun sur Garonne
A remercié : 117 fois
A été remercié : 252 fois

L'avenir du BeerXML

Message par Aza- »

On a récemment parlé dans le post de Brewy de l'avenir du BeerXML. Je suis tombé par hasard sur un nouveau format en préparation qui a l'air solide/sérieux.

Résumé des épisodes précédents sur le forum.

Un vieux sujet où l'avenir du BeerXML était posé
Un début de réflexion dans le sujet de Brewy

Ce nouveau format
Il est basé sur Json (et non plus sur XML).

Il est porté par : L'avis (tout relatif) de Brad Smith : https://github.com/beerjson/beerjson/is ... -425863134

Je n'ai pas vraiment pu regarder de manière extensive le format, mais il a l'air d'apporter des améliorations, au moins au niveau des unités.
Avatar de l’utilisateur
Penn-Maen
Maître Brasseur
Maître Brasseur
Messages : 11867
Inscrit depuis : 11 ans 10 mois
Je suis tuteur : oui
Mon équipement : Miss Vilaine \o/ viewtopic.php?t=39535
Brasseur : Amateur
Localisation : Morbihan centre
A remercié : 734 fois
A été remercié : 1424 fois

Re: L'avenir du BeerXML

Message par Penn-Maen »

c'est basé sur le beerxml 2 ? Format jamais finalisé et donc jamais implémenté dans un soft (ou alors de façon trop parcellaire/confidentielle).

Les unités sont précisées à chaque ingrédient/étape ??? Ca sent déjà un peu l'usine à gaz AMHA*. Les définir une bonne fois pour toute dès le début du doc ne serait-il pas plus efficace ?

*en même temps, partant du BXML 2.0, si on gagne sur certains points, on perd sur d'autres.
Regarde, écoute, questionne, apprend, transmet, recommence sans cesse
Disclaimer : je dis certainement plus de conneries que la moyenne, alors vérifiez !

SE PRESENTER ...et... Guide pour débutants
Avatar de l’utilisateur
Aza-
Maître Brasseur
Maître Brasseur
Messages : 2692
Inscrit depuis : 5 ans 10 mois
Je suis tuteur : oui
Mon équipement : Kit basic Saveur biere
Cuve Inox induction 20L
Chambre tempéré Inkbird 308 + tube chauffant
BIAB
Brasseur : Amateur
Localisation : Verdun sur Garonne
A remercié : 117 fois
A été remercié : 252 fois

Re: L'avenir du BeerXML

Message par Aza- »

Penn-Maen a écrit :c'est basé sur le beerxml 2 ? Format jamais finalisé et donc jamais implémenté dans un soft (ou alors de façon trop parcellaire/confidentielle).
Oui, c'est basé sur BeerXML 2.0 mais c'est du json.
N'importe quel nouveau format n'a jamais été implémenté nulle part (par définition) :lol:
Penn-Maen a écrit :Les unités sont précisées à chaque ingrédient/étape ??? Ca sent déjà un peu l'usine à gaz AMHA*. Les définir une bonne fois pour toute dès le début du doc ne serait-il pas plus efficace ?
Non.
Un exemple :
Les ingrédients "misc". Tu veux ajouter de l'acide lactique (liquide), de l'Irish moss (solide) il te faut déjà deux types unités. On pourrait tout mettre en poids (ou en volume), mais pour l'afficher, il faudrait aussi (pour chaque ingrédient) une table de correspondance masse / volume, bref un truc horrible. Ça permet aussi de gérer l'unité ET la façon dont on l'affiche.
On peut imaginer avec ce système afficher un truc du genre :
Pale Ale Malt : 1kg
Special B : 30g

Et non pas 1000g / 30g ou 1kg / 0.03kg

Ça peut paraître usine à gaz de l'extérieur, mais c'est à mon avis le meilleur compromis.
Avatar de l’utilisateur
Penn-Maen
Maître Brasseur
Maître Brasseur
Messages : 11867
Inscrit depuis : 11 ans 10 mois
Je suis tuteur : oui
Mon équipement : Miss Vilaine \o/ viewtopic.php?t=39535
Brasseur : Amateur
Localisation : Morbihan centre
A remercié : 734 fois
A été remercié : 1424 fois

Re: L'avenir du BeerXML

Message par Penn-Maen »

N'importe quel nouveau format n'a jamais été implémenté nulle part (par définition) :lol:
je parlais plus de la façon de voir les choses que du format d'écriture en soit. Trop de détails tue le détail ;) (et doit aussi compliquer l'implémentation).

Pour les unités, pareil, je me suis mal exprimé. Ce que je voulais dire, c'est "est-il nécessaire de redéfinir l'unité pour chaque élément" ?

Exemples :
- pour chaque palier, est-il nécessaire de dire que la température est en °C ?
- pour chaque grain, est-il nécessaire de dire que la couleur est en EBC, et le poids en kilo ?

Ne serait-il pas plus efficace de dire, dès le début :
- Toutes les températures en °C
- toutes les couleurs en EBC
- toutes les masses (solide) en grammes
- tous les volumes (liquide) en litre

Je ne comprends pas la remarque sur l'utilité d'un tableau. Ne peut-on se contenter de dire que c'est "liquide" ou "solide" ... Parce qu'entre les 2 ingrédients que tu as pris en exemple, pour l'acide sa concentration me semble beaucoup plus pertinente que son état ou sa masse volumique.

Est-ce vraiment au fichier de gérer la façon dont on affiche une valeur ? :think: Si on autorise dès la création du format un panachage d'unité*, c'est AMHA se tirer une balle dans le pied du départ, et revenir de facto à ce qu'on reproche aujourd'hui au bxml (en moins pire je l'admets, puisque "formalisé" dans le fichier). Je ne sais pas ce que ça peut représenter en codage derrière, mais pour moi un fichier de données doit rester le plus simple possible : un conteneur à données brutes, normalisées, standardisées. Pas un conteneur à données + formules de calcul (une formule, une fois qu'on est d'accord, pas besoin de la stocker dans le fichier pour l'utiliser) + modalité d'affichage (chacun sa m*rde) + tout ce qu'il passera par la tête du programmeur. N'est-ce pas la raison qui fait qu'en info vous séparez le contenu du contenant (HTML + CSS / soft + GUI / etc) ?


*Note :
- ce ne sont pas des critiques gratuites ou négatives, juste un point de vue extérieur sur ce qui me semble source d'ennuis futurs. L'expérience me fait dire que si on permet techniquement de faire quelque chose, alors quelqu'un le fera, et souvent le fera mal... Plus c'est simple, plus c'est "bordé", moins vite ça part en sucette (le fameux "touche pas à ça petit c*n !" )
- Je n'ai jamais compris pourquoi certains softs affichent (par exemple) les masses de grains tantôt en grammes, tantôt en kilo. En affichant tout dans la même unité pour un même type d'ingrédient, on éviterait quelques erreurs (si Thorgahl passe par là :) )

Ps : je ne vois ni Brewy, ni JB dans la liste. Faut y remédier ;)

PM "Nooooooon, pas le bouton rouge !!!" (← version moderne et trop tardive du "touche pas à ça")
Regarde, écoute, questionne, apprend, transmet, recommence sans cesse
Disclaimer : je dis certainement plus de conneries que la moyenne, alors vérifiez !

SE PRESENTER ...et... Guide pour débutants
Avatar de l’utilisateur
Aza-
Maître Brasseur
Maître Brasseur
Messages : 2692
Inscrit depuis : 5 ans 10 mois
Je suis tuteur : oui
Mon équipement : Kit basic Saveur biere
Cuve Inox induction 20L
Chambre tempéré Inkbird 308 + tube chauffant
BIAB
Brasseur : Amateur
Localisation : Verdun sur Garonne
A remercié : 117 fois
A été remercié : 252 fois

Re: L'avenir du BeerXML

Message par Aza- »

Pour ce nouveau standard, il n'a (à ma connaissance) pas encore été implémenté. Après, il est même pas en version finale, donc c'est logique.

Pour les unités, je réitère. Autant sur certaines choses (comme les températures) ça n'a que peu de sens, mais pour plein d'autres c'est important.
Penn-Maen a écrit : - pour chaque grain, est-il nécessaire de dire que la couleur est en EBC
Rien que cet exemple, le standard actuel dit un truc et peu de softs le suivent.

Mon exemple de l'acide avait un biais. Imagine avec "jus de cerises".

En fait, pour se rendre compte, il suffit d'aller jeter un oeil sur ce fichier qui liste les unités : https://github.com/beerjson/beerjson/bl ... .json#L280 et de le mettre en correspondance avec
Sélection_999(347).png
A l'heure actuelle, personne ne connait de manière sûre les unités et c'est une galère sans nom pour savoir si c'est un problème d'export du logiciel 1 ou d'import du logiciel 2.

Pour répondre à tes inquiétudes :
  • C'est plus verbeux et moins lisible : ce genre de fichier est pas trop fait pour être lisible par un humain, donc on s'en fiche
  • Ça devient une usine à gaz et c'est compliqué pour les développeurs : en fait non, ce qui est compliqué, c'est de devoir chercher par des moyens détournés si ton 12 est en EBC, en SRM ou en °L
  • pour moi un fichier de données doit rester le plus simple possible
    : pas pour moi. Il doit avant tout représenter de la manière la plus fidèle possible (et sans équivoque) les données. Et justement c'est ce que BeerXML 1 n'arrivait pas à faire.
  • L'expérience me fait dire que si on permet techniquement de faire quelque chose, alors quelqu'un le fera
    : un format ne peut pas contraindre un soft à ne pas faire n'importe quoi avec. En revanche, en étant clair, il permet de voir tout de suite à qui revient la faute.
  • Je n'ai jamais compris pourquoi certains softs affichent (par exemple) les masses de grains tantôt en grammes, tantôt en kilo
    pour les grains, en effet ça se justifie pas forcément... sauf quand t'es en système impérial et que tu dois jongler avec des livres et des onces. Par contre, dès que tu tapes dans les divers et que tu dois ajouter 0.2g d'epsom salt mais 800g de fèves de cacao, t'es bien obligé de gérer des unités différentes.
Avatar de l’utilisateur
Penn-Maen
Maître Brasseur
Maître Brasseur
Messages : 11867
Inscrit depuis : 11 ans 10 mois
Je suis tuteur : oui
Mon équipement : Miss Vilaine \o/ viewtopic.php?t=39535
Brasseur : Amateur
Localisation : Morbihan centre
A remercié : 734 fois
A été remercié : 1424 fois

Re: L'avenir du BeerXML

Message par Penn-Maen »

ok, ça se tient, et expliqué comme ça je suis assez d'accord avec ton point de vue. Mais il y a quand même 2 / 3 choses qui me chagrinent :
Et justement c'est ce que BeerXML 1 n'arrivait pas à faire.
le problème n'était pas le format (les unités à utiliser sont clairemen spécifiée dans la définition du format. Le problème, ce sont ceux qui n'ont pas respecté ces conventions (comme IE fut un temps avec le HTML, ou Chrome plus récemment). On peut préciser les unités ingrédients par ingrédients autant qu'on veut, il y aura toujours quelqu'un pour inventer une nouvelle unité (genre "3 bols de pale +2 casseroles de blé"...)
ce qui est compliqué, c'est de devoir chercher par des moyens détournés si ton 12 est en EBC, en SRM ou en °L
ça illustre mon propos : y'a un codeur qui n'a pas respecté le standard (SRM), alors tout le monde en chie pour pallier à ce défaut. Et une fois que tout le monde aura trouvé une solution pour interpréter le "12", il y a un tartuffe qui te pondra une nouvelle unité sortie de son esprit torturé.... Les tsp, cup et autres unités de ce type : pas le droit, point. Système SI dans le fichier, et chaque soft se débrouille ensuite pour convertir dans l'unité locale.

Pour les unités et leurs multiples/sous-multiples : pourquoi ? Une voiture ou un semi-remorque, ça se pèse en tonne(s). Pourtant la carte grise est toujours en kilogrammes. Donc on n'est pas "obligé" d'utiliser des unités différentes dans le fichier, mais les softs sont eux libres d’interpréter la valeur pour la rendre lisible à l'humain. Car dire "ce n'est pas format destiné à être lu par un humain" d'un coté, et de l'autre faire usage des multiples ou sous-multiples d'une unité qui ne sont que pour la lecture humaine est un peu antinomique. Un ordinateur se fout éperdument que l'humain se sache pas compter le nombre de zéro avant/après une virgule ;)

M'enfin, c'est ce que je pense :think:

Note : une solution de validation serait aussi un plus. Comme les XML validator. C'est peut-être un truc qui manquait pour le Bxml, et du coup chacun y est allé de sa petite modif ..
Regarde, écoute, questionne, apprend, transmet, recommence sans cesse
Disclaimer : je dis certainement plus de conneries que la moyenne, alors vérifiez !

SE PRESENTER ...et... Guide pour débutants
Avatar de l’utilisateur
Jean-Luc
Administrateur
Messages : 13686
Inscrit depuis : 20 ans 3 mois
Mon équipement : Je ne brasse plus mais il me reste quelques gamelles.
Brasseur : Amateur
Localisation : Suisse
A remercié : 457 fois
A été remercié : 1016 fois
Contact :

L'avenir du BeerXML

Message par Jean-Luc »

Tout standard est soumis aux interprétations de chacun. Le beerxml n’y échappe pas.

Créer un nouveau “standard” (du coup pourquoi appeler ça un standard...), est il la bonne solution ?

Xml, json, csv, txt, peu importe comment on formate les données, ce qui est important c’est le contenu, pas seulement la boîte.

Le beerxml a été conçu comme une aggregation de données en multiniveaux (recette/style/matériel/brassage/fermentation.../ingrédients/.../)

Une recette en beerxml “complète”, en accord avec le format, contient toutes les données nécessaires et détaillées, profils matériel, brassage, style, etc... et pas juste de quoi afficher son résumé.

Mais si les unités sont répétées et détaillées pour chaque élément c’est pour que chaque élément soit autonome : pour qu’en important une recette dans un programme on puisse récupérer la totalité d’une “brique” de données : 1 houblon avec son usage et ses caractéristiques, 1 profil de matériel complet prêt à utiliser, 1 levure, 1 profil de brassage ou de fermentation etc...

Chacune de ces briques pouvant alors enrichir l’inventaire et les profils personnels.

Du coup, récupérer d’une recette tel ou tel ingrédient, avec sa couleur et son unité pour la convertir facilement, plutôt que se demander dans quelle unité l’ensemble de la recette est calculée, ça peut faire du sens.

Sinon pour un nouveau format, je reste quand même dubitatif sur la naissance d’un format qui se voudrait aussi un standard, quand celui qui existe est si peu ou si mal utilisé, ou compris.

Au final tout le monde veut être universel, et tout le monde veut être différent.
Jean-Luc
INR - Intelligence Naturelle Relative
Administrateur du forum BrassageAmateur.com
9 au 12 Mai 2024 : Venez au Brassam fêter les 20 ans du forum !
Avatar de l’utilisateur
Aza-
Maître Brasseur
Maître Brasseur
Messages : 2692
Inscrit depuis : 5 ans 10 mois
Je suis tuteur : oui
Mon équipement : Kit basic Saveur biere
Cuve Inox induction 20L
Chambre tempéré Inkbird 308 + tube chauffant
BIAB
Brasseur : Amateur
Localisation : Verdun sur Garonne
A remercié : 117 fois
A été remercié : 252 fois

Re: L'avenir du BeerXML

Message par Aza- »

Penn-Maen a écrit :il y aura toujours quelqu'un pour inventer une nouvelle unité (genre "3 bols de pale +2 casseroles de blé"...)
Oui mais non. La spécification donne une liste d'unités acceptables et on ne doit pas en sortir. Encore une fois, une application peut faire n'importe quoi avec ça, mais ce sera hors spec.
Penn-Maen a écrit :Les tsp, cup et autres unités de ce type : pas le droit, point. Système SI dans le fichier, et chaque soft se débrouille ensuite pour convertir dans l'unité locale.
Dans l'absolu ça m'irait ! Mais on a bien vu que les devs (parfois même ceux qui avaient participé à la spec) ne le respectaient pas. Je préfère un truc qui est plus complexe mais où les données sont sûres.
Si tu te souviens de notre discussion de l'autre jour, j'aurais préféré rester en unité SI et faire du name and shame sur ceux qui respectaient pas.
Penn-Maen a écrit :
Pour les unités et leurs multiples/sous-multiples : pourquoi ? Une voiture ou un semi-remorque, ça se pèse en tonne(s). Pourtant la carte grise est toujours en kilogrammes. Donc on n'est pas "obligé" d'utiliser des unités différentes dans le fichier, mais les softs sont eux libres d’interpréter la valeur pour la rendre lisible à l'humain. Car dire "ce n'est pas format destiné à être lu par un humain" d'un coté, et de l'autre faire usage des multiples ou sous-multiples d'une unité qui ne sont que pour la lecture humaine est un peu antinomique. Un ordinateur se fout éperdument que l'humain se sache pas compter le nombre de zéro avant/après une virgule ;)
Encore une fois, je suis assez d'accord. Dans l'absolu, j'aurais préféré que tout soit en g (par exemple) et qu'il y ait un champ qui donne une unité d'affichage. Ça aurait permis de préserver l'intégrité de la valeur tout en permettant de dire si un ingrédient s'exprime en g en cuillère à café ou en tasse.
Penn-Maen a écrit :Note : une solution de validation serait aussi un plus. Comme les XML validator. C'est peut-être un truc qui manquait pour le Bxml, et du coup chacun y est allé de sa petite modif ..
Justement, vu que la spec est un JsonSchema, toute recette sera validable. Dans le repo Github, il y a déjà de quoi le faire justement. Ça ne concernera toutefois que la forme et non le contenu (du Special B à 300 °L passera alors qu'en vrai c'est 300 EBC. En revanche, 300 "mon unité non définie dans la spec" ne passera pas).
Jean-Luc a écrit :Tout standard est soumis aux interprétations de chacun. Le beerxml n’y échappe pas.
Un bon standard ne doit justement laisser aucune place à l'interprétation. A mon sens, BeerXML a été fait dans cette idée, mais le manque de validation et le fait qu'il soit abandonné comme format primaire et contourné par ses propres créateurs a pas aidé à sa stabilité effective.
Jean-Luc a écrit :Créer un nouveau “standard” (du coup pourquoi appeler ça un standard...), est il la bonne solution ?
Je crois qu'il y a confusion sur le terme standard. Dans le langage courant, on imagine que c'est quelque chose qui a été choisi et qui est utilisé par tous. En vrai, on peut créer un standard seul et l'utiliser seul. Techniquement, ça reste quand même un standard. En l’occurrence, ce n'est pas un nouveau standard, mais une évolution du BeerXML. Il est d'ailleurs directement présenté comme la version 2.x.x.
Jean-Luc a écrit : Le beerxml a été conçu comme une aggregation de données en multiniveaux (recette/style/matériel/brassage/fermentation.../ingrédients/.../)

Une recette en beerxml “complète”, en accord avec le format, contient toutes les données nécessaires et détaillées, profils matériel, brassage, style, etc... et pas juste de quoi afficher son résumé.

Mais si les unités sont répétées et détaillées pour chaque élément c’est pour que chaque élément soit autonome : pour qu’en important une recette dans un programme on puisse récupérer la totalité d’une “brique” de données : 1 houblon avec son usage et ses caractéristiques, 1 profil de matériel complet prêt à utiliser, 1 levure, 1 profil de brassage ou de fermentation etc...

Chacune de ces briques pouvant alors enrichir l’inventaire et les profils personnels.

Du coup, récupérer d’une recette tel ou tel ingrédient, avec sa couleur et son unité pour la convertir facilement, plutôt que se demander dans quelle unité l’ensemble de la recette est calculée, ça peut faire du sens.
Entièrement d'accord avec ça, c'est toujours le cas en BeerJson 2 pour le peu que j'en ai lu.
Jean-Luc a écrit :Sinon pour un nouveau format, je reste quand même dubitatif sur la naissance d’un format qui se voudrait aussi un standard, quand celui qui existe est si peu ou si mal utilisé, ou compris.

Au final tout le monde veut être universel, et tout le monde veut être différent.
Je partage pas cet avis par contre.
Encore une fois, c'est pas un nouveau format, mais une évolution du BeerXML. J'ai pas encore assez joué avec pour voir si c'est facile de passer de l'un à l'autre, mais ce sera sûrement un point critique à son adoption.
En revanche, le BeerXML 1 est pour moi définitivement obsolète :
  • Il ne couvre pas l'intégralité de ce dont tout logiciel de brassage a besoin (houblonnage, acides, ...)
  • Il a été totalement dévoyé et c'est irrécupérable
  • Son format (le XML) est une technologie dépassée
  • Il n'est plus maintenu (mis à jour)
Je pense que c'est tous ces points que BeerJson veut corriger. Il a aussi l'avantage d'être facilement convertible en BeerXML pour exporter les données pour les applications n'utilisant pas la nouvelle version.
Avatar de l’utilisateur
Penn-Maen
Maître Brasseur
Maître Brasseur
Messages : 11867
Inscrit depuis : 11 ans 10 mois
Je suis tuteur : oui
Mon équipement : Miss Vilaine \o/ viewtopic.php?t=39535
Brasseur : Amateur
Localisation : Morbihan centre
A remercié : 734 fois
A été remercié : 1424 fois

Re: L'avenir du BeerXML

Message par Penn-Maen »

Un bon standard ne doit justement laisser aucune place à l'interprétation. A mon sens, BeerXML a été fait dans cette idée, mais le manque de validation et le fait qu'il soit abandonné comme format primaire et contourné par ses propres créateurs a pas aidé à sa stabilité effective.
Amen !

Sinon, et sans rire, est-ce que toi et 314r (JB) comptez vous insérer dans ce projet ? Parce qu'un point de vue européen en plus ne serait peut-être pas du luxe :whistle:
Regarde, écoute, questionne, apprend, transmet, recommence sans cesse
Disclaimer : je dis certainement plus de conneries que la moyenne, alors vérifiez !

SE PRESENTER ...et... Guide pour débutants
Avatar de l’utilisateur
Aza-
Maître Brasseur
Maître Brasseur
Messages : 2692
Inscrit depuis : 5 ans 10 mois
Je suis tuteur : oui
Mon équipement : Kit basic Saveur biere
Cuve Inox induction 20L
Chambre tempéré Inkbird 308 + tube chauffant
BIAB
Brasseur : Amateur
Localisation : Verdun sur Garonne
A remercié : 117 fois
A été remercié : 252 fois

Re: L'avenir du BeerXML

Message par Aza- »

Là, tout de suite, je veux absolument (pour des raisons professionnelles) sortir Brewy v1 avant mi Janvier. Donc je me concentre dessus.
Après, c'est possible que j'y regarde oui.
Répondre

Créer un compte ou se connecter pour rejoindre la discussion

Vous devez être membre pour pouvoir répondre

Créer un compte

Vous n‘êtes pas membre ? Inscrivez-vous pour rejoindre notre communauté
Les membres peuvent créer leurs propres sujets et s‘abonner à des sujets
C‘est gratuit et cela ne prend qu‘une minute

Inscription

Se connecter