Préambule
Edition de novembre de la rencontre ALT.NET Paris : nous étions une vingtaine pour cette nouvelle soirée, et une première pour moi, non par manque d’intérêt mais par manque de disponibilité jusqu’à présent. Avant de passer aux choses sérieuses, nous nous étions, pour une petite dizaine, donnés RDV au Comptoir de l’Arc, pour déguster quelques cocktails et faire connaissance avant de rentrer dans l’arène.
A 20 h, direction les locaux de Valtech, avenue Marceau, 5è étage, dans l’antre des geeks et des passionnés d’opensource et de .NET, comme quoi, mélanger les genres reste possible.
Parmi les participants, j’ai retenu les prénoms suivants : Jb Evain (Novell / Mono), Romain, Mathias, Cyril (tous trois de chez FastConnect), Gauthier (Logica), Raphael, Julien, Philippe, Sam, Nicolas, Rob (auteur de Foundations of F#), Denis, 4 consultants de chez Valtech.
Présentation de Jb Evain
Le sujet du jour était principalement sur Mono, Jb Evain nous a fait l’honneur, lors de son passage sur Paris, de nous parler de Mono. Jb a débuté par un exposé sous forme…d’une slide ou presque…son (impressionnant) CV
: a travaillé sur AspectDNG avec Thomas Gil (co-fondateur de dotnetguru), db4o, LINQ Expression Trees, Linq to db4o, auteur de Cecil, contributeur Mono depuis pas mal d’années, il est embauché par Novell en 2007 (quelle reconnaissance !). La suite de la rencontre fût une discussion ouverte et informelle entre experts du domaine.
Dit mono, dit sujets de bas niveau et pointus sur .NET et le langage C#, et forcément un peu éloigné de mon domaine d’application (ie : applis. Web & utilisateur de frameworks sous-jacents).
Je résumerais en ces acronymes ou termes plus ou moins abscons, entre compilation, tissage et exécution : compilateur, CIL, AST, DLR, SRE, PInvoke, AOP, Cecil (utilisé dans le programme Gendarme).
MoMA vous permettra de vérifier la compatibilité de vos assemblies avec Mono 2.0 (à tester d’urgence !). Quelques démos (sous une station Linux) ont été effectuées. J’ai retenu particulièrement l’usage de la commande csharp qui permet d’interpréter directement du C# dans une console.
Cela m’a rappelé par moment certains cours à l’université sur la compilation, où on y parlait Lex, Yacc, LR(1), LALR(1), BNF ou grammaire, arbre syntaxique, automate, intéressant en tout cas pour appréhender les méandres d’un compilateur, mais j’ai laissé ça aux passionnés du domaine
Mono : c’est quoi, pour qui ?
Mono, implémentation libre de .NET, est constituée par une équipe de 35 personnes, réparties aux 4 coins de la planète (dont Lyon donc).
Mono 2.0 implémente les spécifications C# 3.0, ASP.NET, Winforms, Linq. Pour ASP.NET, les Webparts ne sont pas supportées, ni WPF (peu de probabilités qu’il le soit un jour, en raison de l’adhérence avec DirectX) ou WCF (des gens y travaillent, mais pas l’équipe de Novell). Dans la sphère RIA, Moonlight 2.0 vous fera fonctionner une application Silverlight. Moonlight, vous savez, la 1ère mouture qui avait été développée en…21 jours, lors de Techdays (il y a 2 ans je crois).
Autre nouveauté : l’arrivée d’un débuggeur (!), et en cours d’élaboration, un plugin VStudio afin de déployer directement sur une station Linux des assemblies.
Une originalité : Mono utilise F# pour optimiser les generics.
Au niveau des méthodes, énormément de tests unitaires sont en place, via NUnit. Au niveau intégration continue, une solution maison a été mise en place par l’équipe Mono.
Quels utilisateurs actuels pour Mono ? quelles entreprises investissent sur ce projet ?
Parmi quelques noms retenus, on pourra parler en vrac de Fiducial (ASP.NET), Dekiwiki, une liste plus complète sur le site. Sur les usages de Mono, et ce qui peut paraître étonnant, c’est l’industrie des jeux qui commence à s’y intéresser, afin de scripter les comportements par exemple (d’habitude : en Lua ou Python). L’avantage est de pouvoir ainsi utiliser IronRuby, Boo, …et de facilement scripter leurs besoins. Unity ou Second life font tourner Mono pour leur usage.
Du côté de chez Microsoft, cela semble bouger…en bien, l’ouverture est à l’ordre du jour, dixit Jb E.. Cette ouverture, est principalement dû à la nomination de Scott Guthrie à la tête de .NET. On a pu le voir récemment avec l’annonce sur jQuery, et son support dans VStudio.
Conclusion
Très bonne expérience pour ma part. Cela reste toujours enthousiasment de rencontrer des gens passionnés (jeun’s et qui boivent de la bière…ou des cocktails à défaut) de tout horizon, sur des domaines assez différents du sien. Le sujet m’intéressait fortement, car si un jour, je pouvais concilier Linux et .NET, cela serait un très bon aboutissement. Egalement, je trouve que jusqu’à présent, sous Linux, il manque un langage de haut niveau de type C#, à part C ou C++…ou Java (mais je n’ai jamais réellement adhéré). Cet apport ne peut être que positif pour capter des utilisateurs supplémentaires sur cette plateforme, Mono en donne en tout cas l’opportunité.
La date prévisionnelle de la prochaine rencontre est le mardi 2 décembre, et le sujet : DDD, ça tombe bien, je me pose des questions existentielles sur ce sujet : c’est quoi exactement, la mise en pratique, …
Ressources :
Quelques photos de la rencontre, remarquez les pizzzzzzzas offertes par Valtech, et bien sûr, les geeks.
La vidéo de Miguel à la PDC et les slides.
Enfin, retrouvez le portail de ALT.NET Paris.