HyperCard : l'un des plus beaux concepts d'Apple

Christophe Laporte |


Dans l'histoire logicielle d'Apple, HyperCard est sans doute l'un des logiciels les plus ambitieux et novateurs. Sorti très exactement le 11 août 1987, cet "organisateur d'information" fêtait ce week-end son 25e anniversaire. Vendu à l'époque 49 $, HyperCard nécessitait à l'époque 1 Mo de mémoire vive et était présenté par ses concepteurs comme "une pièce fondamentale du Macintosh".

Il avait été présenté en même temps que le MultiFinder (qui permettait d'utiliser plusieurs applications en même temps), l'imprimante ImageWriter LQ ainsi que l'Apple Fax Modem. Mais HyperCard avait été présenté comme de loin l'annonce la plus importante. À l'époque, Apple espérait que son logiciel allait générer plusieurs centaines d'applications gratuits, payants ou encore à destination du marché de l'éducation. Un chiffre bien en dessous de la réalité, car dans les premières années du moins, HyperCard connut un franc succès, qu'Apple fut hélas bien incapable d'exploiter.

HyperCard est un "organisateur d'information". Il présente tellement d'aspects différents qu'il est difficile de vraiment le classer dans une catégorie de logiciels : base de données, programmation, multimédia... Mais ce point est loin d'être sa seule spécificité.


image : ratschlag24


Un outil pour les créateurs d'information


HyperCard est né de la rencontre de Bill Atkinson (créateur de MacPaint et d'une bonne partie du Macintosh) et de John Sculley, alors Président d'Apple. En 1985, juste après le lancement du Macintosh, Bill Atkinson travaille sur le projet de Magic Slate, visant à mettre au point un ordinateur portable avec un écran pleine page. Bill Atkinson est un Apple Fellow : ce titre est une reconnaissance pour les personnages les plus importants dans l'histoire d'Apple. Avec ce titre, Bill Atkinson dispose d'un budget conséquent et d'une totale liberté, sans compte à rendre à la direction.

Bill Atkinson a eu l'idée d'HyperCard en faisant le constat suivant : les ordinateurs sont exploités essentiellement par les créateurs d'information et non par les utilisateurs, pourtant beaucoup plus nombreux. Il fallait donc créer un outil simple et universel, offert à tous les possesseurs de Macintosh. Bill Atkinson décide de quitter Apple pour le développer en toute liberté, mais John Sculley l'en dissuade : Apple l'aidera dans son travail, Atkinson demeurant libre d'exploiter commercialement son invention au cas où Apple déciderait finalement de ne pas le joindre gratuitement aux Macs.

À l'origine, Atkinson conçoit HyperCard (appelé alors WildCard, "le Joker") comme un outil de gestion personnelle. Sculley lui suggère d'intégrer un système de programmation simple et la faculté de piloter les lecteurs de supports optiques. Ainsi est né HyperCard, organisateur d'information, mariage de MacPaint et d'HyperTalk. À propos du nom de code des versions de développement d'HyperCard, "WildCard", il est intéressant de remarquer qu'il en reste encore une trace : la signature qui authentifie l'application HyperCard et ses fichiers est "WILD".


Le célèbre MacPaint


La plate-forme rêvée pour le CD-Rom


HyperCard est lancé en août 1987. Dès cette date et pendant plusieurs années, HyperCard sera fourni avec tous les Macintosh vendus par Apple. La première année de commercialisation voit le nombre de copies vendues par Apple atteindre 1 million ! Pour Apple, HyperCard est la plate-forme rêvée pour lancer son lecteur de CD-Rom : l'application tire alors pleinement parti du grand espace de stockage pour afficher images, sons et quantités d'informations.



Et Apple inventa le concept de pile


Quand l'application HyperCard est lancée, elle ouvre la pile de base. Une pile, c'est une sorte d'application, à la différence près qu'elle n'est pas autonome. Chaque utilisateur peut créer des piles, qui contiennent une ou plusieurs cartes. Sur ces cartes, l'utilisateur dispose des images, des boutons et des champs de texte. Chacun de ses éléments peut être associé à un script : c'est tout simplement une suite de commandes, rédigées en HyperTalk, permettant aussi bien de piloter l'ordinateur ou la gestion des fichiers, que la pile elle-même : dessin, création de boutons, navigation entre les cartes, mathématique, effets visuels ou sonores...



Le langage HyperTalk fut conçu par Dan Winkler. Celui-ci essaya de créer un langage aussi proche que possible de la syntaxe de l'anglais. C'est ainsi que toutes les commandes sont des verbes (ask, answer, go, quit) et les événements sont des phrases en anglais, sans les espaces (on MouseUp, on OpenBackground, on MouseDoubleClick...). De plus, le langage HyperTalk offre un très haut degré de réutilisation : il est possible de copier-coller quelques lignes de codes d'une pile à une autre.

HyperCard est le premier logiciel grand public utilisant un concept très innovant : l'hypertexte. Avec l'hypertexte (ou l'hypermédia), les informations sont divisées en plusieurs unités (les cartes d'une pile dans HyperCard, ou encore les pages HTML sur Internet), et l'utilisateur peut passer des unes aux autres grâce à des liaisons (programmées avec HyperTalk sous HyperCard, ou grâce aux liens sur Internet).



En fait, deux sortes d'utilisateurs coexistent avec HyperCard : les premiers sont des consommateurs, ils utilisent des piles conçues par d'autres, ils naviguent, ils récupèrent des informations... Les deuxièmes sont des créateurs : à partir d'une pile vide, ils créent une application, offrant des fonctions nouvelles (navigation, calculs, jeux, utilitaires...). Les premiers utilisent le clavier et la souris, les deuxièmes utilisent en plus HyperTalk pour rendre leur pile réactive aux demandes des utilisateurs.

Un long déclin


La version 2.0 d'HyperCard, présentée en 1990, apporte plus de 80 nouvelles fonctions. La plupart des désirs des utilisateurs ont été comblés : il devient possible d'ouvrir plusieurs fenêtres en même temps, les scripts s'exécutent de 30 à 40 % plus rapidement qu'avec la version précédente, un débogueur a été intégré pour faciliter la correction des scripts, il est enfin possible de créer des piles d'une taille supérieure à 512/342 pixels, une palette de navigation permet de déplacer le contenu des piles plus larges que l'écran... La barre des menus est maintenant personnalisable, les icônes peuvent être modifiées depuis HyperCard lui-même, une XCMD Picture permet d'afficher des images en couleur, les champs sont capables d'accueillir plusieurs types de polices de caractères, plusieurs scripts peuvent être ouverts en même temps.


Une publicité faisant la promotion de piles HyperCard - image : Apple - Collection


À partir de cette version 2.0, HyperCard n'est plus tout à fait fourni avec les Macintosh : seule une version permettant de naviguer dans les piles est fournie. Les utilisateurs souhaitant programmer leurs propres piles sont obligés d'acheter la version complète d'HyperCard, distribuée par Claris.

La version 2.2 apporte quelques nouveautés : la gestion des champs de texte de type Liste, les familles de boutons, la possibilité d'utiliser des scripts rédigés avec AppleScript, pour piloter l'ordinateur, les menus locaux, ou encore la possibilité de créer une application autonome à partir d'une pile.

La version 2.3 apporte enfin la possibilité d'intégrer la couleur dans HyperCard, grâce à une XCMD. On peut colorer les boutons, les champs, on peut intégrer des images en fond ou sur chaque carte. Les possibilités restent néanmoins assez limitées : l'interface reste semblable à celle que présentait le système 6, et ne se pare ni des nouveautés du système 7 ni de l'aspect Platine de Mac OS 8... Autre nouveauté, la fenêtre "Tâches du bouton" permet de désigner facilement les commandes d'un bouton (accès à une carte, effet visuel).

La version 2.4, sortie en 98, permet enfin de se connecter à Internet depuis une pile : il suffit de cliquer sur un bouton ou un texte pour que le navigateur se lance et affiche la page désirée. Il devient également possible de manipuler des films QuickTime avec le langage HyperTalk. Les films QuickTime VR peuvent aussi être commandés depuis le clavier. En revanche, seule la version américaine d'HyperCard 2.4 est disponible : il est en plus impossible de mettre à jour HyperCard 2.3 français vers 2.4 US...

En fait, depuis le début des années 90, Apple semble se désintéresser complètement d'HyperCard. L'application n'est plus mise à jour, sauf pour quelques corrections de bug. Les outils couleurs, attendus pendant plusieurs années, ne sont pas à la hauteur des espérances des utilisateurs. Les différentes mises à jour ne sont plus traduites et Apple ne fait plus aucune annonce à propos de l'application la plus innovante de tous les temps.

La rumeur HyperCard 3


En fait, une rumeur persistante traîne depuis 1996 : Apple serait en train de bosser sur une version 3.0 d'HyperCard, qui serait absolument révolutionnaire. Cette nouvelle version serait une fusion d'HyperCard et de QuickTime : les piles seraient en fait des films QuickTime, auxquels on aurait ajouté les capacités d'HyperCard et d'HyperTalk. Ainsi, on pourrait utiliser pleinement tous les outils de couleurs, de connexion à Internet, d'animation, et aussi bien sur Mac que sur PC. Les piles HyperCard pourraient donc également tourner dans un navigateur, grâce au Plug-In QuickTime.

Il n'y aura ensuite plus aucune nouvelle. QuickTime 3, qui était censé contenir ces nouveautés, est arrivé sans HyperCard. De même, QuickTime 4 ne semble pas offrir quoi que ce soit d'équivalent ! Le fameux QuickTime Interactive, qui devait permettre la création des fameux fichiers QuickTime-HyperCard, n'a jamais pointé le bout de son nez... Les rumeurs ne faiblirent pas durant les années d'attente : de nombreux ingénieurs travailleraient chez Apple sur QuickTime Interactive, cette technologie permettrait d'inclure dans des piles des fichiers VR, 3D, MPEG, on pourrait mélanger HyperTalk, AppleScript et Java, les piles tourneraient indifféremment sur Mac et sur PC, et tout ça marcherait avec 8 Mo de mémoire vive...

Apple a définitivement laissé tomber HyperCard en 2004. Des projets similaires au fil du temps ont tenté de relancer le concept. On pense entre autres à SuperCard qui est encore développé. La version 4.7.3 sortie récemment offre même la prise en charge de Mountain Lion. L'un des intérêts de ce logiciel, outre qu'il partage la même philosophie, c'est qu'il est capable d'importer sans trop de difficulté des piles crées avec le logiciel d'Apple.

iBooks Author : le successeur ?


Simple coïncidence, alors que le logiciel souffle cette année sa 25e bougie, Apple a quelque peu revu le concept en début d'année avec iBooks Author (lire : iBooks Author, héritier d'HyperCard). La nouvelle application d'Apple qui permet de concevoir sans avoir de grandes connaissances techniques des livres interactifs (lire : Test d'iBooks Author).



