David Madore's WebLog: TP en Sage, et webapplications

Index of all entries / Index de toutes les entréesXML (RSS 1.0) • Recent comments / Commentaires récents

Entry #1701 [older|newer] / Entrée #1701 [précédente|suivante]:

(mercredi)

TP en Sage, et webapplications

J'ai donné hier un TP pour un cours d'(introduction à l')arithmétique pour la cryptographie[#] dont je suis responsable à Télécom (dans le cadre d'un master sécurité). Le choix du logiciel de calcul symbolique dans lequel travailler est toujours un peu épineux. Je préfère par principe un logiciel libre, ce qui laisse encore un certain choix ; mais il faut tenir compte de l'environnement disponible dans les salles de TP auxquelles j'ai accès. Or, à ce sujet, sauf à aller frapper à la porte d'autres départements de l'École, le choix est entre des salles de PC Windows (or je ne sais pas utiliser Windows, et je n'ai pas trop envie d'apprendre) ou de Sun (également Intel) sous Solaris 11, l'installation de ce dernier OS n'étant pas toujours complètement orthodoxe (et, concrètement, compiler n'importe quoi est une gageüre). L'an dernier j'avais fait mes TP sous Maxima qui est, il faut le dire, assez mauvais (et je ne sais pas qui a eu l'idée d'utiliser “:” pour l'affectation, mais il devait vraiment avoir fumé quelque chose). Cette année, j'ai jeté l'éponge sur l'idée de compiler quoi que ce soit sur les machines de TP, et j'ai utilisé Sage[#2] à distance : le programme tourne sur ma machine au bureau, et les étudiants y accèdent par un navigateur Web. Il faut dire que Sage a un système de worksheets assez impressionnant de ce point de vue-là (il y en a une démonstration publiquement accessible sur www.sagenb.org[#3]).

C'est une idée séduisante a priori : au lieu de faire une interface graphique, un programme peut toujours décider d'utiliser un navigateur pour ça, de se présenter sous la forme d'un site Web. Et de fait, les webapplications rencontrent un succès spectaculaire qu'on peut juger au nombre de bouquins sur Ajax (il ne s'agit pas du cousin d'Achille) qu'on peut trouver dans n'importe quel rayon informatique (section technologies Web) de librairie.

Mais en fait, le concept a aussi ses limitations, qu'on rencontre rapidement même quand la réalisation est soignée, et qui donnent un petit goût désagréable d'inachevé ou de bricolé. Prenez les racourcis clavier : on ne peut y mettre que ce que le navigateur lui-même n'a pas réquisitionné ; prenez les commandes à la souris : elles sont sévèrement contraintes par ce que le modèle de focus du document permet ; on a du mal à avoir un vrai menu contextuel, on a du mal à avoir du glisser-déplacer qui marche de façon fluide et claire, on a du mal à avoir un copier-coller riche, on a du mal à avoir un système de menus ou un toolkit qui s'harmonise bien avec le navigateur, l'édition des textes se fait dans des widgets qui ne sont pas de vrais éditeurs, la notion de session est difficile à faire avaler à un système (le Web) prévu pour être sans état… Bref, l'idée est sympa et certainement très utile, mais j'aimerais bien que des solutions soient trouvées pour que ça cesse d'être du bricolage et que l'intégration soit vraiment parfaite (c'est-à-dire aussi bonne que pour une application native) : or j'y crois fort peu. S'agissant de l'interface worksheet de Sage, le boulot réalisé est impressionnant, certes, mais ce genre de limitations me frappe toujours : le copier-coller a des ratées, les rectangles de saisie varient parfois de taille de façon inexpliquée, bref, les finitions manquent (et ce n'est pas la faute de Sage, c'est le concept de webapplication qui rend ça pour l'instant inévitable).

Bon, le pire ça a surtout été quand j'ai voulu faire cet après-midi un corrigé de ce TP : je me suis dit que j'allais l'écrire comme une worksheet Sage, justement (plutôt qu'en tapant tout en TeX). Mauvaise idée. D'abord, tous les commentaires entourant les commandes, j'ai dû les saisir dans un éditeur HTML appelé depuis l'interface et qui est certes impressionnant mais qui n'est pas l'éditeur que j'ai l'habitude d'utiliser (et pour ce qui est du copier-coller, de nouveau, c'est pas terrible). Mais une fois que j'eus fini et que j'eus publié ma worksheet, je me suis senti un peu escroqué : la page Web ainsi produite est assez jolie, mais pas moyen de l'exporter en PDF (si j'essaie de l'imprimer vers un PDF, mon navigateur produit quelque chose de vraiment très moche), pas vraiment moyen non plus de la sauver comme une page HTML (elle fait appel à des quantités invraisemblables de JavaScript de chez jQuery et jsMath), on peut juste en sauvegarder une version au format Sage worksheet, qui sera certes lisible sur un autre Sage, mais bon, le problème initial était justement que ce n'est pas la chose la plus facile au monde à installer.

[#] Le but du cours étant d'arriver à faire comprendre à des gens qui ont fait des parcours assez différents (et parfois plus fait de maths depuis longtemps) comment « fonctionnent », si j'ose dire, ℤ/mℤ (le théorème chinois, les éléments primitifs, ce genre de choses) et (un tout petit peu) les corps finis.

[#2] Aux dernières nouvelles, Sage ne tourne pas sous Windows, et pas bien (ou pas complètement) sous Solaris. Donc c'était peu évident, comme solution !

[#3] Je me demande comment ce site fait pour ne pas être complètement vandalisé, d'ailleurs.

↑Entry #1701 [older|newer] / ↑Entrée #1701 [précédente|suivante]

Recent entries / Entrées récentesIndex of all entries / Index de toutes les entrées