Premièrement, j'aimerais rappeler que bon nombre de logiciels libres sont souvent des "clones" de logiciels privateurs, ou implémentent des spécifications non moins privatrices.
Un exemple bien connu étant le projet GNU, GNU s'est inspiré d'Unix, le but étant de préserver une intéropérabilité avec l'existant, de faciliter le portage de logiciels (souvent de très bonne qualité), d'attirer les développeurs. Et GNU a réussi cela en apportant ses propres améliorations et en évitant le piège de la bête imitation. Les boites derrière les Unix propriétaires dans les années 80 n'étaient pas plus tendre que le Microsoft d'aujourd'hui.
Mono/Moonlight a pour but d'implémenter certes des technologies Microsoft qui sont reconnaissons-le pas mal chiadés. Oui, Mono/Moonlight est légérement à la traine derrière l'implémentation de Microsoft [1] mais Mono ne se limite pas à "copier" .Net. Il y a d'abord les bibliothèques spécifiques qui permettent qu'on puisse écrire une application parfaitement intégré aux environnements GNOME, OS X (et bientôt KDE via Qyoto), d'autres qui n'ont aucun équivalent dans le framework .Net (MonoTorrent, Mono.Simd, etc ...). Mono va également nettement plus loin que .Net grâce à son côté multiplateforme.
Il explose au niveau de l'embarqué (notamment sur iPhone grâce à la possibilité de compiler en natif), dans le domaine ludique (Second Life, des jeux sur Wii, etc ...), pour du développement multiplateforme ou spécifique, il est est plus attractif que .Net
Bref, Mono a fait ses preuves en tant que plateforme indépendamment de .Net, la compatibilité avec celui-ci étant surtout un bonus. Mono offre des outils pour faciliter le portage des applications (l'excellent Gendarme), ça encourage les développeurs à s'intéresser aux plateformes libres.
Quant à Moonlight, il ne se limite pas à une bête implémentation de Silverlight, il a même été conçu pour être utilisable en dehors de Mono comme l'a souligné l'auteur de la dépêche. On peut l'utiliser dans une application Gtk+ indépendamment de Mono, les deloppeurs de Novell ont même écrits un petit framework permettant l'écriture de desklets. http://tirania.org/blog/archive/2008/Apr-17.html
Reste le problème des brevets logiciels.
D'un côté, Microsoft collabore activement avec l'équipe Mono (même avant l'infâme accord avec Novell), de l'autre, ils entretiennent une certaine confusion autour de Mono.
Sans rentrer dans les détails, Mono (et bon nombre de projets libres dont le noyau Linux) est protégé par le consortium OIN qui dispose d'un portefeuille de brevets conséquents. Microsoft n'a clairement pas intérêt à se frotter à OIN et leur stratégie consiste principalement à maintenir une longueur d'avance sur Mono.
Après, reste à éclaircir le cas de Moonlight, est-il protégé par OIN ? est-il librement implémentable ? Quel est la légalité de l'utilisation des codecs microsoft ? y-a-t-il une alternative[2] ?
En tant que framework RIA, Moonlight me laisse dubitatif, d'une part il y a des technologies standards qui n'attendent qu'un peu d'amour (html5, svg, etc ...), de l'autre, un marché fortement concurrentiel flex+flash (supaire -_-), JavaFX (pas encore libéré ?), un silverlight bardé de DRMs (et une politique Microsoft mal définie vis à vis de Moonlight).
En revanche, c'est une technologie relativement sympa sur le bureau et la créativité des développeurs réussira surement à lui donner une place.
Avant de troller, attendons de voir comment évoluera la situation (et Moonlight) !
[1] Ce n'est pas systèmatiquement le cas, si je me souviens bien, Mono avait implémenté les generics avant Microsoft. Le modèle bazar de Mono lui permettant d'être un poil plus réactif que la cathédrale de Microsoft qui compense le fait que Mono c'est une dizaine de développeurs à temps pleins, .Net c'est probablement 10 à 50 fois plus.
[2] la réponse rapide est oui, Moonlight utilisait ffmpeg à ses débuts mais Novell n'a pas le droit de redistribuer Moonlight + ffmpeg. Je ne me suis pas penché sur la question, mais il semblerait que cette possibilité ait été conservée dans le code de Moonlight. http://tirania.org/blog/archive/2007/Sep-05.html
# Le sage montre la lune et l'idiot regarde le doigt
Posté par GeneralZod . En réponse à la dépêche Sortie de Moonlight 1.0. Évalué à 4.
Un exemple bien connu étant le projet GNU, GNU s'est inspiré d'Unix, le but étant de préserver une intéropérabilité avec l'existant, de faciliter le portage de logiciels (souvent de très bonne qualité), d'attirer les développeurs. Et GNU a réussi cela en apportant ses propres améliorations et en évitant le piège de la bête imitation. Les boites derrière les Unix propriétaires dans les années 80 n'étaient pas plus tendre que le Microsoft d'aujourd'hui.
Mono/Moonlight a pour but d'implémenter certes des technologies Microsoft qui sont reconnaissons-le pas mal chiadés. Oui, Mono/Moonlight est légérement à la traine derrière l'implémentation de Microsoft [1] mais Mono ne se limite pas à "copier" .Net. Il y a d'abord les bibliothèques spécifiques qui permettent qu'on puisse écrire une application parfaitement intégré aux environnements GNOME, OS X (et bientôt KDE via Qyoto), d'autres qui n'ont aucun équivalent dans le framework .Net (MonoTorrent, Mono.Simd, etc ...). Mono va également nettement plus loin que .Net grâce à son côté multiplateforme.
Il explose au niveau de l'embarqué (notamment sur iPhone grâce à la possibilité de compiler en natif), dans le domaine ludique (Second Life, des jeux sur Wii, etc ...), pour du développement multiplateforme ou spécifique, il est est plus attractif que .Net
Bref, Mono a fait ses preuves en tant que plateforme indépendamment de .Net, la compatibilité avec celui-ci étant surtout un bonus. Mono offre des outils pour faciliter le portage des applications (l'excellent Gendarme), ça encourage les développeurs à s'intéresser aux plateformes libres.
Quant à Moonlight, il ne se limite pas à une bête implémentation de Silverlight, il a même été conçu pour être utilisable en dehors de Mono comme l'a souligné l'auteur de la dépêche. On peut l'utiliser dans une application Gtk+ indépendamment de Mono, les deloppeurs de Novell ont même écrits un petit framework permettant l'écriture de desklets.
http://tirania.org/blog/archive/2008/Apr-17.html
Reste le problème des brevets logiciels.
D'un côté, Microsoft collabore activement avec l'équipe Mono (même avant l'infâme accord avec Novell), de l'autre, ils entretiennent une certaine confusion autour de Mono.
Sans rentrer dans les détails, Mono (et bon nombre de projets libres dont le noyau Linux) est protégé par le consortium OIN qui dispose d'un portefeuille de brevets conséquents. Microsoft n'a clairement pas intérêt à se frotter à OIN et leur stratégie consiste principalement à maintenir une longueur d'avance sur Mono.
Après, reste à éclaircir le cas de Moonlight, est-il protégé par OIN ? est-il librement implémentable ? Quel est la légalité de l'utilisation des codecs microsoft ? y-a-t-il une alternative[2] ?
En tant que framework RIA, Moonlight me laisse dubitatif, d'une part il y a des technologies standards qui n'attendent qu'un peu d'amour (html5, svg, etc ...), de l'autre, un marché fortement concurrentiel flex+flash (supaire -_-), JavaFX (pas encore libéré ?), un silverlight bardé de DRMs (et une politique Microsoft mal définie vis à vis de Moonlight).
En revanche, c'est une technologie relativement sympa sur le bureau et la créativité des développeurs réussira surement à lui donner une place.
Avant de troller, attendons de voir comment évoluera la situation (et Moonlight) !
[1] Ce n'est pas systèmatiquement le cas, si je me souviens bien, Mono avait implémenté les generics avant Microsoft. Le modèle bazar de Mono lui permettant d'être un poil plus réactif que la cathédrale de Microsoft qui compense le fait que Mono c'est une dizaine de développeurs à temps pleins, .Net c'est probablement 10 à 50 fois plus.
[2] la réponse rapide est oui, Moonlight utilisait ffmpeg à ses débuts mais Novell n'a pas le droit de redistribuer Moonlight + ffmpeg. Je ne me suis pas penché sur la question, mais il semblerait que cette possibilité ait été conservée dans le code de Moonlight.
http://tirania.org/blog/archive/2007/Sep-05.html