Claude SIMON a écrit 570 commentaires

  • [^] # Re: Un peu d'aide

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 0. Dernière modification le 04 juillet 2016 à 17:57.

    Je suis sûr que si, par exemple tu sais que tu fais des templates quand tu en fait (quand tu utilise <>).

    Étant donné que c'est quand même du C++, je pense que la présence de templates n'a rien de surprenant…

    Globalement pour me donner envie de lire les 50k SLOC (Source Lines Of Code) de code que constitue ton xdhdq, il faut quelque chose qui parle un peu plus aux gens. Moi perso je ne développe pas en C++ depuis pas mal de temps, j'ai pas un grand plaisir à bouffer autant de code.

    De l'autre coté c'est dommage de ne pas s'intéresser à l'existant parce que ça constitue une source d'inspiration importante.

    En fait, les prémices de mon framework datent d'une vingtaine d'année. A l'époque, je voulais utiliser la STL, mais il était fortement déconseillé dans la documentation de l'utiliser en production. Du coup, j'ai développé mes propres bibliothèques. Après, j'ai regardé l'existant, mais sans aller jusqu'à regarder les détails de l'implémentation, vu que, globalement, cet existant ne m'apportait rien de plus que ce que je n'avais déjà avec mon framework

    Personnellement je n'appellerais pas xdhdq un hello world. C'est plus une vitrine. Le hello world, c'est le code minimal qui permet d'utiliser le cas nominal de ton framework. Par exemple c'est ce qui permet d'avoir une fenêtre avec un bouton dessus et quand tu clique dessus le bouton change de couleur (ou le texte change). Je présume que ça tiens en 3 fichiers C++ et 2 fichiers XML/XSL.

    Là, j'avoue, j'ai fauté. Le fait est que, lorsque je démarre le développement d'une nouvelle application, je lance un script qui me met en place une application avec quelques fonctionnalités de base. Ainsi, la première page de l'application permet, soit de créer un nouveau projet, soit de sélectionner l'un de ceux prédéfinis dans le fichier de configuration, soit d'ouvrir un fichier contenant un projet. La seconde page, dont le contenu est conditionné par le choix fait à la première page, permet, soit de continuer sans backend, soit d'en sélectionner un parmi ceux prédéfinis dans le fichier de configuration (ou du projet), soit de charger directement la bibliothèque dynamique correspondant au backend, soit encore de saisir l’adresse et le port du backend auquel l'application doit se connecter. L'essentiel du code de cette application correspond en fait à la gestion des ces fonctionnalités. Les fichiers C++ et XSL correspondant aux fonctionnalités au cœur de l'application sont ceux commençant par Fields (un .h, un .cpp, et deux .xsl).

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Troll

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 2.

    Si tu veux parler d'une séparation frontend/backend, ou client/serveur, ça existe quand même depuis très très longtemps sous une diversité de formes impressionnate. D'une manière générale, je pense que peu de gens contestent l'utilité de séparer les algorithmes du logiciel et l'interface utilisateur.

    La séparation frontend/backend, je l'avais implémenté à l'époque parce que ça me semblait une bonne idée. Vu tous les avantages que cela apporte, je me doute bien que je ne sois pas le seul à mettre en œuvre ce mécanisme, sans toutefois chercher à en savoir davantage à ce sujet. Je l'ai simplement mentionné à titre informatif, sans vouloir impliquer que cela soit une exclusivité de mon framework.

    Après, qu'il faille recompiler la partie UI ou modifier le code pour modifier l'interface, ça dépend un peu du type de logiciel, mais ça ne me semble pas forcément primordial. J'ai du mal à voir ce que ça change en termes de maintenabilité du code, par exemple. Si tu as un code super-complexe qui te génème une interface graphqiue à partir de fichiers XML super complexes, tu vas avoir des bugs de partout, et il est très improbable de motiver les gens à apprendre le "framework". Typiquement, pour un logiciel libre, ça veut dire que tu te coupes de la possibilité de recevoir des patches ; un utilisateur ne va pas passer plusieurs mois à se former sur ton framework pour corriger un bug.

    Le code pour générer l'interface n'est pas complexe en soi ; ce qui peut être complexe, c'est le code HTML/CSS, et éventuellement JS (sachant que l'on peut mettre du XHTML/CSS/JS directement dans le fichier XSL), mais cela dépend uniquement de ce que veut l'utilisateur. Les fichiers XSL fournis avec l'application ne contiennent que des instructions XSL relativement basiques. Quand au XML, il n'est pas complexe non plus, car il ne contient que les données, et quelques informations associées, destinées à être affichées.

    L'isolement technologie a un coût, spécialement pour du logiciel libre. Si tu utilises un binding gtk pour perl, tu as de grandes chances que beaucoup de bricoleurs puissent en un coup d'œil comprendre ce que tu fais. Par ailleurs, être capable de faire tourner ton soft sans passer 3 jours à installer l'environnement de travail peut aussi aider. Au contraire, si le saut technologique est important, cette première étape est rédibitoire. Par exemple, j'ai été faire un tour sur ton github, juste pour cliquer sur quelques fichiers C++ au hasard. Clairement, ton code C++ n'est pas du C++, c'est une sorte de dialecte du C++ qui repose sur des appels de macro dans tous les sens. C'est peut-être justifié, mais ma réaction, c'est "qu'est-ce que c'est que ce bordel, c'est même pas du C++ ce truc". Entre ça et le code généré, j'ai l'impression que comprendre la logique de ton framework nécessite plusieurs semaines de travail. Si en plus tu n'arrives pas à expliquer l'intérêt d'utiliser ce type de technologie, tu vas galérer pour trouver une base d'utilisateurs à mon avis.

    Je n'essaye pas de mettre l'accent sur mon framework, d'autant plus qu'il n'est pas documenté (pas dans le sens 'documentation pas rendue publique', mais dans le sens 'documentation réellement inexistante'). Il se trouve que j'ai développé, et que je compte encore développer, quelques logiciels que j'ai placé sous licence libre, et qui me semblent donc parfaitement qualifiés pour faire l'objet de quelques journaux sur ce site. Maintenant, que les gens ne s'y intéresse pas, ou ne s’intéresse qu'au logiciel, ou bien s'intéresse au framework sur lequel ces logiciels s'appuient, c'est leur affaire, tout en étant bien conscient que mes lacunes en matière de communication ne facilite pas les choses, sachant néanmoins qu'il y a plus de chance que les gens s'y intéresse en communiquant mal sur le sujet, qu'en ne communiquant pas du tout. Si, malgré cela, des personnes sont intéressées par ce que je fais, je leur apporterais volontiers tout éclaircissement qui leur paraîtrait nécessaire.

    Pour ce qui est de l'installation du logiciel, je suis parfaitement d'accord qu'elle est, dans sa forme actuelle, quelque peu rédhibitoire. Mais ce n'est pas dû à mes logiciels proprement dit, mais à CEF, sur lequel mes logiciels s'appuient dans leur version native. Pour Windows, j'ai essayé de simplifier l'installation en fournissant un package auto-suffisant. Pour les autre environnements, je voudrais pouvoir faire la même chose, mais je ne sais pas faire (ce qui ne veut pas dire que ce n'est pas possible). Tous les autres logiciels que j'ai publié et qui ne dépendent pas de CEF sont installés après décompression de l'archive en lançant simplement un make à la racine de l’archive. Je suis en train d'essayer de mettre en place la même procédure pour ce logiciel-ci, mais ça nécessite de se plonger dans les arcanes de CEF, ce qui prend du temps…

    Répondre de manière semi-agressive aux commentaires ne risque pas forcément d'aider non plus, d'ailleurs. Tu t'attendais peut-être à ce que les gens te répondent "c'est génial ton truc, comment personne n'y a jamais pensé avant", mais visiblement, s'ils te disent qu'ils n'ont pas compris et que ça ne leur paraissait pas spécialement nouveau ni même intéressant, ça n'est pas dans le but de te blesser. Si tu es dans l'état d'esprit de répondre "vous êtes tous des cons qui n'y connaissez rien", ça ne va pas être très constructif. Il ne faut pas non plus que ça bride ton entousiasme, si tu penses que ton truc vaut le coup, fonce. Mais n'oublie pas "eat your own dog food": Si ta techno permet de développer sans effort des logiciels super facilement, alors le mieux est de fournir ces logiciels toi-même, jusqu'à ce que les gens se demandent "mais comment ce type peut-il maintenir autant de softs de qualité?", ce qui les amènera sur le côté technique. L'approche inverse me semble au contraire très risquée, pusiqu'il est normal pour quelqu'un de sain mentalement de rejeter une nouvelle technologie sans avoir une bonne raison de s'y intéresser.

    Il ne me semble pas avoir répondu de manière semi-aggressive. Par contre, j'ai l'impression que mon refus de me plier à certains dogmes auxquels quelques personnes semblent attachées est vécu par ces dernières comme un affront… Comme je l'ai écrit plus haut, je ne m'attends à rien du tout en publiant ce genre de journal. Je suis développeur freelance, j'adore ça, et j’utilise mon framework pour développer les applications demandées par mes clients, qui en sont d'ailleurs très satisfait. En outre, j'utilise quotidiennement avec délice, professionnellement et à titre privé, plusieurs applications, dont certaines disponibles sur mon site, que j'ai développées et qui sont basées sur mon framework (donc, le dogfooding, je connais). Quelques soient les réactions à mes journaux, elles ne changeront rien à cela, ni d'ailleurs, rassure-toi, à mon intention de continuer à développer ce logiciel et d'autres, dont les évolutions feront l'objet de journaux ici même.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Troll

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 1.

    Si tu parles de la possibilité de définir une UI en déclaratif, ya de quoi faire. NeXT/Apple le font depuis le début des années 90, flex le faisant ya 10 ans, Android le fait depuis un bail, qt le fait avec creator et je serais surpris si ms avait pas ca depuis un bail.

    J'ai essayé QML (je pense que c'est à cela que tu fais référence avec Qt), et j'ai fait un peu d'Android, mais ça date d'il y a pas mal de temps. Pour Microsoft, il y XAML auquel j'ai jeté un œil, mais cela fait longtemps aussi. Or, il me semble bien que toutes ces technos nécessite une sorte de compilateur. Le mécanisme qui est mis en œuvre dans mon logiciel ne nécessite pas de compilation. Il n'est même pas nécessaire de relancer le logiciel pour voir les modifications. Comme je l'avais écrit dans un des commentaires ci-dessus, j'avais déjà fait quelque chose de similaire, bien que pas aussi poussé, en utilisant XUL, mais je n'ai jamais entendu parler d'un autre logiciel utilisant XUL dans ce but, ce qui n'a rien d’étonnant, vu que XUL n'a guère était employé en-dehors des produits Mozilla.

    Si tu parles de la possibilité de modifier le comportement de l'appli depuis du xml, deux choses:
    - on a fait plus simple qu'xml pour décrire des comportements
    - ça fait un bail aussi qu'on sait que c'est pas une bonne idée (si Apple a jamais porté les bindings d'interface builder sous iOS, c'est pour une bonne raison). C'est un cauchemar à maintenir, et apporte au final tres peu.

    XML ne sert qu'à exposer les données, et quelques informations associées, qui doivent être affichées, sans même la moindre indication sur la manière dont ces données doivent être affichées.

    Bref, j'ai un peu laissé tomber quand j'ai vu que le nom de l'appli était xdhqxddqt et que t'avais un autre nom de projet a peu près pareil, à 2-3 d/h/x prêt. Ça me donne vachement l'impression d'un inner platform effect si tu veux mon avis.

    Avec les applis que je développe pour les clients et mes applis personnels, tous contenant plusieurs binaires, ça fait un paquet de noms à trouver. Aussi, pour ne pas perdre trop de temps avec ça, j'ai établis quelques règles de nommage ; malheureusement, ces règles donnent des noms parfois un peu abscons, mais c’est le prix à payer si l'on veut des noms pas trop longs. Quand à l'inner platform effect, je ne connaissais pas, et, vu ce qu j'ai lu à ce sujet, je ne vois pas trop le rapport entre ça et le nom de mes projets/applis…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Troll

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 2.

    Comme je l'ai indiqué au début du journal, l'intérêt du logiciel, en l'état, ne réside pas dans ses fonctionnalités, très limitées pour le moment, mais des technos mis en œuvre. En l’occurrence, l'une dans les technos permet de modifier l'interface graphique du logiciel sans avoir à intervenir sur ses sources. Comme il s'agit d'un logiciel libre, il est censé offrir la liberté de le modifier, et cela par la mise à disposition de ses sources. Avec cette techno, il est encore plus facile d'appliquer cette liberté à son interface, puisque qu'il n'est pas nécessaire de modifier ses sources pour cela. N'ayant connaissance d'aucune autre techno qui offre cette possibilité, et ce site traitant des valeurs attachées au Libre, je pensais que cette techno pouvait intéresser son lectorat, d'où ce journal.

    Concernant cette techno, et les autres présentées dans ce journal, toute les affirmations ne sont pas des promesses concernant de futures caractéristiques, mais la description de caractéristiques existantes, et chacun peut s'en persuader en consultant les sources. Je suis conscient que je suis loin d'exceller dans l'art de la communication, et que mes écrits en pâtissent, et c'est pour cela que je m'applique à fournir les réponses les plus pertinentes possibles aux différents points soulevés dans les commentaires.

    Que ce soit dans ce journal, ou dans d'autres, on se gausse souvent que j'emploie XML/XSL, ou certaines autres combinaisons de technos, parce que, paraît-t-il, il en existe maintenant de plus récentes pour faire la même chose, mais en mieux. C'est quelque chose que je suis tout à fait prêt à admettre, mais certainement pas uniquement sur la base d'affirmations péremptoires qui ne sont étayées d'aucun élément probant. A titre d'exemple, j'attends toujours que l'on m'indique quelle est cette technologie qui est tellement mieux que XML/XSL(T), et en quoi elle est mieux.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Un peu d'aide

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 0.

    Je ne peux pas être plus précis ; n'ayant quasiment jamais utilisé d'autres framework que le mien, je ne peux pas dire en quoi il se distingue. J'ai juste un jour commencé à coder quelques bibliothèques, regroupant des fonctionnalités que j'utilisais souvent, bibliothèques que je modifie, lorsque c'est nécessaire, pour les rendre plus faciles à utiliser et/ou plus performantes. Puis je leur ai rajouté d'autres bibliothèques, qui prenaient en charge d'autres fonctionnalités que j'avais été amené à implémenter au grès des différents développement que j'ai réalisés, histoire de pouvoir disposer de ces fonctionnalités sans avoir à les réimplémenter. Et c'est l'ensemble de ces bibliothèques qui constitue mon framework. Je n'ai pas cherché à mettre en œuvre des techniques particulières ; la forme que prend l'API est juste celle que je trouve la plus pratique à l'usage. Et la terminologie ci-dessus ne m'est pas suffisamment familière pour pouvoir dire si elle s'applique ou non à l'API de mon framework

    Pour ce qui est du "Hellow World!", c'est un peu le but du logiciel présenté dans ce journal, dans son état actuel, vu le peu de fonctionnalités qu'il implémente. Sinon, pour ce qui est de la technologie que j'appelle XDHTML et qui se concentre sur l'interface graphique, il y le logiciel que je présente à cette adresse : http://q37.info/computing/epeios/apps/xdhdq/.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: XML + XSLT ? => Pan !

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 2.

    L'avantage de la transformation XSL, c'est qu'elle est implémentée nativement sur la plupart des navigateurs (en tout cas, les plus populaires). C'est un élément clef dans la technologie que je présente dans ce journal.

    Sinon, peut-être parce que je l’utilise quotidiennement depuis de nombreuses années, mais je n'ai aucune difficultés avec XSL ; il faut dire que, probablement parce que j'ai toujours un contrôle total sur le flux XML entrant, je n'utilise que des fonctionnalités relativement basiques.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Un peu d'aide

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 2.

    Quand j'ai écrit ce framework, ce n'est pas parce que j'étais insatisfait de la qualité des logiciels produits de manière classique. La qualité dont je parle est celle perçue par mes clients et dont ils me font part. J'ignore lesquels des points que tu cites ils prennent en compte dans leur opinions qu'ils ont des logiciels que je développe pour eux. Quand à moi, en tant que développeur, je trouve que les bugs de jeunesse sont facilement corrigés, que je n'ai pas de difficulté particulière à faire évoluer mes logiciels, et que la maintenance requiert peu d'efforts. Ceci dit, j'ai peu d'éléments de comparaison, ayant quasiment toujours travaillé uniquement avec mon framework.

    Le framewok en question, ça reste un framework C++ ; il n'y a pas de nouveau langage, ou de méta-langage. Donc, un Hello world ! ne différerait pas de manière significative avec la version écrite en C++ standard.

    Pour ce qui est de Haïku, je ne connais pas donc je ne saurais dire. Si similitude il y a, elle serait totalement fortuite.

    Je sais que je sors des sentiers battus (on me l'a suffisamment fait remarqué dans le journal sur XUL mentionné ci-dessus, d'ailleurs avec le même genre de remarque, mais sur le diptyque XUL/JS) ), mas ça ne m'a pas trop mal réussis jusqu'à présent.

    Quoi qu'il en soit, merci pour tes encouragements !

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Archi

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 2.

    Peut-être que le logiciel a des similitudes avec SàT, mais le projet faisant l'objet de ce journal ne se limite pas à ce seul logiciel.

    Ce n'est pas par plaisir de développer ma propre solution que je travaille sur ce projet, mais c'est pour développer une solution qui offre des possibilités qu'aucune autre n'offre.

    J'ai étudié des solutions existantes, mais aucune ne répondait à mes attentes. Maintenant, si j'en ai loupée une, je veux bien que l'on me fasse la découvrir. C'est l'un de buts de ce journal, que l'on puisse m'indiquer si, et, le cas échéant, où je me fourvoie.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Troll

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 3.

    Comme je l'ai clairement, et à plusieurs reprises, indiqué dans le journal, le logiciel fait peu, très peu, mais pas rien. Et comme c'est précisé dans le titre, ce n'est que le commencement. Il en faut bien un.

    Aussi peu qu'il fasse, ça m’étonnerait que ce soit faisable avec des scripts, qu'ils soient à la con ou pas. Mais je ne connais pas tous les langages, alors il est possible que je me trompe, et je serais enchanté d'en apprendre plus sur le sujet.

    Comme indiqué dans le journal, on peut télécharger les sources, voire les consulter en ligne, lancer la version Windows de l'application en quelque clics (et quelques commandes saisies dans la console, il est vrai) voire la lancer sur d'autres OS (bon, là, c'est vrai, ce n'est pas aussi simple qu'avec Windows, parce que je ne sais pas faire). Bref, il y a largement de quoi se rendre compte que le framework est loin d'être vide.

    Sinon, l'objectif de ce framework est de simplifier le développement d'applications (je ne suis pas masochiste). Et je répondrais volontiers à toute question sur des points qui peuvent paraître obscurs.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Troll

    Posté par  (site web personnel) . En réponse au journal 'Epeios organizer' : le commencement. Évalué à 3.

    Pas la peine de sortir. Le fait est que, bien avant que l'on ne parle de HTML5, j'utilisais XUL pour mes interfaces graphiques. J'ai d'ailleurs écris ce journal à ce sujet. Pour le natif, j’utilisais XULRunner ; par contre, pour le Web, comme seul Firefox était capable d'afficher du XUL, je devais faire une version de l'interface en HTML pour pouvoir l'afficher dans d'autres navigateurs.

    Ce que j'appelle XDHTML n'est en fait que ce que je faisais déjà avec XUL, mais en plus avancé, et avec HTML5. Avec l'avantage, cette fois-ci, de pouvoir utiliser le même code pour la version native et la version Web

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Nommage des structures

    Posté par  (site web personnel) . En réponse au journal Ulfius: framework pour faire des API Web en C. Évalué à 4.

    Ça ne serait pas plutôt :

     struct _item *voisin;

    Parce que sinon, la structure se contient elle-même…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • # Problème de mise à jour ?

    Posté par  (site web personnel) . En réponse au message Verification de certificat SSL avec Debian 8. Évalué à 1. Dernière modification le 05 février 2016 à 07:50.

    Je ne me suis jamais vraiment intéressé à ces histoires de certificats, mais j'ai un serveur sous Debian 8 et, suite à une mise à jour réalisée dernièrement, j'ai trouvé le courrier suivant dans la boite mail du compte root de mon serveur (quelque chose de similaire avait été affiché lors de la mise à jour proprement dite, mais je n'y ai pas vraiment prêté attention) :

    ca-certificates (20141019+deb8u1) stable; urgency=medium
    
      Update Mozilla certificate authority bundle to version 2.6.
        The following certificate authorities were added (+):
        + "CA WoSign ECC Root"
        + "Certification Authority of WoSign G2"
        + "Certinomis - Root CA"
        + "CFCA EV ROOT"
        + "COMODO RSA Certification Authority"
        + "Entrust Root Certification Authority - EC1"
        + "Entrust Root Certification Authority - G2"
        + "GlobalSign ECC Root CA - R4"
        + "GlobalSign ECC Root CA - R5"
        + "IdenTrust Commercial Root CA 1"
        + "IdenTrust Public Sector Root CA 1"
        + "OISTE WISeKey Global Root GB CA"
        + "S-TRUST Universal Root CA"
        + "Staat der Nederlanden EV Root CA"
        + "Staat der Nederlanden Root CA - G3"
        + "TÜRKTRUST Elektronik Sertifika Hizmet Saglayicisi H5"
        + "TÜRKTRUST Elektronik Sertifika Hizmet Saglayicisi H6"
        + "USERTrust ECC Certification Authority"
        + "USERTrust RSA Certification Authority"
        The following certificate authorities were removed (-):
        - "A-Trust-nQual-03"
        - "America Online Root Certification Authority 1"
        - "America Online Root Certification Authority 2"
        - "Buypass Class 3 CA 1"
        - "ComSign Secured CA"
        - "Digital Signature Trust Co. Global CA 1"
        - "Digital Signature Trust Co. Global CA 3"
        - "E-Guven Kok Elektronik Sertifika Hizmet Saglayicisi"
        - "GTE CyberTrust Global Root"
        - "SG TRUST SERVICES RACINE"
        - "TC TrustCenter Class 2 CA II"
        - "TC TrustCenter Universal CA I"
        - "Thawte Premium Server CA"
        - "Thawte Server CA"
        - "TURKTRUST Certificate Services Provider Root 1"
        - "TURKTRUST Certificate Services Provider Root 2"
        - "UTN DATACorp SGC Root CA"
        - "Verisign Class 4 Public Primary Certification Authority - G3"
    

    D’après ce que j'en comprend, on y voit que les certificate authorities USERTrust RSA Certification Authority et COMODO RSA Certification Authority, référencées par les messages retournés par openssl, ont été ajoutées.

    Il y a peut-être un problème dans ta procédure de mise à à jour…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Quelques questions

    Posté par  (site web personnel) . En réponse au journal Publication de la première version de fwtchrq.. Évalué à 1.

    Pour les exclusions, il y a raison particulière de ne pas avoir utilisé le même format que gitignore ? Là, le format où tmp signifie en fait un fichier avec une extension .tmp, je trouve ça assez déroutant.

    Tout simplement le fait que j'ignorais l'existence de gitignore. Bref, ce n'est pas un format que j'ai exclu sciemment…
    Comme pour toutes les autres fonctionnalités du programme, j'ai juste implémenté la première mise en œuvre qui me passait par la tête (pour faire court). Le tmp équivalent à .tmp, c'est juste une facilité que j'ai rajoutée car facile à coder. Maintenant, il faut voir ce que tout cela donne à l'usage, et affiner/modifier en conséquence…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Change de nom !

    Posté par  (site web personnel) . En réponse au journal Publication de la première version de fwtchrq.. Évalué à -2.

    Voir ce commentaire.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Quelques questions

    Posté par  (site web personnel) . En réponse au journal Publication de la première version de fwtchrq.. Évalué à 4.

    fwtchrq se contente de parcourir l’arborescence et d'en comparer le contenu avec une image qu'il en a faite lors d'un précédent lancement. De par les marqueurs qu'il place dans l’arborescence surveillée, il est capable de détecter les créations/renommages/déplacements/suppressions de répertoires. Par contre, concernant les fichiers, vu qu'il s'appuient uniquement sur leur taille et leur horodatage, il rapportera le renommage d'un fichier, par exemple, comme une création et une suppression de fichiers. Pour les mêmes raisons, une permutation de fichiers sera, à priori, rapporté comme une modification de chacun des fichiers

    inotify serait, à priori, un bon outil pour détecter un renommage de fichier. Toutefois, j'ai essayé inotifywatch -r sur mon arborescence de test, qui est extrêmement fournie : c'est lent, et, en outre, il n'a pas été en mesure d'aller jusqu'au bout faute d'un nombre suffisant de inode watches. Je suis donc, pour l'instant, dubitatif quand à l'intérêt de cet outil dans le cadre du développement de fwtchrq.

    Il y une gestion des exclusions, que l'on spécifie à l'aide d'un fichier, tel que celui que l'on trouve à l'adresse : http://hg.savannah.gnu.org/hgweb/epeios/file/70ebcb4eaa50/tools/fwtchrq/Exclusions.txt. Le fichier d'exclusion à utiliser et à spécifier dans le fichier de configuration, comme on peut le voir à cette adresse (la section en question est en commentaire) http://hg.savannah.gnu.org/hgweb/epeios/file/70ebcb4eaa50/tools/fwtchrq/fwtchrq.xcfg. Lorsqu'un répertoire est exclu, il est vraiment totalement ignoré par le logiciel.

    Comme indiqué dans le journal, il ne s'agit là vraiment que d'un tout premier jet. Ce logiciel peut évoluer dans n'importe quelle direction (utilisation de inotify sous GNU/Linux et équivalent pour les autres systèmes, prise en compte d'autres critères que la taille et l'horodatage pour les fichiers, configurabilité de la gestion des exclusions…), pour peu que la demande soit telle que cela vaille la peine pour moi d'y investir le temps nécessaire…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Tu pourrais pas mettre un dépôt Git ?

    Posté par  (site web personnel) . En réponse au journal Publication de la première version de fwtchrq.. Évalué à 10.

    Quel est l'intérêt ? De ce que j'en connais, Git est un logiciel de gestion de version ; or, dans la page dédié à fwtchrq, il y a les liens vers un dépôt Mercurial hébergé sur Savannah contenant les sources de fwtchrq

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Je trouve que le nom est trop facilement prononçable ...

    Posté par  (site web personnel) . En réponse au journal Publication de la première version de fwtchrq.. Évalué à -2.

    L'ennui avec les noms de logiciels, comme avec les noms de domaines d'ailleurs, c'est que, si vous arrivez à en trouver un qui soit assez court, évocateur, joli (quoique l'on puisse entendre par ce terme ; la prononçabilité, par exemple), facile à retenir, etc., et bien, il y des chances que ce nom, ou une forme proche, soit déjà utilisé. Le risque existe alors d'avoir un jour à le changer, avec tous les désagréments que cela implique (modification de tous les documents comportant ce nom), sous peine de risquer un conflit avec une quelconque entité qui utilise un vocable qui présente, ne fût-ce que vaguement, des similitudes avec le nom en question pour désigner l'un de ses produits. C'est déjà arrivé à plus d'un logiciel.

    Par ailleurs, je référence mes logiciels sur différents sites, à l'instar, par exemple, de xppq, qui est référencé sur Savannah et Freshcode, pour ne citer que ces deux-là. Pour pouvoir référencer son logiciel sur l'un de ses sites, il faut lui affecter un identifiant unique, et il est pratique alors d'utiliser le nom même du logiciel, comme cela est visible dans les URL ci-avant, plutôt que d'avoir à en trouver un autre, et à devoir se le rappeler, pour chaque site pour lequel cet identifiant est déjà utilisé.

    fwtchrq n'est pas le premier logiciel (et, j'espère, pas le dernier non plus) libre que je développe. Et je n'ai pas envie, à chaque fois que j'entreprends de développer un nouveau logiciel, de perdre des heures à chercher un nom qui soit assez court, évocateur, joli, facile à retenir, etc., puis à devoir vérifier qu'il, ou une forme proche, ne soit pas déjà utilisé, découvrir qu'il l'est déjà et avoir à en chercher un autre je ne sais combien de fois, tout en n'ayant jamais la certitude d'avoir poussé mes recherches suffisamment loin pour avoir définitivement écartée l'épée de Damoclès.

    Bref, les noms de mes logiciels semblent peut-être biscornus, mais c'est le prix à payer pour avoir une probabilité raisonnablement forte de n'avoir jamais à les changer…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Ça peut peut-être aider...

    Posté par  (site web personnel) . En réponse au message lib pour parser les options (command-line & config-file). Évalué à 1.

    J'ai implémenté un tel système dans mon framework ; j'en ai parlé dans ce journal.
    Le système a un peu évolué depuis ; la courte description sur cette page est plus à jour.
    L'implémentation en question n'est pas disponible en tant que bibliothèque dédiée, mais les sources étant accessibles, ça peut peut-être quand même être utile…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Autre bug bien embêtant (du moins pour moi) non résolu...

    Posté par  (site web personnel) . En réponse à la dépêche Firefox ? 42 !. Évalué à 1.

    Je suis actuellement en train de développer une application web, ma première en AJAX, et j'ai bien entendu rencontré le problème des input time/date non implémentés, mais j'ai pu m'en accommoder. Par contre, il y a un autre bug, qui, lui, m'embête bien car je ne vois absolument pas comment le contourner. Et celui-là, en plus d'être apparemment au point mort (plus de trois ans sans nouveau commentaire !), est antédiluvien (il date de 2001 !). Donc, j'ai une application web qui tourne sur tous les navigateurs modernes (y compris Safari), sauf IE (pour autant qu'on puisse encore le qualifier de moderne), Edge (à priori à cause d'un bug qui lui fait exécuter, sans raison, un script en boucle, mais il devrait y avoir moyen de le contourner) et donc, hélas, Firefox

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # ...comme pour le web (commercial) ?

    Posté par  (site web personnel) . En réponse au journal Logiciels pré-installés : actualité. Évalué à 3.

    Quand on achète un ordinateur avec Windows et des crapwares préinstallés, qu'on le reformate pour réinstaller Windows, évidemment sans les crapwares, ou pour installer un autre OS, n'est-ce pas comparable au fait d'aller sur un site web bardé de publicités avec un bloqueur de publicités ?

    Je me faisais cette réflexion parce qu'il semble y avoir justement une prise de conscience de certains des acteurs de la publicité sur Internet de leurs abus dans le domaine, et ce suite à la généralisation des bloqueurs de publicités. Peut-être que les responsables des crapwares auront un jour une démarche similaire, pour autant qu'il soit concevable qu'il puisse exister des crapeware respectueux de l'utilisateur, tout comme des publicités non intrusives…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • # Est-ce vraiment squirrelmail le problème ?

    Posté par  (site web personnel) . En réponse au message Changer de webmail. Évalué à 7.

    J'ai moi-même installé squirrelmail sur mon serveur, et cela n'a pas été sans mal, ceci pour dire que mes connaissances sont assez limitées dans le domaine, donc ce qui suit est peut-être erroné. Cependant, pour ce que je crois en avoir compris de son fonctionnement, mis à part si on lui demande d'afficher toute la liste des courriers d'une boîte et que ceux-ci soient vraiment nombreux, je ne vois pas trop pourquoi squirrelmail poserait problème, vu que ce n'est pas lui qui gère directement les courriers.
    Avec certaines distributions GNU/Linux, le format de stockage de courriers est mbox par défaut, un format dans lequel plusieurs courriers sont stockés dans un seul et même fichier. Donc, avec une boîte mail de 1 Go, on peut se retrouver avec un fichier de la même taille contenant tous les courriers de cette boîte. On peut aisément imaginer que la manipulation d'un tel fichier, notamment pour accéder à un courrier en particulier, puisse prendre un certains temps.
    En ce me qui concerne, le format mbox posait problème pour la sauvegarde des courriers. A chaque nouveau courrier qui arrivait dans ma boîte, je me retrouvais à devoir sauvegarder l'ensemble de tous les courriers, même ceux déjà sauvegardés, puisque tous étaient stockés dans un seul et même fichier (mes sauvegardes s'appuient sur rsync). C'est pour cela que je suis passé au format de stockage de courrier Maildir, avec lequel chaque courrier est stocké dans un fichier qui lui est propre, ce qui a évidemment résolu mon problème de sauvegarde.
    Maildir ou mbox, ce n'est pas squirrelmail qui gère cela, mais le serveur SMTP (enfin, je crois, et sans doute que le serveur IMAP doit aussi être configuré en conséquence). Face à un problème comme le tiens, je vérifierais d'abord le format de stockage des courriers, parce que si c'est mbox, il y a de fortes chances que le problème vienne de là, et changer de webmail ne le résoudrait en rien.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • # Bots malveillants ?

    Posté par  (site web personnel) . En réponse au message Des virus chez lenovo. Évalué à 4.

    Il y a quelques années de cela, j'ai eu exactement le même problème avec une machine d'une connaissance fraîchement installée (la machine, pas la connaissance, encore qu'elle venait d'emménager) à partir des CD-ROMs officiels (je ne sais par contre plus de quelle version de Windows il s'agissait), et que j'avais directement branchée sur une box pour réaliser les mises à jour de sécurité. J'ai dû la reformater, la réinstaller totalement, et procéder aux mises à jour de sécurité en prenant soin de la connecter à Internet via mon serveur GNU/Linux, faisant office de pare-feu matériel, pour qu'elle soit fonctionnelle. Bref, il semblait que cette version de Windows, telle que fraîchement installée à partir des CD-ROMs, comportait des failles à l'affût desquelles de nombreux bots circulaient sur Internet, failles heureusement comblées par les mises à jour de sécurité, mais encore fallait-t-il pouvoir les installer avant que ces bots ne puissent entrer en action…

    Ceci dit, cela me surprendrait qu'une version somme toute assez récente de Windows ne soit pas conçue pour faire face à ce genre de situation, et, qu'en outre, de nos jours, les dispositifs conçus pour offrir un accès à Internet ne soient pas, par défaut, configurés pour préserver les machines qui y sont connectées de ce genre de mésaventure, mais sait-on jamais…

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: NW

    Posté par  (site web personnel) . En réponse au journal De l’utilisation des technologies web dans une application native.. Évalué à 4.

    Mon but n’est pas d'utiliser à tout prix des technologies web. Il se trouve que HTML5, typiquement une techno web, est un bon candidat pour remplacer XUL, que je voulais abandonner pour les raisons citées dans le journal. Par contre, j'utilisais déjà C++ avec XUL (alors que, tout comme avec HTML, l'usage est également d'utiliser JavaScript), et cela fonctionnait parfaitement, donc je n'avais aucune raison de passer à JavaScript.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: Qt, QML

    Posté par  (site web personnel) . En réponse au journal De l’utilisation des technologies web dans une application native.. Évalué à 2.

    C'est juste qu'avec HTML, je pouvais ajouter des éléments et attributs maisons (les fameux xdh-... et data-xdh-... du journal) qu'il était facile de traiter avec des outils DOM classiques, alors qu'avec le JSON-like de QML je ne pouvais pas (ou je n'ai pas trouvé comment) faire la même chose.
    Au final, c'est surtout, comme indiqué à la fin du journal, la perspective de pouvoir avoir un seul et même code (C++ qui plus est) pour la version web et la version native d'une application qui m'a fait préférer HTML à Qt et consorts.

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…

  • [^] # Re: adéquation

    Posté par  (site web personnel) . En réponse au journal François Hollande visite 42, non mais allô quoi.... Évalué à 10.

    […] un BAC STI électronique (F3 pour les grabataires…) […]

    F3, c'était électrotechnique. Le BAC électronique, c'était F2…

    (grabataire, peut-être, mais pas encore sénile… :-))

    Zelbinium: pour la génération qui crée, pas celle qui scrolle…