Nicolas Boulay a écrit 16010 commentaires

  • [^] # Re: Vrai problème

    Posté par  (site web personnel) . En réponse au journal Logiciel libre, art libre et clause "NC". Évalué à 0.

    Tu n'as rien compris à la GPL, tu essayes de coller dessus ta conception du monde et cela fait juste une grosse bouillis indigeste.

    La GPL est centré sur l'utilisateur, à l'inverse de toutes les licences qui sont centré sur l'auteur. Elle donne plus de droit que les licences habituelles dans le but de laisser le contrôle à l'utilisateur sur ses données et sa vie (usage sans restriction, adaptation à ses besoins, etc…). Le reste est un corolaire de tout cela.

    "La première sécurité est la liberté"

  • [^] # Re: HS

    Posté par  (site web personnel) . En réponse au journal Logiciel libre, art libre et clause "NC". Évalué à 2.

    Je sais, c'est aussi pour cela que j'ai ajouté "rapide" comme adjectif.

    "La première sécurité est la liberté"

  • [^] # Re: exception

    Posté par  (site web personnel) . En réponse au journal Quelle licence pour une application libre avec possibilité d'hébergement payant ?. Évalué à 2.

    La "linking exception" à l'avantage de prendre en compte une liste de composant acceptant une liaison vers du code propriétaire. Cela évite la complexité de gestion des modules proprio, comme pour linux (module externe toléré, si code utile ailleurs mais avec des "api GPL only").

    "La première sécurité est la liberté"

  • [^] # Re: HS

    Posté par  (site web personnel) . En réponse au journal Logiciel libre, art libre et clause "NC". Évalué à 3.

    Si les tribunaux n'étaient pas encombrés comme ils le sont, ce serait bien plus rapide.

    Pas seulement, il y a la trêve hivernal, le fait qu'un enfant en bas age est inexpugnable, les recourt….

    Si au moins, il était possible d'avoir une saisie rapide sur le compte en banque, parce que des mauvais payeurs, qui ont de l'argent, cela existe beaucoup plus que l'on ne le croit.

    "La première sécurité est la liberté"

  • # exception

    Posté par  (site web personnel) . En réponse au journal Quelle licence pour une application libre avec possibilité d'hébergement payant ?. Évalué à 4.

    J'aurais tendance à dire que vous voulez faire de la LGPL en fait.

    De mémoire, il existe 2 projets GPL avec des exceptions pour pouvoir faire ce que l'on veut avec une liste d'interface déclaré : eCos, et la lib runtime de gcc (celle lié à tous les binaires pas la libc).

    https://en.wikipedia.org/wiki/GPL_linking_exception

    La LGPL est plus contraignante car elle impose que l'on puisse remplacer le code de lib, par une nouvelle version par exemple. Il est ainsi impossible de faire une lib statique.

    La GPL exclue les libraries système de son champ d'application, vous pouvez aussi peut-être partir de là, en partant du principe que votre framework est une sorte de système (un peu comme le noyau linux et ses applications user).

    "La première sécurité est la liberté"

  • [^] # Re: Légèreté --> langage interprété ? (Python ici)

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 2.

    tu peux avoir les 2, sans héritage du tout (type somme, polymorphisme).

    "La première sécurité est la liberté"

  • [^] # Re: Vrai problème

    Posté par  (site web personnel) . En réponse au journal Logiciel libre, art libre et clause "NC". Évalué à 2.

    Disons que c'est un bon exemple de définir l'entité commercial.

    "La première sécurité est la liberté"

  • [^] # Re: Vrai problème

    Posté par  (site web personnel) . En réponse au journal Logiciel libre, art libre et clause "NC". Évalué à 2.

    C'est un moyen astucieux et précis, je trouve. cf l'article d'origine.

    "La première sécurité est la liberté"

  • [^] # Re: morale, commerce etc.

    Posté par  (site web personnel) . En réponse au journal Logiciel libre, art libre et clause "NC". Évalué à 2.

    Je ne suis pas sûr que la clause "SA" se propage. C'est un travail dérivé, mais on ne peut pas vraiment dire que la pub n'a plus de sens sans l'image ajouté. Le travail dérivé au sens de la loi sur le droit d'auteur, c'est les adaptations, la représentation de pièce, les traductions. On commence à être franchement loin, avec la réutilisation de pub avec clause CC-SA.

    "La première sécurité est la liberté"

  • [^] # Re: Vrai problème

    Posté par  (site web personnel) . En réponse au journal Logiciel libre, art libre et clause "NC". Évalué à 4. Dernière modification le 21 novembre 2012 à 11:50.

    Sachant qu'en plus les licences à diffusion libre, sont adapté à l'absence "d'amélioration" que pourrait apporter des utilisateurs, qui deviennent alors de simple consommateur. Si l'entreprise doit payé pourquoi pas.

    http://owni.fr/2012/11/09/les-licences-libres-aux-portes-de-la-revolution/

    Peer Production Licence redéfinit la clause Non-Commerciale de cette façon :
    c. Vous pouvez exercer les droits qui vous sont conférés à des fins commerciales seulement si :

    i. Vous êtes une entreprise ou une coopérative dont la propriété appartient aux travailleurs (workerowned) ; et

    ii. Tous les gains financiers, surplus, profits et bénéfices générés par la société ou la coopérative sont redistribués aux travailleurs.

    d. Tout usage par une société dont la propriété et la gouvernance sont privées et dont le but est de générer du profit à partir du travail d’employés rémunérés sous forme de salaires est interdit par cette licence.

    Je serais curieux de savoir si wikipedia serait inclus ou pas.

    Par contre, il reste toujours le problème d'aller joindre n auteurs en cas d'usage commercial, par exemple pour faire des samples de morceaux de musique.

    "La première sécurité est la liberté"

  • [^] # Re: Légèreté --> langage interprété ? (Python ici)

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 2.

    Oui mais tu peux faire la même chose différemment. De mémoire, c'est pour faciliter la stringification, l'allocation mémoire voir l'introspection.

    "La première sécurité est la liberté"

  • [^] # Re: Méthodes de développement

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 2.

    Le gain ne font jamais sur ce genre de détail. Ils se font sur les tailles gigantesques des piles d'appel virtuel que l'on peut voir en java. Sur l'inlining de code et notamment des getter/setter qui sont une catastrophe de performance en java. Sur le passage par valeur de structure (!), d'allocation/désalocation mémoire dans une boucle interne. Et je ne parle pas de l'usage de container sous optimal en C, car il n 'existe pas de structure de donné dynamique native.

    Ils peuvent aussi se faire, sur l'absence de maitrise des interactions réseau qui sont planqués derrière une api (qui se soucis de minimiser les "round-trip"). Le code est rapide sur la machine de dev, mais devient très lent une fois déployé sur un serveur et un client, avec des données de tailles conséquentes (j'ai beaucoup aimer une application web qui générait à chaque appel, des chiffres sous formes d'image png).

    (tsss la modif ne fonctionne pas avec un verrou mais avec un timeout !!!!)

    "La première sécurité est la liberté"

  • [^] # Re: Méthodes de développement

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 2.

    Tous les compilo transforment des short et des char en int quand ils sont manipulé directement (pas dans un tableau par exemple). C'est évident si on joue avec des shift. (chat c = 0XFF; char c2 = c << 8; printf("%i", c2>>8);)

    "La première sécurité est la liberté"

  • [^] # Re: Légèreté --> langage interprété ? (Python ici)

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 3.

    D'ailleurs, je serais curieux de voir un langage objet sans héritage, qui ne sert quasiment jamais (90% du temps, c'est de l'inclusion de faignant), mais qui interdit le polymorphisme et/ou l'inférence de type.

    "La première sécurité est la liberté"

  • [^] # Re: Il ne faut pas confondre l'innovation et le progrès.

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 8.

    Langages de programmation fonctionnel ne veut pas dire forcément langage formel prouvable. On ne peut pas tout "prouver" en ocaml.

    De plus, la "preuve" concerne un théorème qui correspond à un point de spec, il peut y avoir des oublis ou quelques choses de mal définis. Même un langage "à preuve" ne sera pas sans bug. Et puis dans la pratique, les "prouveurs" automatiques ne passent pas à l'échelle.

    "La première sécurité est la liberté"

  • [^] # Re: Il ne faut pas confondre l'innovation et le progrès.

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 6.

    " les langages de programmations fonctionnels sont en parti conçus pour pouvoir démontrer mathématiquement que le programme fonctionne sans bugs."

    non, ils ne font que détruire les classe de bug lié à la gestion de la mémoire ou les pointeurs nuls. C'est énorme mais pas encore suffisant.

    "Si c'est un ordinateur déconnecté du réseau ce n'est pas trop un problème. Et peut-être qu'une faille d'un logiciel qui fonctionne sans utiliser le réseau, et qui n'est pas spécialement connu (donc pas beaucoup de monde pour chercher les failles) ne me gêne pas."

    Les fabricants de matos industriels pensaient comme ça aussi. Maintenant, tout est mis en réseau, et un grand nombre de ligne de production sont de vrai passoire.

    "La première sécurité est la liberté"

  • [^] # Re: Il ne faut pas confondre l'innovation et le progrès.

    Posté par  (site web personnel) . En réponse au journal De l'inéluctable progrès de l'informatique, ou pas.. Évalué à 1.

    D'après un bouquin d'architecture d'ordinateur célèbre dont j'ai oublié le nom, une machine balancé a 1 Mo, pour 1 Mips et 1 Mbps d'IO. Aujourd'hui, on est à 8 Go de RAM, 4*6Gips et 1gbps ethernet (maxi) + 200Mo/s vers un disque (500 sur SSD).

    Les cpu ont bien plus progressé que le reste. Il suffit de voir une machine avec un SSD pour comprendre la différence de sensation de vitesse. Sur un ordinateur portable avec leur HD poussif, la différence est énorme (j'ai mis un SSD dans un EEE). On retrouve ce même genre de sensation lorsque la fonction fsync() de la machine est désactivé. Nombre de logiciel en abuse et cela a un impact énorme sur les performances des IO.

    "La première sécurité est la liberté"

  • [^] # Re: Utilité ?

    Posté par  (site web personnel) . En réponse à la dépêche Le Top 500 de novembre 2012. Évalué à 2.

    Ce que tu décris est plus un problème administratif et de scheduling, qu'un problème technique. Un gros centre de calcul peut aussi prévoir un machine plus petite alloué aux calculs rapides pour éviter d'attendre la disponibilité de la grosse machine (privilégier une latence faible vs un gros débit). Il peut aussi faire en sorte d'avoir plusieurs machines.

    En tout cas, c'est amusant de penser à l'allocation de temps de calcul sur plusieurs superordinateur, comme on pourrait penser au scheduling de cpu fait par un OS :)

    "La première sécurité est la liberté"

  • [^] # Re: Utilité ?

    Posté par  (site web personnel) . En réponse à la dépêche Le Top 500 de novembre 2012. Évalué à 2.

    Si le but est d'avoir le résultat le plus rapidement possible, tu utilises mieux tes ressources à avoir un serveur de la mort qui est blindé en permanence. Quand tu as besoin de ta machine tu as ton résultat en 24h au lieu de qq semaines.

    Il parait qu'il y a un paquet de cluster de machine qui n'ont quasiment pas servi faute de l'administration système qu'il faut avec (dans les université par exemple). L'argent aurait du rester dans la division dédié et l'université aurait pu louer son temps de calcul à la demande. Rien n’empêche d'avoir des clusters de 4 machines pour faire des tests de mise au point.

    "La première sécurité est la liberté"

  • [^] # Re: C'est quoi propre ?

    Posté par  (site web personnel) . En réponse au journal Du code propre, c'est quoi ?. Évalué à 2.

    1)
    Concernant les noms, je dirais même plus : il ne faut surtout pas être créatif, et utiliser le même mot même pour des objets de programmation différent. Par exemple en ocaml, l'espace des noms des type et des paramètres est séparé, il est donc souhaitable d'utiliser le même nom pour le type de la donné complexe et le paramètre des fonctions qui l'utilise.
    2)
    Pour la doc, il peut être souhaitable de maintenir à jour une spec en même temps que l'écriture du code et pointer sur les points de spec dans son code pour faire référence au niveau supérieur, cela évite de se noyer dans son code. Seul les points complexes ou non évident ont intérêt à être expliquer dans la doc.
    3)
    Une bonne métrique de la maintenabilité est le temps moyen de correction d'un bug (en gros <2h).
    4)
    C'est encore mieux si tes tests sont passées dans un outil de couverture de code, cela permet de voir ce qui a été oublié.

    "La première sécurité est la liberté"

  • [^] # Re: POO

    Posté par  (site web personnel) . En réponse au journal Du code propre, c'est quoi ?. Évalué à 2.

    Oui, mais tu peux normalement t'en sortir avec des patterns factory/proxy/visiteurs. A priori, l'aspect programming devient très complexe dés que plusieurs traits doivent fonctionner ensemble.

    "La première sécurité est la liberté"

  • [^] # Re: POO

    Posté par  (site web personnel) . En réponse au journal Du code propre, c'est quoi ?. Évalué à 2.

    Il me semblait que l'on pouvait faire les mêmes fonctionnalités de l'aspect avec de la simple programmation OO.

    "La première sécurité est la liberté"

  • [^] # Re: POO

    Posté par  (site web personnel) . En réponse au journal Du code propre, c'est quoi ?. Évalué à 1.

    D’où le fait de ne pas faire d'abstraction, tant que cela n'est pas nécessaire.

    Un code propre est un code ou l'on corrige n'importe quel bug en moins de 2h.

    "La première sécurité est la liberté"

  • [^] # Re: POO

    Posté par  (site web personnel) . En réponse au journal Du code propre, c'est quoi ?. Évalué à 2.

    Les méthodes agiles disent qu'il faut résister à l'envie du patch en bois et factoriser quand il le faut. Typiquement si ton projet est petit, il n'y a pas besoin d'avoir d'objet proxy, mais cela change avec le nombre d'objet concerné. Il y a quand même une règle qui dit que moins il y a de code, mieux on se porte. Les guideslines Linux ne sont pas mauvais sur le sujet.

    Pour faciliter la maintenance, il faut avoir du code simple, avec "changement atomique" ou au moins que cela ne compile plus en cas de changement multiple nécessaire. Il faut une arborescence claire entre module pour éviter de copier/coller du code pour éviter une dépendance circulaire, en général, cela signifie qu'un nouveau module doit être créer.

    "La première sécurité est la liberté"

  • [^] # Re: En vrac...

    Posté par  (site web personnel) . En réponse à la dépêche Le Top 500 de novembre 2012. Évalué à 4.

    50%, cela date de l'époque ou les rac de PC était dans des salles climatisé à 12°C.

    Il me semble que pour OVH, c'est 7% (watercooling + effet cheminé), par exemple.

    "La première sécurité est la liberté"