Fermer le menu
 

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

Christophe Laporte | | 19:48 |  75


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.
Catégories: 
Tags : 

Les derniers dossiers

Ailleurs sur le Web


75 Commentaires Signaler un abus dans les commentaires

avatar os-app92 12/08/2012 - 21:49

HyperCard était mon logiciel préfère sur mon Mac Classic. Avec Think Pascal j'écrivais des XFCNs et des XCMDs pour étendre le langage HyperTalk. Ce logiciel révolutionnaire n'a toujours pas d'équivalent de nos jours. 20 ans d'avance ! Merci Bill Atkinson !

avatar iCaramba 12/08/2012 - 22:02

J'ai beau lire je comprend rien a ce que c'était…

avatar Wolf 12/08/2012 - 22:06

Comment parler d'HyperCard et de ne pas parler de Frédéric Rinaldi qui a développé tant de XCMDs pour le plus grand bien des développeurs du Dimanche (CopyRes m'était indispensable). Dommage qu'Apple n'ai pas continué.


avatar lyon3 12/08/2012 - 22:15

Bonne article (surtout après le Sponso "EasyFlirt", c'est quand même pas terrible, la semaine prochaine ça m'étonnerais pas de voir Sponso "Youporn", après tout comme vous dites "il y a une app pour ça"). En conclusion il va falloir suivre l'évolution d'iBooks Author.

avatar Kurby'S 12/08/2012 - 22:20

@Lyon3 : Ainsi que l'évolution de ton orthographe...

avatar lyon3 12/08/2012 - 22:46

@Kurby'S : Touché. Mais c'est un peu bas quand même (comme "EasyFlirt").

avatar Krynn 12/08/2012 - 22:50

Que de bons souvenir!!! 2 choses en compléments. De mémoire, avec la version 2.0. Il était possible de faire option-M (pour afficher le message box) et de taper "MAGIC" dedans, ce qui libérais le niveau 5 d'hypercard et qui donnait accès à la partie programmation. Ensuite. Il y a runtime Revolution (ou live code) qui a pris un peu le relais d'HC et qui comble ces manques (couleurs, internet, Multiplateforme, ...)

avatar istratocaster 12/08/2012 - 22:53

Faites chier avec des pubs comme easyflirt. La honte lorsque l'on ouvre l'App MacG.

avatar Tchobilout23 12/08/2012 - 23:03

Bah quoi??? Elle est pas mal Nina84!!!

avatar iSc0tty 12/08/2012 - 23:04

@iCaramba On est deux.. Dommage ça avait l'air puissant pour l'époque ^^

avatar Nesus 12/08/2012 - 23:06

Simplement pour signaler que le lien est celui de la version anglaise. Il y a une version française spécifique sur iOS.

avatar Nesus 12/08/2012 - 23:06

Simplement pour signaler que le lien est celui de la version anglaise. Il y a une version française spécifique sur iOS.

avatar Mathias10 12/08/2012 - 23:22

@icaramba @Lyon3 @Iscotty Vous avez payé l'abonnement? De quel façon participez vous au financement de Macgeneration SARL? Ok, cela ne vous donnerais pas plus le droit de critiquer, mais au moins ne vous mettrais dans la plus mauvaise posture qu'il soit pour critiquer.

avatar skilopt 12/08/2012 - 23:30

Hypercrad et les premiers virus sur mac ! Il aurait fallu en parler ! Plus sérieusement, Hypercard était GENIAL pour l'époque !

avatar Armas 12/08/2012 - 23:40

C'est interessant de voir qu'apple se desinteresse d'iwork a peu pret de la meme maniere qu'hypercard.

avatar iSc0tty 12/08/2012 - 23:40

@Mathias10 Pour te répondre : oui j'ai payé l'abonnement. En ce qui concerne ma participation au forum elle est faible (je vais expliquer pourquoi par la suite), mais présente. Ensuite mon commentaire n'était nullement une critique, encore moins avec le rédacteur et MacG. Je stipulais dans mon commentaire simplement que je n'ai pas saisi la fonction exacte de HyperCard (comme iCaramba). Je demandais (peut être maladroitement) a ce qu'on m'explique si possible clairement, c'est tout.. Je n'ai simplement pas assez de connaissance, ni de recul, pour savoir ce genre de choses désolé (d'où ma faible participation au forum, je préfère rien dire que dire des conneries et aggraver le problème des gens). Je suis juste un peu blasé justement de pas comprendre alors que cet outil avait l'air d'avoir un énorme potentiel. Enfin, J'admire le travail de chaque rédacteur de MacG que je lis quotidiennement, je ne me permettrais pas de les critiquer de la manière que tu as pu comprendre à travers mon commentaire.

avatar iSc0tty 12/08/2012 - 23:44

@Mathias10 Et mon 1er commentaire parlait uniquement de l'article que je ne comprenais pas, en aucun cas de la pub, que je cautionne (ben oui faut bien rentrer de l'argent).

avatar StefJeubs 12/08/2012 - 23:49

Hypercard? Savez pas ce que c'est? Ben c'est un peu comme Supercard :)

avatar Anonyme (non vérifié) 12/08/2012 - 23:51

Tiens, un article intéressant.

avatar iSc0tty 12/08/2012 - 23:58

@ StefJeubs Merci ^^

avatar Jackdu59 13/08/2012 - 00:29

Ça me fait un peu penser à un FileMaker amélioré, les experts pourraient confirmer? Jamais connu hyperCard.. Pour moi c'est hyperVieux...

avatar os-app92 13/08/2012 - 00:34

@jackdu59 : 'Ça me fait un peu penser à un FileMaker amélioré, les experts pourraient confirmer? Jamais connu hyperCard.. Pour moi c'est hyperVieux...' rien à voir. La Stack est un concept beaucoup plus puissant. Aujourd'hui iOS pourrait faire tourner HyperCard et cela pourrait être le moteur des applis. Ah écrire des applis en HyperTalk !!! Un doux rêve.

avatar DrFatalis 13/08/2012 - 02:04

Bien que cela soit dit dans l'article, hypercard était une sorte d'outil permettant de concevoir des applications. Ce que l'on voyait à l'écran était une carte, l'appli était une pile de cartes. On disposait sur la carte de champs et de boutons, et le comportement de ces champs et boutons se réglait avec un langage simple et intuitif, hypertalk. A titre d'exemple de ce que l'on pouvait faire, j'avais fourni au jury d'une de mes thèses un résumé interactif de cette dernière sous forme d'une pile hypercard. C'était géant, et seul le Macintosh permettait cela.

avatar iSc0tty 13/08/2012 - 02:15

@DrFatalis Merci c'est plus clair la merci :)

avatar os-app92 13/08/2012 - 03:50

@DrFatalis : 'C'était géant, et seul le Macintosh permettait cela.' Oui, seul le Mac permettait cela. HyperTalk le langage de script était orienté objet, avec une syntaxe proche de celle d'AppleScript: On MouseUp Set text of myTextField to "Bouton pressé" End MouseUp Ce type d'action était directement visible en double cliquant sur le bouton concerné. Les objets pouvaient s'envoyer des messages, entre cartes et entre piles ! La Stack était conçue à la volée, testée puis repassée en mode développement. Avec des icônes sous forme de bouton, on pouvait faire des animations. Le code de chaque objet pouvait s'auto modifier. Certains scripts étaient vraiment puissants (tri de champs par exemple). Quand HyperTalk devenait trop lent, on pouvait developer des ressources XCMDs et XFCNs en pascal ou C.

Pages