Journal Microsoft ouvrirait le code du framework .net

Posté par .
Tags : aucun
0
3
oct.
2007
Selon le blog de Scott Guthrie ([http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-(...)]), Microsoft serait sur le point de publier les sources de son framework .Net sous licence Microsoft Reference License (MS-RL) ([http://www.microsoft.com/resources/sharedsource/licensingbas(...)]). D'après Open-source_license, cette licence n'est pas OpenSource (donc pas libre), mais Shared Source. C'est un progrès, mais il reste du chemin, surtout que les brevets sont encore là.
  • # Pratique pour mono

    Posté par (page perso) . Évalué à  -4 .

    Ça semble pratique pour mono, et donc faire un concurrent réellement libre.

    On va aussi voir si ce framework est si mal que ça.

    Envoyé depuis mon lapin.

    • [^] # Re: Pratique pour mono

      Posté par . Évalué à  4 .

      Je ne pense pas qu'ils aient le droit de repomper le code, ça ne changera rien pour eux. Ils avaient déjà les specs et l'accès aux framework de test et ils affirmaient que ça leur suffirait.
      • [^] # Re: Pratique pour mono

        Posté par (page perso) . Évalué à  10 .

        Surtout que ça me semble plus difficile d'écrire un fonction B équivalente à A sans en être une copie en ayant le droit de regarder comment A est écrite. Si jamais les codes sont très semblables mais n'ayant pas accès à A, on peut de toute bonne foi se dire "bah j 'ai pas copié car je n'y ai pas accès, mais c'est normal que ça ressemble parce que ça fait la même chose", mais là on peut dire "vous voyez, ils ont copié A pour faire B en changeant éventuellement 2, 3 petites choses.

        C'est un peu comme quand on se faisait interroger en classe, qu'on avait la bonne réponse et que pourtant quelqu'un pour faire son "je sais tout" répondais en premier sans qu'on ne lui ai rien demandé... bah on avait l'air de quelqu'un qui ne reprennait que la solution soufflée.

        On peut aussi imaginer le cas de fgure où on n'a pas encore réfléchi à la solution, mais on nous en souffle une. Deux cas de figure :
        - bah on utilise la solution souflée, après tout, s'en est une et on serait peut être arrivé à la même en réfléchissant par soit-même
        - il existe une autre solution et on se casse le cul à en trouver une autre alors que la première nous serait peut être venue aussi. D'autant plus que maintenant ça devient difficile de ne pas s'en inspirer. Pour ne pas passer pour un copieur, on se sent oblié de trouver la plus éloignée possible.
      • [^] # Re: Pratique pour mono

        Posté par . Évalué à  -1 .

        Ca doit quand même un peu aider pour ré-implémenter 100% du Framework, non ?
        • [^] # Re: Pratique pour mono

          Posté par . Évalué à  10 .

          ITS A TRAP !1!
        • [^] # Re: Pratique pour mono

          Posté par . Évalué à  3 .

          Techniquement oui. Juridiquement, ce serait la pire connerie à faire.
          La licence MS-RL n'est pas compatible avec les licences utilisés par Mono.
          Même si aujourd'hui Microsoft est de bonne foi vis à vis de Mono (ayons l'élégance de leur laisser le bénéfice du doute), rien ne prouve que ce sera le cas demain.
          Si du code Microsoft est intégré à Mono, ou bien qu'un contributeur a eu accès aux dites sources, Mono est foutu dans un éventuel procès.
          Déjà que la question des brevets reste litigieuse, (sans la protection de OIN, certaines distributions ne l'auraient jamais inclus), on va pas rajouter d'autres problèmes. Surtout que l'accès aux specs et aux frameworks de tests est largement suffisant.
          • [^] # Re: Pratique pour mono

            Posté par (page perso) . Évalué à  2 .

            Pour précision: l'OIN étant l'Open_invention_network http://www.openinventionnetwork.com/ dont la position sur les brevets est claire pour protéger Linux [http://www.openinventionnetwork.com/patents.php]

            Clairement, regarder le code doit être évité, au besoin il reste possible d'utiliser le en:Clean_room_design avec une personne pour regarder / spécifier ce qui manque et l'autre pour implémenter / coder (plutôt utilisé dans le cadre de la rétro-ingénierie [http://fr.wikipedia.org/wiki/R%C3%A9tro-ing%C3%A9nierie#R.C3(...)]).
            A une époque c'était pour Java que cela avait été appliqué : il était demandé que ceux souhaitant coder sur la JVM libre n'aient pas accepté la licence du JDK (qui avait, par exemple, une clause "abusive" empêchant de publier une JVM ne respectant pas l'intégralité de l'API).
          • [^] # Re: Pratique pour mono

            Posté par . Évalué à  4 .

            c/c :

            "Reference use" means use of the software within your company as a reference, in read only form, for the sole purposes of debugging your products, maintaining your products, or enhancing the interoperability of your products with the software, and specifically excludes the right to distribute the software outside of your company.

            alors... ça va t'aider à "mieux" faire marcher ton truc en C# ou autre, à t'apercevoir que tu avais pas forcément compris ou bien pesé l'impact de l'utilisation de telle ou telle classe, voir pourquoi ça marchait avant et plus maintenant, éventuellement à voir une boulette ou deux et à les remonter à Microsoft (mais la plupart ont été trouvées depuis longtemps).

            et c'est tout. pas le droit de te resservir de ce code ailleurs, en en copiant des bouts, ou de le corriger toi-même. c'est du code sale, contaminant au mauvais sens du terme, il t'oblige à te crever les yeux et à te laver le cerveau après usage.

            alors c'est quand même intéressant (si, si, c'est de l'information) mais c'est sans intérêt pour la plupart des personnes, inutilisable pour la plupart des codeurs Mono/C# hors Windows et même dangeureux : en théorie il faudrait passer maintenant tout code publié ailleurs dans une moulinette pour vérifier qu'il n'y a aucun risque qu'il ne ressemble même accidentellement à celui qui vient d'être publié par Microsoft (même et surtout si ce code - qui n'est que l'expression d'impératifs logiques - a été réinventé ailleurs)


            Miguel de Icaza en cause ici : http://tirania.org/blog/archive/2007/Oct-03.html
  • # progrès ?

    Posté par . Évalué à  10 .


    cette licence n'est pas OpenSource (donc pas libre), mais Shared Source. C'est un progrès, mais il reste du chemin, surtout que les brevets sont encore là.


    c'est un progrès pour la stratégie embrace , extend and extinguish oui :)
  • # Plusieurs choses

    Posté par (page perso) . Évalué à  9 .

    Bonsoir bonsoir,

    Plusieurs choses.

    Tout d'abord ce n'est pas l'intégralité du framework .net qui va être «ouvert», mais seulement les librairies, pas le runtime.

    Ensuite la licence choisie n'est effectivement pas libre du tout. Il n'est pas autorisé de modifier les sources, et donc encore moins de les redistribuer.

    En soit ce n'est pas une si énorme nouveauté, car Microsoft publiait déjà sous une variante de leur licence Shared Source le code du runtime et des classes de bases. Ici la nouveauté, c'est qu'ils «ouvrent» les librairies qui sont en dehors du scope des spécifications de l'ECMA. Comme ASP.NET, ADO.NET et autre.

    Comme le dit le journal, «c'est un progrès».

    Concernant Mono, c'est un peu plus délicat. Mono ne peut pas accepter de contributions provenant du code Microsoft. Donc ça pose un problème de vérification des contributions. Il y avait déjà le soucis de la décompilation, des gens parfois soumettaient des patchs provenant de sources décompilées, mais en général ça restait visible. Ici ça va être un peu plus difficile à vérifier (mais pas impossible non plus).

    Bon, rajoutons ça à la suite de l'ouverture d'IronPython et d'IronRuby sous MS-PL (proche MIT). Intéressant/
  • # Pas très utile

    Posté par . Évalué à  3 .

    Je ne vois pas trop ce que ça va apporter. Pour voir le code source du framework, rien de plus facile : Il suffit d'utiliser le reflector. Les binaires du framework n'étant pas du tout obscurcis, on peut se balader dans le code source C# et/ou VB de tout ce qu'on veut. Tous ceux qui font du .Net sont passés par là. Il y a pas mal de mécanismes non documenté dans le framework alors quand on ne comprends pas ce qui se passe, le reflector est bien pratique. Bien sur, on a rien le droit de faire avec le code désassemblé mais c'est pareil avec la license de Microsoft : On regarde mais on ne touche pas. Si c'était pour faire ça, ce n'était pas la peine. Merci, on a déjà vu tout ce qu'il y avait à voir.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.