Mokona Guu Center

La compilation sur navigateur Web

Publié le

Cela s'appelle MetaCoding1 et ce site vient d'ouvrir. Il offre, sur votre navigateur, un IDE supportant quelques langages de programmation (C++, C#, Java, PHP et d'autres), permet de compiler un projet et de le récupérer.

C'est fun, mais à quoi cela peut-il bien servir ?

C'est la question qui, à l'annonce de l'ouverture du site, a majoritairement été posée. MetaCoding a d'ailleurs ouvert un blog pour expliquer la démarche : MetaCoding a vocation de permettre à des débutants d'accéder à un environnement de programmation en ligne (donc sans installer autre chose qu'un navigateur) et gratuit (du moins l'est-il pour le moment).

En page principale, l'argument est que l'on peut programmer son projet de partout. Je pense que si quelqu'un a le besoin de programmer d'où il veut, il aura sur lui un ordinateur portable, mais soit : imaginons que je suis en voyage, j'ai un truc en tête, je n'ai pas pris de quoi programmer, je vais sur l'ordinateur en accès libre de la mairie ou de l'hôtel et là, hop, je me connecte et je peux assouvir mon envie.

Pas convaincu. À première vue, cela me semble donc plutôt être un exercice de style, une démonstration technique (réussie !) que quelque chose de bien utile au programmeur.

Reste l'argument du débutant, auquel je pourrais ajouter l'argument de l'aide en ligne.

Pour le débutant, un avantage certain : l'utilisation d'un environnement très simple, sans installation complexe au vocabulaire souvent hermétique, et la possibilité de documents d'aide simples. Pourquoi pas.

Pour l'aide en ligne, je verrais bien la possibilité d'utiliser la plateforme conjointement ou à la place d'un « wall » (site comme Nopaste (lien cassé) qui permet de montrer à quelqu'un un petit bout de code). Cela serait encore plus pratique si l'on pouvait partager des projets ou travailler de manière collaborative. Je n'ai malheureusement pas trouvé cette fonction sur MetaCoding. Un développement à venir peut-être ?

Voici d'autres points que j'ai pu noter en testant un peu cette plateforme. C'est une première impression.

Les points positifs :

  • S'enregistrer est très rapide (mais dommage, je n'ai pas vu de mail de confirmation) ;
  • La coloration est correcte ;
  • Créer un fichier main.cpp (pour du C++) ajoute un code minimal « Hello World », c'est du petit détail, mais c'est sympa ;
  • Il est possible de télécharger son projet en .zip. Le code tapé est donc disponible, il n'est pas bloqué chez MetaCoding ;
  • Il est possible de télécharger le résultat de la compilation : c'est la base de l'offre, mais il faut bien le préciser. MetaCoding est une sorte de mini-ferme de compilation ;
  • Possibilité d'envoyer sur le serveur votre projet dan un .zip qui sera décompressé.

Les points négatifs :

  • Vous n'êtes pas chez vous, et votre premier projet que vous appellerez peut-être « Test » vous le rappellera : ce nom est déjà utilisé et vous devez le changer. J'ai d'ailleurs pensé qu'il était possible d'accéder aux autres projets en open source de la plateforme, mais je n'ai pas vu cette fonctionnalité ;
  • Vous n'être pas chez vous, il faut bien en être conscient. Tout comme avec la confiance en Google, vous devez réfléchir à ce que vous allez programmer : les sources seront stockées sur un site auquel il vous faudra faire confiance ;
  • Pour le C++, la configuration ne me propose que de générer des exécutables Windows ;
  • Manque de raccourcis clavier. C'est même très perturbant. J'ai l'habitude de maltraiter le « Ctrl-S » pour sauver mon travail. Ici, forcément, cela appelle la sauvegarde de la page consultée, et non du document. Il faut donc manier la souris, ce qui est, lorsque l'on programme, bien plus lent que tout faire au clavier ;
  • Limitation en taille. La limitation est bien normale, mais elle est un peu légère : avec 4 Mo, MetaCoding ne servira pas de ferme de compilation à votre gros projet. C'est n'est pas le but de toute façon, et cela devrait suffire pour les débutants.

Ni positif ni négatif, et assumé : les préférences de projets sont extrêmement réduites. Là encore, c'est très bien pour un programmeur débutant, ou pour de l'aide en ligne : inutile de passer des heures à configurer son projet. Par contre, il est probablement impossible de compiler votre gros projet sérieusement.

Intéressant à connaître donc. Mais je ne suis pas certain que je vais utiliser beaucoup.

Note : depuis l'écriture de ce billet, le site a dans un premier temps désactivé la possibilité de compiler, puis à présent, a été complètement enlevé et déplacé ici (lien cassé, d'après le message, les créateurs étaient deux étudiants qui sont arrivé à cours de fond).


  1. lien à présent cassé. Le site n'existe plus.