Au cours de mes explorations sur l’histoire des fenêtres dans les interfaces utilisateurs, une ligne de partage est apparue entre les fenêtres superposables (overlapping) et les fenêtres simplement juxtaposables (tiling).1


Dans un fenêtrage superposé, les fenêtres sont comme des feuilles de papier indépendantes qui s’entassent – on est dans un espace à trois dimensions, où la profondeur est rendue par l’empilement des fenêtres. Dans un fenêtrage juxtaposé, à l’inverse, il n’y a que deux dimensions. Le fenêtrage est alors un découpage de l’écran en tranches, la répartition d’une ressource finie. Les deux modèles conduisent à des représentations très différentes de l’ordinateur et du travail que l’on peut faire dessus : d’un côté, on a des feuilles de papier, de l’autre, un tableau de bord.
Suivant le principe retenu, la gestion de la « matière première » qu’est la surface d’écran est très différente. Dans un fenêtrage superposé, l’essentiel de la gestion des fenêtres – leur emplacement à l’écran, leur taille, etc. – est sous le contrôle de l’utilisateur. Les fenêtrages juxtaposés sont beaucoup plus automatisés : les fenêtres sont disposées suivant un ensemble de contraintes propres au système (par exemple en un nombre réglé de colonnes, ou suivant des répartitions préétablies).

