Dave McAllister, Adobe : « Notre intérêt pour .Net porte sur le côté serveur »
A l'occasion de MAX 2009, la conférence développeur d'Adobe, le patron des standards et de l'Open Source du groupe, Dave McAllister revient sur l'étendue des développements d'ActionScript, des travaux réalisés à l'Ecma, après l'échec d'EcmaScript 4. Il explique enfin comment le groupe compte s'y prendre pour attirer d'autres communautés de développeurs vers ses plate-formes.
LeMagIT : A quelles évolution travaillez-vous pour ActionScript?
Dave McAllister : ActionScript est un compileur just-in-time en C et constitue la base de la plate-forme Flash. En 2006, nous avons créé Tamarin, qui vise à confier la machine virtuelle à la fondation Mozilla.
Nous utilisons toujours cette version dérivée dans le Flash Player. 80% des développements de Tamarin sont effectués par les équipes d'ingénieurs d'Adobe. Et nous sommes très concentrés sur ces développements. Les travaux sur Javascript de Tamarin sont également repris par d'autres. Les projets SpiderMonkey et TraceMonkey repose aujourd'hui sur le moteur Javascript de Tamarin. Des projets qui permettent notamment d'accélérer les performances de Javascript.
Aujourd'hui, nos efforts sont focalisés à faire évoluer Actionscript vers une nouvelle génération. Nous travaillions à l'origine avec Ecma pour intégrer EcmaScript à Actionscript, mais nous nous sommes rendu compte que méler un langage de script avec un langage compilé n'avait pas de sens. Nous avons donc changé notre fusil d'épaule. Aujourd'hui, nous travaillons également à réduire la taille des lignes de code et une équipe d'ingénieur est entièrement dédiée à optimiser Actionscript et ses performances. Et dans mon monde Open Source, on remarque que SourceForge héberge plus de 300 projets actifs autour d'ActionScript et aucun d'eux n'est lié à des équipes internes à Adobe. Il y a des projets de librairies pour ActionScript, notamment. Si nous concentrons nos efforts sur Actionscript, Javascript fait également parti de nos priorités. Car AIR utilise Javascript de la même façon que Flash utilise ActionScript.
LeMagIT : Comment allez-vous répercuter l'arrêt des développements d'EcmaScript 4 par l'Ecma ?
Dave McAllister : ActionScript ne repose plus sur EcmaScript 4. EcmaScript 3 est devenu un standard en 1999, et le groupe de travail s'est arrêté de le développer. En 2004, Mozilla et Adobe ont relancé le groupe de travail au sein de l'Ecma avec à l'esprit, l'idée de fusionner les spécifications Actionscript que nous avions livré à l'époque et Javascript. Un grand nombre d'entreprises ont rallié le projet. Mais après plusieurs années de travail, il apparaissait évident que nous ne pourrions jamais trouver un consensus [parmi les groupes de travail, NDLR] sur les différentes fonctionnalités. Mozilla, Adobe, Microsoft et IBM ont donc, ensemble, décidé qu'un nouveau standard était complément inutile. Est alors né le projet Harmony qui inclus tous les changements incrémentaux sur EcmaScript depuis 1999 à 2009. Il s'agit dès lors d'un véritable EcmaScript 5 et il n'y aura pas d'EcmaScript 4. La première ébauche d'EcmaScript 5 devrait probablement être validée en décembre de cette année. Et à partir de cette date, nous commencerons à travailler sur la v6, avec notamment des extensions qui adresseront la problématique des applications Web riches et de leurs spécificités. Comment développer une application riche que vous ne pouvez pas développer en Flash, par exemple. Un autre aspect est la sécurité, car EcmaScript et Javascript, comme chacun le sait, sont vraiment trop peu sécurisés.
LeMagIT : Si aujourd'hui, la communauté Java semble la plus encline à adopter ActionScript, comment parvenez-vous à attirer d'autres communautés de développeurs?
Dave McAllister : ActionScript et MXML [le langage d'interface Flex, NDLR] sont Open Source et nous passons beaucoup de temps à regarder ce que font les autres communautés. Java est en effet celle qui fait le plus sens [notamment par la proximité des deux langages en termes de syntaxe, NDLR]. Et nous assistons à un regain d'intérêt en ce moment, depuis que Flex peut être considéré comme une alternative sur le marché. Car aujourd'hui, c'est la consistance de la plateforme qui fait la différence. Quand nous avons ouvert le SDK de Flex, nous avons vu le nombre de développeurs doubler tous les mois ! En 2008, nous totalisions quelques 15 000 downloads et installations du SDK par mois.
En ce qui concerne les autres plate-forme de développement, cela constitue également une priorité. Nous regardons du côté de .NET, mais pas à cause du langage en lui-même car il existe dejà des passerelles vers Javascript et Flex. En fait nous nous intéressons surtout aux aspects "Serveur". Plus précisemment, comment relier nos produits vers le serveur ? En ce sens, BlazeDS qui est une technologie Open Source de remoting et de messagerie côté serveur chez Adobe, constitue une bonne solution pour la communauté Open Source afin de créer un pont vers .NET et Mono. Nous passons également beaucoup de temps à regarder PHP, Spring, et l'environnement Zend.
LeMagIT : Où en est aujourd'hui le projet Alchemy, qui porte Flex vers le C ?
Dave McAllister : C'est un projet qui murie dans nos laboratoires sous forme de démo, pour laisser les développeurs s'en servir et voir comment ils réagissent. Mais il reste à savoir s'ils sont vraiment intéressés par son utilisation... Car pour le moment, les réactions sont mitigées. Si vous développez une application Flex d'abord, vous n'envisagez pas forcément C ou C++. Si vous écrivez du C ou C++ , vous n'aurez probablement pas envie que cela vienne de Flex. Cela reste cependant possible dans un modèle cross-compiler. Mais au final ce marché, aussi important soit-il, est très réduit.