El Titi a écrit 3948 commentaires

  • [^] # Re: Pas complètement open source

    Posté par  . En réponse à la dépêche Passbolt, un nouveau gestionnaire de mots de passe pour les équipes. Évalué à 2.

    A quoi servirait un dual licensing proprio/BSD sachant qu'on a aucune restriction à embarquer ce code dans une version proprio?
    petite omission de ma part… mon clavier s'est blo…

  • [^] # Re: Pas complètement open source

    Posté par  . En réponse à la dépêche Passbolt, un nouveau gestionnaire de mots de passe pour les équipes. Évalué à 4. Dernière modification le 16 avril 2016 à 16:27.

    Peux-tu essayer de comprendre avant de réagir en tapant le HS complet?

    Peux-tu essayer de ne pas toujours prendre tes interlocuteurs pour des lapins de garenne ?
    Allons donc sur le fond puisque tu insistes:

    La critique est de se réserver des droits pour les vendre (je ne ferai aucune critique sur un projet qui file qu'une version AGPL, c'est cohérent sur la volonté de laisser le code libre partout) qui n'est pas cohérent avec l'affichage "on aime le libre"

    La critique est donc bien sur l'éthique. Je ne suis pas tant HS que ça.
    Et là je t'objecterai l'argument phare de Zenitram… l'autre, celui qui l'utilise quand il s'agit de défendre une position contre les pourfendeurs moralistes de la GPL.
    Les licences libres n'ont cure de l'éthique. Si on choisit une licence libre et qu'on la respecte il n'y a rien à redire

    Le sujet n'est pas le copyleft ou non copyleft, je n'ai fait aucune critique sur le copyleft (j'ai bien fait attention de ne pas mettre mes idées sur le copyleft dans ma critique)

    Non tu ne l'as pas dit mais tu l'a pensé tellement fort:

    Je cite:

    juste que ça m'amuse de voir les licences de RMS, qui a utilisé le copyright pour s'opposer au non libre, être utilisées pour vendre du non libre, RMS aide à vendre du non libre grâce à son travail sur les licences :) )
    et
    Ne tombez pas dans le panneau, l'AGPL est ici pour vous vendre une version payante, et vos patchs ne sont pas que pour la communauté mais pour la version payante surtout.

    A quoi servirait un dual licensing proprio/BSD sachant qu'on a aucune restriction à embarquer ce code dans une version ?
    Et chose étrange (et tout à ton honneur, je le confesse), ton travail est diffusé sous licence BSD.

    C'est donc bien des copyleft dont il est question.
    Car oui, seul ce type de licence lorsqu'elle est adossée à une licence proprio permet d'en conserver un avantage concurrentiel.
    Moi ce ne choque pas plus que ça qu'une boîte qui veuille faire du proprio qui veuille pouvoir se lier à du libre puisse en avoir la possibilité, si ca me permet en tant qu'utilisateur de bénéficier grâce à ça d'un logiciel de meilleure qualité car financé. Oui la BSD le permet de base mais c'est une question de choix. Et oui par effet de bord, un concurrent devrait reverser son code pour pouvoir se faire du beurre mais ne peut pas faire du proprio avec. Mais la liberté de l'utilisateur reste, la liberté celle du LL est respectée. En revanche, contrairement à toi, je n'affirme (n'insinue pardon, chacun sait que tu sais jouer sur le fil du rasoir) pas que c'est "la raison" pour laquelle ils ont opté pour l'AGPL. Et après tout c'est eux qui l'ont pondu ce soft à la base et la règle du jeu est claire pour les contributeurs. Comme dirait encore ce cher Zénitram (l'autre). Tu est libre de ne pas l'utiliser ou de ne pas contribuer. Tout comme ça ne me choque pas que tu veuilles faire payer les users friqués qui n'ont pas envie de se faire chier à repackager ton soft.

    Il y a donc bien ce jugement moral qui émane de tes propos (le projet ne respecte pas l'éthique" du libre ou alors il faut qu'ils s'abstiennent de dual licence ou en change pour une type BSD) et une autre belle petite pique envers ce bon vieux RMS qui se retrouve avec son bébé "dévoyé".

    Moi, comme l'autre Zenitram, je préfère le pragmatisme

  • [^] # Re: Pas complètement open source

    Posté par  . En réponse à la dépêche Passbolt, un nouveau gestionnaire de mots de passe pour les équipes. Évalué à 6. Dernière modification le 16 avril 2016 à 12:13.

    Ok, je vous laisse donc dans le bonheur de devoir (sinon "tu es pas un gentil") dire que du bien. Je me fais avoir à chaque fois, cette liberté qu'on a à condition d'être dans le moule… (quel accueil des critiques, je dirais pour en copier un autre)

    Pov petit piou piou. Je vais verser une larme. On peut faire des critiques constructives (comme pointer des incohérences sur le licensing comme tu l'as fait) sans pour autant vouloir jeter l'opprobre, prêter des intentions. Mais on ne se refait pas hein.

  • [^] # Re: Pas complètement open source

    Posté par  . En réponse à la dépêche Passbolt, un nouveau gestionnaire de mots de passe pour les équipes. Évalué à 9.

    Dans l'exemple que tu fournis, n'importe qui peut faire exactement la même chose (sauf le nom, protégé, c'est autre chose, ça sert à éviter le cybersquatting), ma critique concerne le fait que l'auteur se garde un monopole sur certaines possibilités et que c'est affiché comme pour aider la communauté (alors que le but est de se financer).

    Quelle différence avec leur projet ? On peut aussi dire qu'artificiellement tu te livres à de l'open-source washing. C'est aussi hypocrite qu'eux.
    Tu respectes la licence, eux aussi (sauf pour l'histoire de artworks et ils ont pris en compte tes remarques)
    Je suis libre de repackager ton app et la revendre sur l'app store. Parfait
    Je suis aussi libre d'améliorer leur produit et de le commercialiser pour peu que je reverse mes modifs

    Ah oui tu es en BSD et là on on du copyleft, ta position est plus morale

    J'ai souvenir d'un intervenant sur ce site qui prétendait que la licence n'obligeait en rien une éthique quelle qu'elle soit, quelqu'un pour me le rappeler, j'ai comme un doute.
    Il y a un Z dans son pseudo je crois.

  • [^] # Re: Pas complètement open source

    Posté par  . En réponse à la dépêche Passbolt, un nouveau gestionnaire de mots de passe pour les équipes. Évalué à 7.

    Oui, c'est bien ce que je dis donc : vous êtes "achetables" ;-). Encore une fois, ça n'enlève pas le côté open source de l'offre, mais l'AGPL est la pour vendre du non AGPL. C'est un choix, juste que ça enlève le côté "on a choisi l'AGPL pour récupérer du code" mis en avant. C'est pour vous financer surtout .

    Si votre but est d’empêcher l'utilisation commerciale et/ou d'obliger les gens fournir à la communauté si ils veulent modifier le logiciel, l'open source n'est pas adapté.

    Faut bien vivre.
    J'en connais qui distribuent leur logiciel dans une version payante et qui viennent faire la leçon de morale aux autres:
    https://mediaarea.net/en/MediaInfo/Download/Mac_OS

    Super accueil, comme d'hab.

    Venir présenter son projet sur DLFP c'es la garantie de se faire bâcher.

  • [^] # Re: readability

    Posté par  . En réponse au journal JARR v1. Évalué à 3.

    Pour ce besoin, je t'invite à aller jeter un coup d'oeil sur ce projet https://github.com/1flow/1flow. Une news est passée ici: https://linuxfr.org/news/1flow-plate-forme-libre-pour-l-information
    La philosophie est identique à wallabag et ambitionne(ait) d'aller plus loin car ça permet aussi de suivre d'autres types de flux comme twitter.
    C'est basé sur du Python avec Django (pas Flask). Mais il doit sûrement y avoir des trucs à récupérer sur le module de parsing de page.
    L'auteur est passé par ici mais nous n'avons plus guère de nouvelles de son projet. voici son Trello: https://trello.com/b/lSR7Y6Vi/1flow-features-development
    N'hésite pas à prendre contact avec lui. Il est très sympa.

  • [^] # Re: Linux for desktop !!!

    Posté par  . En réponse au journal des paquets Snaps dans Ubuntu. Évalué à 5.

    L'incompréhension est là : une distribution n'est pas au service des développeurs, mais de ses utilisateurs.

    "Mr l'utilisateur, Nous sommes à votre service. C'est pour ça que vous devrez attendre 3 ans avant d'avoir la dernière version
    de votre logiciel préféré. Mais on le fait pour votre bien, pour colmater les trous de sécurité au plus vite qu'on vous dit.
    Accessoirement, toujours pour votre bien, nous décidons de ce qui est bien. Vous ne pourrez pas tester ce petit logiciel qui vous fait tant envie parce qu'il n'est pas packagé par nos soins. Si vous n'êtes pas content demerden sie sich et compilez en statique comme un grand. Mais pour votre "securité"/"bien", on ne veut surtout pas ouvrir le truc"

    J'ai déjà entendu ce discours, je ne me souviens plus où, mais ça devait être du coté des logiciels "privateurs".

    Mon petit message perso:
    Welcome Ubuntu Snaps

  • # Lanceur d'alerte: double peine

    Posté par  . En réponse au journal Monde de merde. Évalué à 10.

  • [^] # Re: Ironie ... panaméenne

    Posté par  . En réponse au journal Monde de merde. Évalué à 8.

    Et le tweet du jour pour terminer en beauté:

    Dantesque …
    https://twitter.com/SocieteGenerale/status/717448652004966400

  • [^] # Re: Ironie ... panaméenne

    Posté par  . En réponse au journal Monde de merde. Évalué à 3.

    Ne pas pouvoir leur donner tort, ne signifie pas que je considère leur action légitime. Merci de ne pas confondre.

    Et visiblement, cette rhétorique sert bien les libéraux aussi (commentaires affligeants inclus):
    http://www.contrepoints.org/2016/04/05/245745-panama-papers-le-vrai-danger-cest-la-confusion

    On voit poindre aussi les conspirationnistes qui décèlent un coup monté des US.

    Chips !!!!!

  • # Ironie ... panaméenne

    Posté par  . En réponse au journal Monde de merde. Évalué à 1.

    J'adore la réthorique du responsable panaméen sur le reportage de France 2:

    Notre activité est légitime simplement parce que des sociétés parfaitement clean ont besoin de notre service.
    Cette réthorique hypocrite me rappelle celle utilisée pour justifier les réseaux P2P, TOR & Co.
    Si on reste cohérent, on ne peut pas leur donner tort.

  • [^] # Re: Je n'arrive pas à voir ce qui est de gauche chez Hollande...

    Posté par  . En réponse au journal [HS] Déchéance de nationalité et constitutionnalisation de l'état d'urgence bronsonisés. Évalué à 4. Dernière modification le 01 avril 2016 à 08:28.

    Dit-il.
    Après avoir posté un journal sur la politique.

  • [^] # Re: RIP

    Posté par  . En réponse au journal Bash dans Windows. Évalué à 4.

    Ah ouais, on peut aussi utiliser des pipes avec Spotlight ?
    Tu me montres ?

  • [^] # Re: RIP

    Posté par  . En réponse au journal Bash dans Windows. Évalué à 3.

    Oui, c'est sûr que find est vraiment l'argument clef qui va faire basculer les gens d'OS X à Windows :)

    Je n'ai rien affirmé de cela.
    J'ai juste appuyé le fait que le shell est assez rudimentaire de base.

    (sinon, je ne m'étais jamais rendu compte qu'installer une autre version de Python était plus compliquée que de télécharger le .dmg et de cliquer quelques fois sur OK)

    Grand bien t'en fasse. Moi cette page que j'ai pointé m'a été très utile au début.
    Mais le mieux est encore de passer par brew qui te permet en plus d'installer tout le nécessaire, y compris le coreutils, binutils, …

  • [^] # Re: Question

    Posté par  . En réponse au journal Bash dans Windows. Évalué à 3.

    Marrant,
    Jamais été foutu de faire marcher ma vielle imprimante Canon avec Windows 10 et avec mon Mac, ca marche out of the box.

  • [^] # Re: RIP

    Posté par  . En réponse au journal Bash dans Windows. Évalué à 4.

    Au hasard, en ne supportant pas le gnu find de base et à t'obliger à écrire ça:

    find . ( -name ".doc" -or -name ".pdf" -or -name ".epub" -or -name ".mmobi" -or -name "*.html" ) -printf '%f\n'

    au lieu d'une version plus condensée qui permet d'utiliser les regex comme celle-ci:

    find . -regextype posix-egrep -iregex '.*.(doc|pdf|epub|mobi|html)$' -printf '%f\n'

    Ou encore t'installer de base une version de python et à t'obliger à faire des contorsions pour installer ta propre version;
    https://wolfpaulus.com/journal/mac/installing_python_osx/

  • [^] # Re: ce sera rétro compatible ce truc ?

    Posté par  . En réponse au journal Bash dans Windows. Évalué à 4.

    Ah mais j'ai pas contesté le fait que depuis, powershell a fait son trou et rendu caquque le bousin.
    Mais crois-moi ce truc a rendu bien des services.

  • [^] # Re: Karma négatif et comptes multiples

    Posté par  . En réponse au journal Tableur de calcul pour auto-entrepreneur 2016. Évalué à 4.

    Un ami, te dira la vérité sans chercher à t'humilier, sans vouloir se rehausser en te méprisant. Ce que tu décris est juste un pauvre gars qui souffre d'un complexe d'infériorité refoulé mais n'est pas un ami.

  • [^] # Re: ce sera rétro compatible ce truc ?

    Posté par  . En réponse au journal Bash dans Windows. Évalué à -2.

    Quand même je me suis demandé comment travaillait les admins windows avant l'arrivé de powershell et winrm. A coups d'autohotkeys/ftp/telnet ? Ou ptet qu'ils installaient cygwin…. :=)

    Tu m'as l'air d'être un sacré bout-en-train toi.

    Pour la peine, je vais te confier un secret mais ne le répète à personne…
    Un script ca s'écrit avec un vrai langage … de script
    https://sourceforge.net/projects/pywin32/

    Il parait même que c'est ce qui a tué ce bon vieux Perl, au grand dam des linuxiens.

  • [^] # Re: Grand symbole

    Posté par  . En réponse au journal [HS] Déchéance de nationalité et constitutionnalisation de l'état d'urgence bronsonisés. Évalué à 2.

    Clair.
    Mais bon, la petite séance de grognements de singe à l'assemblée, en a fait une martyre.
    Et faut avouer que perso, je ne comprends pas que nos "représentants" qui se sont livrés à de telles "simagrées" soient encore en place.
    Encore une belle image de cette démocratie représentative.

  • [^] # Re: {{pas clair}}

    Posté par  . En réponse au journal [HS] Déchéance de nationalité et constitutionnalisation de l'état d'urgence bronsonisés. Évalué à 4.

    Etre "mou" (essayer de faire plaisir à tout le monde) a bien fonctionné en secrétaire de son parti, mais n'arrive pas être un président de la république qui doit faire autrement qu'essayer d'appliquer ce qui a fonctionné dans son parti. Et ça fait mal…

    Je la note, pour la prochaine fois que tu nous sortiras qu'il faut faire des compromis pour l'Europe, que l'unanimité vaut mieux que la "dictature" de la majorité ou encore que tu critiques la position des "selfish" anglais.
    Fidèle à toi même. Arguments contraires à toutes les sauces pour peu que ca suive tes idées.

  • # Pourtant les compromis

    Posté par  . En réponse au journal [HS] Déchéance de nationalité et constitutionnalisation de l'état d'urgence bronsonisés. Évalué à 2.

    c'est ton credo … Non ?

    TCE, democratie représentative, …

  • [^] # Re: WebAssembly

    Posté par  . En réponse à la dépêche Firefox 45 ESR et autres actualités mozilliennes. Évalué à 2.

    Il reste Java Webstart… Quelqu'un s'en sert ?

    Oui.
    Ils essaient de nous refiler ça dans ma boîte.
    http://www.xqual.fr/
    Outre que c'est moche, que ça ressemble à un clickodrome des années 80, ça se lance en Webstart.
    T'imagines un peu ?

  • [^] # Re: Noyau NT

    Posté par  . En réponse à la dépêche ReactOS 0.4.0. Évalué à 2.

    Au hasard:

    WindwOS

  • [^] # Re: Show me the code

    Posté par  . En réponse au journal L’homme orchestre, partie 2 : écrire du code (en Java). Évalué à 4.

    Pour les détails de l'architecture et tous les détails techniques, ça viendra. Ce n'est pas ma priorité,

    Ceci entre en contradiction avec cela:

    Mais pas forcément quand vous devez construire une grosse application. Vous devez avoir un coup d’avance sur ce que vous allez peut-être avoir besoin, et le prévoir en amont.

    L'architecture ça se résume à ca: Réfléchir … un peu… avant de te lancer. Les mauvais choix d'aujourd'hui sont le temps perdu de demain. La fameuse dette technique que tu évoques.

    Je vais à nouveau essayer de t'illustrer en quoi il est utile d'apprendre contrairement à que tu as écrit en gros:

    Pas de temps à perdre à apprendre

    Prenons déjà le framework Play.
    Tu écris:

    Pour la partie ACLs/Utilisateurs, le code que tu montre est un code écrit juste pour que ça marche. C'est un vieux code qui sera refait totalement. Je n'utiliserais plus le moteur de Play pour accéder aux données, et donc plus besoin du Model de Play.

    Play était-il le bon choix pour ton besoin ? Il semble que non. A présent que devras tu casser pour réécrire les fonctionnalités équivalentes ?
    Déjà certains de tes contrôleurs embarquent de la logique de persistance. Play par simplicité encourage à embarquer toute ta logique de persistance en même temps que ta logique métier (le comme ici :

        public static CrudOrmEngine<UserProfile> getORMEngine(String key) throws Exception {
            UserProfile userprofile = new UserProfile();
            CrudOrmEngine<UserProfile> engine = new CrudOrmEngine<UserProfile>(userprofile);
            if (engine.exists(key)) {
                userprofile = engine.read(key);
            } else {
                userprofile = engine.create();
                userprofile.key = key;
                engine.saveInternalElement();
            }
            return engine;
        }

    N'eut t'il pas été préférable de les séparer ces 2 aspects (par exemple en utilisant des DAOs) et de les isoler dans 2 couches sans tout disséminer y compris dans les contrôleurs. Car à présent le passage vers un autre framework va t'obliger a tout réécrire ou à créer une couche d'abstraction pour rediriger tous tes appels aux méthodes CRUD de Play. Comment cela se passera t'il si finalement Cassandra ne fait plus l'affaire et que tu veuilles partir sur du Mongo ? Comment t'assureras tu que tu fonctionnes correctement alors que tu n'as aucun test ?
    Imagine que le départ tu aies conçu ton architecture avec juste des classes métiers (celles qui traiteraient de Médias, de répertoires et de métadata pas d'ACLs) de simples POJO et que tu aies séparé la persistence.
    Le travail ne serait-il pas plus simple. Au départ tu te concentres que sur ça et comme tu ne peux pas tester ton appli dans son ensemble que tu n'as pas de GUI ou de CLI, tu écris quelques tests pour valider tes "itérations" comme tu les appelles. Bienvenu dans le monde du TDD.
    De plus de ce que je vois de Play, il s'agit d'un framework basé sur l'héritage ("extends Model"). Il t'oblige à surcharger ou à utiliser ses méthodes par héritage. Tu es donc fortement couplé à lui et il me parait intrusif.
    Pour des problématiques techniques transverses tel que la persistence (ou même le logging que tu réécrit from scratch) il existe la programmation par aspect qui vient en complément et un framework comme Spring MVC me parait plus adapté.

    Toujours pas convaincu du fait que l'architecture (qui inclue la testabilité) et la conception se concoivent au fil de l'eau et pas après ?

    Prenons cette fois-ci cette classe MetadataCenter que tu m'a explicitée.

    Quand a MetadataCenter, c'est un point de départ pour instancier les moteurs d'analyse et de génération de bas débits. Le nom n'est peut-être pas le meilleur, j'avoue, mais cette classe à beaucoup changée au cours du temps.

    Lorsque je vois des switchs partout ou des bouts de code de ce genre:
    ```java
    try {
    addProvider(new ImageMagickAnalyser());

            addProvider(new FFprobeAnalyser());
            addProvider(new FFmpegInterlacingDetection());
            addProvider(new FFmpegSnapshot());
            addProvider(new FFmpegAlbumartwork());
    
            addProvider(new ImageMagickThumbnailer(FullDisplay.class, PreviewType.full_size_thumbnail, FullDisplay.profile_name));
            addProvider(new ImageMagickThumbnailer(Cartridge.class, PreviewType.cartridge_thumbnail, Cartridge.profile_name));
            addProvider(new ImageMagickThumbnailer(Icon.class, PreviewType.icon_thumbnail, Icon.profile_name));
            addProvider(new ImageMagickFFmpegThumbnailer(FullDisplay.class, PreviewType.full_size_thumbnail, FullDisplay.profile_name));
            addProvider(new ImageMagickFFmpegThumbnailer(Cartridge.class, PreviewType.cartridge_thumbnail, Cartridge.profile_name));
            addProvider(new ImageMagickFFmpegThumbnailer(Icon.class, PreviewType.icon_thumbnail, Icon.profile_name));
    
            addProvider(new FFmpegLowresRenderer(JobContextFFmpegLowresRendererLQ.class, PreviewType.video_lq_pvw, false));
            addProvider(new FFmpegLowresRenderer(JobContextFFmpegLowresRendererSD.class, PreviewType.video_sd_pvw, false));
            addProvider(new FFmpegLowresRenderer(JobContextFFmpegLowresRendererHD.class, PreviewType.video_hd_pvw, false));
            addProvider(new FFmpegLowresRenderer(JobContextFFmpegLowresRendererAudio.class, PreviewType.audio_pvw, true));
        } catch (Exception e) {
            Loggers.Metadata.error("Can't instanciate Providers", e);
        }
    }
    
    Ca m'évoque ce qu'on  appelle un "code smell" et j'ai envie de sortir tout ça pour en faire quelque chose de plus souple qui évitera de modifier mon code à chaque fois que je veux rajouter un provider  et faire en sorte que cette classe ne "change" pas au cours du temps comme ici:
    https://github.com/hdsdi3g/MyDMAM/commit/bb024c2f1aa8f7f994be38ea740c7bf7feae3534#diff-dbab17a2baa241511ef42fd413ac083c
    J'imagine que tout ces providers sont appellés par un comportement quelquepart, peut-être déjà regroupés dans un interface ou alors peut-être que tu es obligé de modifier ton code à plein d'endroits.
    Je soupçonne que ceci se prêterait bien à une Factory: http://www.jmdoudoux.fr/java/dej/chap-design-patterns.htm
    
    Revoici encore l'intérêt principal du paradigme objet. En réunissant code et données au même endroit, en usant du polymorphisme, tu n'as besoin de le changer qu'à un endroit.
    
    Apprendre la technique est très bien mais la théorie aussi a du bon.