Enfin, si l'on devait citer une création réalisée avec HyperCard, le premier qui viendra à l'esprit de beaucoup est Myst. Ce jeu d'aventures est sorti sur notre plate-forme en 1993. C'est l'un des rares best-seller dans le domaine à être d'abord sorti sur Mac. La version PC arriva un an plus tard. Lors de sa sortie, ce jeu avait impressionné la critique par son univers de fiction très immersif.



Avec six millions d'exemplaires écoulés, Myst fut longtemps le jeu pour ordinateur le plus vendu au monde avant d'être dépassé par les Sims. Et si 19 ans plus tard, il n'est plus possible de faire fonctionner ce jeu sur un Mac récent, il a en quelque sorte ressuscité dans une version iOS.

Article réalisé en collaboration avec notre partenaire L'Aventure-Apple !

illustration de la page d'accueil : Coba


Sur le même sujet :
- Une étincelle d'Hypercard dans les Wiki
Tags
avatar os-app92 | 
@Krynn : set scriptLevel of this Stack to 5 Il me semble...
avatar niclet | 
HyperCard, des heures de joies. Cependant, à force d'attendre la version 3 d'HC, bien des gens se sont tournés vers Macromedia Director pour faire des CDROM. Son langage Lingo, si je me souviens bien, était une suite logique de l'Hypertext dans ce contexte.
avatar niclet | 
* suite logique de "HyperTalk"
avatar metjo | 
"Revolution Media" avait bien pris le relais; même conception; conversion des piles Hypercard… Je ne sais pas s'ils continuent. On en faisait plus avec Hypercard qu'avec Filemaker.
avatar xuyss | 
Le vrai côté révolutionnaire d'Hypercard, c'est qu'il était gratuit et fourni avec tous les Macs… Son déclin correspond au fait qu'il soit devenu payant, preuve que face aux autres concurrents payants, son intérêt était bien moindre…
avatar djmat | 
ça avait vraiment l'air génial, dommage que j'étais sur PC à l'époque, enfin on avait VB et Delphi qui étaient quand même déjà pas mal (et Click & Play!) ...
avatar Damze | 
Je suis dans la même situation que iCaramba...J'ai pas vraiment compris l'utilité du logiciel, c'est destiné pour développer ou automatiser certaines tâches ?
avatar Micout | 
@metjo Revolution est devenu LiveCode. Le langage est toujours de l"HyperTalk" étendu. Il est maintenant possible de créer des applications MacOS X, Windows, Linux, iOS, Androïd. http://www.runrev.com J'ai longtemps créé des applications avec HyperCard + WindowScript (une extension multifenêtres d'HyperCard), lassé par les "reports" successifs d'HyperCard 3, j'ai essayé SuperCard, mais, le concept n'étant pas exactement le même (2 modes) je n'ai pas accroché. Depuis plusieurs années ma reconversion s'est faite avec Revolution (devenu LiveCode). L'esprit est là, mais avec l'évolution de l'informatique depuis 1987, tout cela est évidemment bien plus compliqué. Mais c'est une manière relativement aisée d'accéder à la programmation et de créer de VRAIS applications pour son usage personnel et même commerciales de niveau professionnel.
avatar Anonyme (non vérifié) | 
HyperCard permettait à tout le monde, sans connaissance informatique, de bricoler ses propres applications, à partir de la pile de base, avec boutons, champs de saisie, dessins etc chaque appli (pile) était constitué de cartes, chaque carte pouvait avoir son fond propre ou/et un fond partagé entre toutes les cartes de la pile, idem pour les boutons, champ, dessins... chaque objet (pile, carte, fond, bouton, champ) avait son script, définissant son action, tout ça pouvant interagir, et même agir sur le Mac lui même une sorte de Mécano, version informatique, tout à fait génial... j'utilise toujours quotidiennement l'une de ces piles (livre de comptes), sur mon iBook, via Sheepshaver, plus par amusement que par nécessité...
avatar Anonyme (non vérifié) | 
[i]correction: sur un MacBook intel[/i]
avatar ekami | 
J'ai passé des milliers d'heures avec HyperCard à apprendre la programmation orientée objet, puis à créer des piles (dont certaines ont été commercialisées). J'ai encore une appli de gestion de camping qui tourne sous Classic depuis plus de 12 ans chez 3 clients sans aucun problème. Et je me sers encore d'HC pour mon usage personnel très régulièrement, car il sait en faire bien plus que FileMaker, même si ce dernier à mes faveurs pour les bases de données "classiques". Aujourd'hui le digne successeur d'HyperCard s'appelle LiveCode. Il est entièrement orienté objet et son langage est extrêmement puissant et rapide. Seul souci de LiveCode : la licence est très chère et il n'y a rien en français, pas même un guide d'initiation, ce qui est bien dommage car ce langage se prête bien à l'apprentissage de la programmation. Mon rêve : que les lycéens aient une initiation à la POO avec LiveCode !
avatar DVP | 
A ceux qui ne voient pas à quoi ça sert: Vous connaissez tous le concept d'un site web: une série de pages dans lesquelles on navigue en suivant des liens. HyperCard c'etait grosso modo la même chose, mais 10 ans avant... Imaginez un Safari qui vous permettrai de faire des pages, de les lier entre elles puis de les regrouper dans un seul fichier pour en faire un site consultable par tous. Remplacez page par card, site par pile, et safari par hypercard et vous aurez une petite idée de ce que c’était.
avatar os-app92 | 
@DVP : bien resumé.
avatar mistik | 
Merci de nous avoir retranscrit la magie de ce logiciel.
avatar Thierry61 | 
nostalgie, nostalgie... ça nous rajeunit pas hein ? Le peu que j'ai jamais vraiment maitrisé en programmation, c'était en Hypertalk. M'amusais comme un petit fou à une époque à bricoler des scripts plus ou moins optimisés ("on mouseUp.... le bon vieux temps) Hypercard, c'était vraiment un jolie approche de la gestion de données, de l'événementiel et de certains concepts relevant de l'orientation objet - tout cela avant que le Web ne décolle, avant les SGBDR grands publics et les L4G.
avatar pecos | 
C'est marrant... J'ai bien connu Hypercard à l'époque, mais je n'ai pas beaucoup programmé avec. Trop en avance sur son temps, probablement, et surtout, trop "cheap" compte tenu des ressources de l'époque pour faire quelque chose de présentable. C'est un précurseur, certes, mais je ne vois pas trop pourquoi il faudrait pleurer la mort de ce soft qui est quand même très avantageusement remplacé de nos jours par une foultitude de solutions. Par exemple, un bon site en PHP/javascript et MYSQL ou SQLITE. Une webapp, quoi. Et ça peut tourner en local sans problème et être multi plate-forme, ce que n'a jamais été hypercard. Est-ce plus facile ou moins facile à programmer qu'avec hypercard à l'époque ? Ça se discute. Et je rappelle que le concept de carte est largement utilisé partout, sous d'autres noms : ainsi, une app iOS n'est qu'une suite d'UIViews, qui sont donc des cartes. Ne parlons pas des pages web (cartes) et des sites (piles). Tout ça pour dire que les concepts d'hypercard sont bien vivants et utilisés tous les jours dans des millions de pages webs ou d'apps iOS ou android. C'est juste le langage qui est différent, pas les concepts, et sur ce point, hypertalk n'était pas spécialement agréable face à ce qui a suivi.
avatar SugarWater | 
@DVP Merci dvp, je n'avais pas compris moi aussi. Pour les pubs, rien a dire d'autant qu'elle sont clairement annoncées, il y a juste une fois un sponso du point la veille des présidentielles que je n'avais pas aimé. J'en profite pour saluer l'app sans laquelle je lirais beaucoup moins macgé.
avatar Sedik | 
Merci superbe article! Jobs en parlait bcp lors de ses fameuses interventions lors des All Digital conférence et je ne maitriserais pas le sujet à vrai dire ^^
avatar JoKer | 
J'ai toujours été plus fan d'AppleScript que d'Hypercard pour mon utilisation. Même si beaucoup de mes projets on disparu avec la fin d'AppleScript Studio... Mais un petit retour de l'interactivité et de la programmation dans des films QuickTime ça serait très bien. Apple pourrait l'utiliser pour les films sur l'iTunes Store pour avoir des menus comme sur DVD ou Bluray.
avatar USB09 | 
..et il n'est pas possible d'obtenir la même chose pour iOS ? Histoire de faire des applications plus simplement.
avatar ekami | 
@ usb09 : LiveCode permet de compiler pour toutes les platerformes, dont iOS et Androïd. Certes la licence n'est pas donnée, mais on va plus vite avec LiveCode qu'avec XCode, même si ce dernier permet de tout réaliser car il permet d'utiliser toutes les API. -- HyperCard à été un précurseur dans de nombreux domaines : le code étant interprété, il était assez lent jusqu'à la version 2 qui réalisait une compilation lors de la première exécution. On pouvait donc modifier le code et le tester en live. Le code et les données étant dans le même fichier, la souplesse d'utilisation était fantastique. Aujourd'hui, FileMaker fait de même, et pour cause, le premier éditeur de FMP n'était autre que feu Claris, une filiale d'Apple, et ils sont pillé HyperCard pour en faire FileMaker.
avatar lyon3 | 
@Mathias10 : C'est juste que ce Sponso fait tâche à côté un article aussi interressant. Je ne suis pas contre la pub mais je crois que MacG a les moyens de mieux sélectionner ses sponsors. Quand à ma contribution, je lis environ 99% des articles, 365 jours par an (ça fait un tas de pubs), mais je sais pas ce ça représente par rapport à l'abonnement.
avatar Florian Innocente | 
@wolf : 'Comment parler d'HyperCard et de ne pas parler de Frédéric Rinaldi' Je l'avais justement contacté à ce sujet pour qu'il nous fasse un article, il n'a jamais donné suite. Aux dernières nouvelles il est toujours Genius au Store de Montpellier.
avatar toniof | 
Que de souvenirs !, j'avais fait mon arbre généalogique avec étant gamin ! Je m'amusais aussi à faire des animations avec les enchainements de cartes, c 'était vraiment génial cette époque où j'étais obligé au collège de taper des lignes de code sur un ZX spectrum pour faire des rectangles alors que j'avais hupercard à la maison...:/ ça n'a pas duré longtemps c't'histoire :D
avatar ange | 
@toniof : Amusant, moi aussi je m'étais créé à 13-14 ans ma première applis d'arbre généalogique avec hypercard (liens entre personne, remplissage automatique de champs, petit visuel (circulaire) de l'arbre généalogique... Hypercard, c'était hyper simple à programmer avec !

Pages

CONNEXION UTILISATEUR