Dans un système superposé, un nombre illimité de fenêtres peuvent se recouvrir – mais certaines vont alors disparaître, cachées par d’autres. C’est à l’utilisateur de mettre de l’ordre et de la hiérarchie, de se souvenir de ce qu’il a ouvert et depuis laissé en plan. Dans un système juxtaposé, les possibilités sont bien plus limitées, mais la situation présente est toujours beaucoup plus simple à appréhender : rien n’est caché, rien n’est recouvert, tout ce sur quoi l’on peut agir est immédiatement visible.
On voit que ces systèmes ont des philosophies très différentes : l’activité de l’utilisateur, sa façon de se concentrer et de travailler ne sont absolument pas comprises de la même manière dans l’un et dans l’autre – c’est précisément ce que je propose d’étudier ici.
Quel type de fenêtrage est apparu en premier – juxtaposé ou superposé ? Le NLS de Douglas Engelbart est apparemment capable de gérer la superposition de zones sur l’écran2, mais de nombreuses sources [PDF] ne le créditent que de fenêtres juxtaposées. Kay, dans sa thèse de 1969, théorise les fenêtres superposées pour son système FLEX. Smalltalk, le système qu’il développe au Xerox PARC, les implémente, probablement pour la première fois, sous une forme proche de ce que nous connaissons. Pourtant, lorsque Xerox commercialise la station de travail Star (ou plutôt, le 8010 Information System) en 1981, les fenêtres sont automatiquement agencées de telle sorte qu’elles ne se superposent pas (la fonctionnalité sera rajoutée dans les versions ultérieures du système). Le Lisa et le Mac sortent en 1983 et 1984 avec des fenêtres superposées. Windows 1 sort en 1985 avec des fenêtres juxtaposées, et n’obtiendra des fenêtres superposées qu’avec sa réécriture en version 2, sortie en 1987.
Le cas de Windows a laissé penser que les fenêtres superposées étaient supérieures aux fenêtres juxtaposées, et il est vrai que la superposition rapide des fenêtres a été considéré à l’époque comme une prouesse technique.3 Pourtant, les concepteurs d’un système comme Cedar (encore une création du Xerox PARC) ont sciemment fait le choix de cet arrangement pourtant réputé inférieur, à une époque relativement récente du développement des systèmes fenêtrés. Il serait trompeur de parler de progrès.
Comme il est fréquent lors d’un tel embranchement, les raisons de choisir un modèle plutôt qu’un autre sont tout à la fois techniques, idéologiques et sociales (lire à ce sujet l’article publié en 1981 par Michel Callon, Pour une sociologie des controverses technologiques). La superposition est un problème particulièrement difficile de calcul, de géométrie et de gestion de la mémoire, certes, mais la juxtaposition intelligente est aussi difficile d’un tout autre point de vue – quelle est la meilleure façon d’agencer visuellement l’activité de l’utilisateur ? Comment éviter le désordre induit par l’accumulation de fenêtres ? L’argument se retourne : le fenêtrage juxtaposé n’est pas moins capable ou moins avancé que le fenêtrage superposé ; au contraire, il est plus clair et demande moins d’efforts.
Il n’existe qu’une seule étude empirique comparant ces deux modèles (Bly & Rosenberg 1986 [PDF]). L’article ne tranche pas : les utilisateurs de la juxtaposition sont plus productifs, mais une majorité d’utilisateur trouve les systèmes de superposition plus agréables à utiliser. Ces résultats confirment les intuitions des concepteurs de systèmes juxtaposés : la différence n’est pas tant technique que sociale et psychologique, en ce que c’est la répartition des tâches entre ordinateur et utilisateur qui varie.
En fin de compte, le choix n’est jamais qu’une simple « question technique ». C’est toujours un compromis – la liberté ou l’ordre – et une mise en cause de valeurs et de problèmes plus profonds.
À quelles actions particulières et quelles sortes d’activités en général invitent ces deux systèmes ? À première vue, la superposition favorise une multi activité désordonnée, avec un utilisateur dispersé sur de multiples tâches déconnectées. À l’inverse, il semblerait que la juxtaposition privilégie un utilisateur concentré sur une seule activité complexe, composée de plusieurs sous-tâches. Est-ce aussi simple ? Il y a plusieurs façons de répondre à cette question : en interrogeant les concepteurs, en observant les utilisateurs, en décrivant les objets eux-mêmes.
Pour l’instant, je dois me contenter de la troisième solution, et, dans une moindre mesure, de la première (puisque les concepteurs ont laissé un certain nombre de traces écrites). Je ne propose, ici, qu’une lecture de ces interfaces, une description spontanée et intuitive, mais aussi désordonnée et incomplète.
Que peut-on faire avec des fenêtres juxtaposées :
Que peut-on faire avec des fenêtres superposées :
Deux mondes, deux conceptions du travail, de la concentration et de la pensée humaine. L’un s’est imposé, l’autre subsiste comme on va le voir. Qui a choisi ?
Le fenêtrage juxtaposé n’a pas disparu. S’il n’y a sans doute que plus que des utilisateurs de Linux4 pour faire tourner un gestionnaire de fenêtres entièrement juxtaposé, les idées et les problématiques subsistent. En 2006, lors d’un concours pour deviner l’interface de Mac OS X 10.5, alors encore secrète, un participant propose un système tout juxtaposé, intégrant des bureaux virtuels comme la plupart des systèmes existants. Plus proche de nous, Windows Seven facilite la juxtaposition côte à côte de deux fenêtres, une fonctionnalité qui a toujours existé d’une façon ou d’une autre au sein de Windows. Enfin, la dernière génération de systèmes d’exploitation pour téléphones portables pose le problème à nouveaux frais. Ces appareils, pour la plupart, n’intègrent plus de fenêtres.5 Les concepteurs d’interfaces sont donc conduits à penser en termes d’écrans et non plus de fenêtres indépendantes, en termes de division de l’espace plutôt qu’en terme de gestion du désordre par l’utilisateur. Ça ne vous rappelle rien ?
Au sens strict, il n’est pas ici question de fenêtres mais de systèmes de fenêtrage ou de gestionnaires de fenêtres (Window Managers) – tous les systèmes n’ayant pas la même architecture, les termes peuvent changer. Le gestionnaire de fenêtres est le programme qui se charge d’afficher les fenêtres et de gérer leur fonctionnement. Sur la plupart des ordinateurs, ce gestionnaire fait partie intégrante du système d’exploitation, mais pas toujours. Il en existe plusieurs pour Linux, par exemple, et l’utilisateur peut en changer. ↩
Allez-voir sur ce document, à la page 8 du pdf (via) : The NLS Display is divided into a number of rectangular display areas (DAs). […] DAs may overlap. subject to some rules about which strings will show in the regions of overlap. ↩
Bill Atkinson, alors employé d’Apple, avait vu lors de sa visite chez Xerox des fenêtres superposées et avait supposé que les ingénieurs du PARC avaient trouvé une solution au problème du rafraîchissement – comment changer le contenu d’une fenêtre à l’arrière-plan sans toucher à celle du premier-plan. Pensant qu’une solution existait, Atkinson s’y attèle et propose la sienne. En réalité, les ingénieurs de Xerox eux-mêmes pensaient le problème trop difficile à résoudre, et « trichaient » en ne rafraîchissant pas les fenêtres d’arrière-plan (Source : Moggridge 2006, p. 93). ↩
Wikipedia propose une longue liste de systèmes juxtaposés. J’ai joué un peu avec Ion et awesome. Il faut sans doute du temps pour s’habituer et prendre des habitudes de ninja, mais ce que j’ai vu m’a plu. Sans pour autant correspondre à mes habitudes de travail, mais bon. ↩
Sinon des boîtes de dialogue. ↩