HyperCard-Simulator
(hcsimulator.com)- HyperCard Simulator ist ein webbasierter Simulator, mit dem sich klassische HyperCard-Stacks in das moderne Web holen und ausführen lassen
- Stacks funktionieren wie ein geordnetes Kartenbündel; Karten können hinzugefügt oder gelöscht und über ein Konto online geteilt werden
- Karten können Buttons und Felder enthalten, und auf dem Hintergrund erstellte Elemente lassen sich auf mehrere Karten wiederholt anwenden, während kartenspezifischer Text getrennt erhalten bleibt
- Die Bearbeitung erfolgt direkt auf der Karte und unterstützt einfaches Malen mit Bleistift, Farbeimer sowie Schwarzweiß- und Transparenzmustern
- Die Nutzung ist auch ohne Skripte möglich, aber über die message box und den Script Editor lassen sich xTalk-Befehle und Message-Handler wie
mouseUpverwenden
HyperCard-Stacks im Web ausführen
- HyperCard Simulator ermöglicht es, klassische HyperCard-Stacks zu importieren und im Browser auszuführen
- Der Ersteller entschuldigt sich bei den HyperCard-Machern und sagt, er habe das Projekt in seiner Freizeit gebaut, um zu sehen, wie HyperCard im modernen Web funktionieren würde
- Als verwandte Ressourcen sind hypercard.org, Merveilles HyperJam und Internet Archive verlinkt
- Zur Erkundung weiterer Stacks werden
More stacks,A Few More Stacks,The "B–Roll",Collected Stacks,Lots More StacksundThe HyperCard Pantechniconangeboten
Karten- und hintergrundzentriertes Bearbeitungsmodell
- Ein HyperCard-Stack ähnelt einem Kartenstapel, durch den man der Reihenfolge nach blättert, und Nutzer können dem Stack Karten hinzufügen oder daraus entfernen
- HyperCard speicherte Stacks automatisch; in diesem Simulator kann man ein Konto erstellen und sie online teilen
- Jede Karte kann Buttons und Felder enthalten
- Die Bearbeitung erfolgt nach Auswahl des passenden Werkzeugs per Ziehen und Größenanpassung
- Buttons und Felder können auf der Karte oder im Hintergrund erstellt werden
- Eigenschaften lassen sich per Doppelklick oder langem Drücken öffnen
- Der Hintergrund wird auf mehrere Karten wiederholt angewendet
- Jede Karte kann eigene Teile und eigenen Text haben
- Jede Karte besitzt einen Hintergrund, der als Ebene hinter der Kartengruppe liegt
- Auf Karten mit demselben Hintergrund kann in Hintergrundfeldern jeweils kartenspezifischer Text stehen
Malen und Skripten
- Das Malen erfolgt direkt auf der Karte
- Es können Bleistift oder Farbeimer verwendet werden
- Schwarz wird mit Shift, Weiß mit Option und Transparenz mit dem Option+Shift-Muster verwendet
- Skripting ist nicht zwingend erforderlich, aber man kann es lernen, indem man sich die Skripte des Simulators selbst ansieht
- Die message box wertet xTalk-Ausdrücke und -Befehle aus
- Der Script Editor kann aus dem Information-Dialog geöffnet oder per Command-Option-Klick, Touch-Hold oder Doppelklick bei gedrückter Shift-Taste aufgerufen werden
- Skripte können vom Benutzer gesendete Nachrichten empfangen und Aktionen wie
beepodergo next cardausführen - Ein Beispiel für einen Message-Handler führt in
on mouseUpbeepaus, wechselt zur nächsten Karte und endet mitend mouseUp
1 Kommentare
Hacker-News-Meinungen
Es ist ein bisschen schade, dass HyperCard vor meiner Generation lag. Wenn ich es als Kind gekannt hätte, hätte ich vermutlich nichts anderes gemacht; als ich es im Emulator ausprobiert habe, war es ziemlich unterhaltsam.
Ich mag diese frühen Versuche, Programmieren für Menschen leicht zugänglich zu machen. In deutlich abgeschwächter Form hat sich beim ersten Benutzen auch das Flash-Animationstool ähnlich angefühlt: viel unmittelbarer zugänglich, als zu versuchen, OpenGL oder SDL an C++ anzubinden, und etwas zu erschaffen hat einfach Spaß gemacht. Seit Flash habe ich beim Entwickeln kein Tool mehr gefunden, das genauso viel Spaß gemacht hat. GameMaker ist ebenfalls großartig und macht immer noch Spaß, wirkt aber nicht so reibungslos und vermittelt weniger dieses Gefühl von „alles ist möglich“ wie Flash. Vielleicht bin ich auch einfach älter geworden.
Flash ist schneller verschwunden, als Ersatz dafür aufgetaucht ist; als Flash weg war, war ziemlich klar: Wenn das damalige HTML5 die Zukunft und der unmittelbare Ersatz sein sollte, waren wir verloren. Wenn ich als Nächstes ein Tool suche, mit dem man etwas bauen kann, scheint Flutter das Versprechen von Flash fortzuführen, mit einer Codebasis überall zu laufen. Weitere Technologien, auf die ich setze, sind WebAssembly und bis zu einem gewissen Grad Rust.
Dass sich der Cursor beim Überfahren eines Links in ein Hand-Symbol verwandelt, ist direkt von HyperCard inspiriert. In vielerlei Hinsicht kann man den Browser als Weiterentwicklung von HyperCard-Stacks betrachten.
Als Kind waren HyperCard und SuperPaint mein Lego. Mein Vater war Wissenschaftler und brauchte einen Macintosh, um Berechnungen laufen zu lassen; deshalb war ich damals eines der wenigen Kinder, deren Familie einen Computer hatte.
Mit HyperCard habe ich wirklich viele kleine Dinge gebaut, und ich habe eine große Zuneigung zu den unterhaltsamen Methoden, mit denen man mit Schwarz-Weiß-Monitor-Apps und nur einer Farbe Muster erzeugen konnte.
Auch mein erster Computer, ein Apple II GS, konnte über das Programm „Apple for a Teacher“ von Lehrern mit großem Rabatt gekauft werden. Es war so etwas wie ein Vorläufer des Mac mit Farbmonitor. Bei einem Kreativschreibwettbewerb des Magazins 3-2-1 Contact gewann ich fünf Spiele nach Wahl als Preis, und ich konnte meine Eltern davon überzeugen, dass ich für den Rest der Zeit einen Computer brauchte, um diese Spiele zu spielen.
Hinweis: Wenn man oben rechts auf das Kästchen zum Maximieren des Fensters klickt, zoomt man in den HyperCard Editor heraus.
Ich versuche noch herauszufinden, wie man mit einem leeren Deck anfängt, und meine Fähigkeiten sind definitiv eingerostet. Außerdem frage ich mich, wie machbar es wäre, damit eine komplette HyperCard-basierte Website zu erstellen.
Ein Login ist ebenfalls möglich.
https://hcsimulator.com/mmphosis/Stack
Aus der Perspektive von jemandem, der zu jung war, um die HyperCard-Ära mitzuerleben: Ich frage mich, worin der eigentliche Reiz lag. War es die Zugänglichkeit der Technik, oder war es einfach ein wirklich gut umgesetztes Produkt?
Da Code visuell an Widgets gehängt wurde, war sehr klar spürbar, dass dieses Stück Code jene Aktion auslöst, wenn man auf einen Button klickt oder etwas in ein Textfeld eingibt. Außerdem implementierte die HyperCard-Umgebung auch Objektpersistenz, sodass man keinen eigenen Code für Dateiverarbeitung oder „Zustand speichern“ schreiben musste, was nützlich war. Natürlich konnte es wegen dieser Semantik schwierig sein, die Ursache zu finden und zu beheben, wenn man einen Stack beschädigte, aber insgesamt war transparente Objektpersistenz meiner Ansicht nach ein großer Vorteil.
Und wenn man einen Mac hatte, war es buchstäblich direkt da. Apple verkaufte es kurz als eigenständiges Produkt für 49,95 Dollar und begann dann, es rund zehn Jahre lang mit jedem neuen Mac zu bündeln. Wenn ein Mac System 6, 7, 8 oder 9 hatte, hatte er HyperCard, und in dieser Zeit war es auch beim Apple IIGS enthalten. Ich erinnere mich, trotz der Grenzen einige ziemlich nichttriviale Apps gesehen zu haben, die in HyperCard umgesetzt waren.
Vor allem machte HyperCard Personal Computing wieder persönlich, auf eine Weise, die seit der Zeit verloren gegangen war, als Computer direkt in einen BASIC-Interpreter booteten, und das war etwas sehr Gutes. Falls diese Erklärung nicht ausreicht, kann man sich diesen Auszug ansehen: http://www.cvxmelody.net/HyperCard%20IIGS%201.1%20-%20The%20...
Es war eine gut gemachte, Smalltalk-ähnliche Sprache, ergänzt um RAD-Komponenten, die das Erstellen von GUIs – wenn auch eingeschränkt – auf ungefähr die Komplexität von PowerPoint reduzierte. Man konnte sie einem „schlauen“ Kind geben, und mit sehr wenig Erklärung konnte es zumindest Interactive Fiction erstellen. Die meisten HyperCard-Stacks konnte man als nichtlineare PowerPoint-Slidedecks betrachten: Karten mit Buttons, die per goto-Anweisung zu anderen Karten sprangen.
Ich war in den 90ern ein Kind und habe vage Erinnerungen an verschiedene kleine Spiele und Programme, die auf dem Familien-Mac liefen. Unser erster Mac war vermutlich ein Mac SE. Rückblickend waren das wahrscheinlich HyperCard-Programme.
Es gab so etwas wie ein interaktives Bilderbuch über eine schwarze Katze; den Namen habe ich vergessen, aber ich weiß, dass es auf Macintosh Garden zu finden ist, und ich bin zu 99 % sicher, dass es HyperCard war. Mein Vater gab mir ein Programm namens Soroban, das im Grunde ein Abakus war und, soweit ich mich erinnere, einfache Rechenaufgaben stellte, die man mit dem Abakus lösen musste. Vielleicht hatte mein Vater es selbst geschrieben, aber sicher bin ich nicht. Leider weiß ich heute nicht mehr, wie man einen Abakus benutzt. Ich frage mich, welche weniger bekannten HyperCard-Programme mir damals begegnet sind.
Erwähnenswert: Carson Gross hat _hyperscript[0] entwickelt, eine von HyperCard inspirierte Sprache, die im Browser interpretiert wird.
Derselbe Carson Gross hat auch htmx[1] entwickelt. Die beiden sind getrennte Projekte, greifen aber gut ineinander.
[0]https://hyperscript.org/
[1]https://htmx.org/
Meine Güte, hier ist ein Stack, den ich vor 30 Jahren erstellt habe! Leider funktioniert er im Simulator nicht richtig.
Eine Frage, die mich immer wieder beschäftigt: Welches moderne Tool leistet heute genau das, was HyperCard damals getan hat? HTML/JavaScript vielleicht?
Die eigentliche Stärke von HyperCard lag darin, dass einfache Nutzer, also Nicht-Programmierer, ihre eigenen Apps – in HyperCard-Begriffen „Stacks“ – durch Zeigen und Klicken sowie mit HyperTalk, einer englischähnlichen Skriptsprache, erstellen konnten.
Weil wir die Idee, dass Nutzer ihre eigenen Apps bauen können sollten, weitgehend aufgegeben haben, gibt es kein populäres modernes Gegenstück zu HyperCard. Trotzdem versuchen es weiterhin einige. LiveCode zum Beispiel ist ein kommerzielles Produkt, das direkt von HyperCard inspiriert wurde, und CardStock ist ein Open-Source-HyperCard-Klon, der statt einer englischähnlichen Sprache Python als Standard-Skriptsprache nutzt.
https://livecode.com/
https://github.com/benjie-git/CardStock
Als HyperCard erschien, war es auf jedem Mac enthalten, kostenlos, und es gab auf dem Mac nichts Vergleichbares. Die Alternative war, UI-Widgets ohne GUI-Builder per Code zu platzieren oder später viel Geld für eine Profi-IDE wie CodeWarrior auszugeben. Wenn ein Einsteiger ohne Budget einen GUI-Builder für den Mac wollte, hieß es HyperCard oder gar nichts; daraus entstand die HyperCard-Fan-Community.
Außerdem hatten Macs damals eine Standard-Bildschirmauflösung. Alle verkauften Macs hatten eine Auflösung von 512x342 Pixeln, sodass man genau wusste, wie eine Karte auf jedem Mac aussehen würde. Unterstützung für größenveränderbare GUIs ist eine der schwierigsten Aufgaben in jedem GUI-Builder. Etwa wegen Fragen wie: Wie sollen Buttons angeordnet werden, wenn der Bildschirm so klein wie ein Smartphone oder so breit wie ein 16:9-Monitor wird? Das heutige Xcode verwendet einen ausgefeilten Constraint-Solver/Theorem-Prover, damit Entwickler in der GUI größenveränderbare UIs bauen können, und meiner Ansicht nach funktioniert das ziemlich gut – aber es kann nie so leicht zu lernen sein wie „Button auf den Bildschirm ziehen, und überall sieht es exakt so aus“.
Der letzte wirklich fatale Grund für moderne Möchtegern-HyperCard-Tools ist, dass der Weg von einem Web-GUI-Builder zu rohem HTML/CSS kurz ist. Man muss kein großes Geld zahlen, um Zugriff auf professionelles HTML, CSS und JavaScript zu bekommen. Es ist nicht leicht zu lernen, aber es ist kein Problem, einem Kind beizubringen, interaktive Webseiten zu schreiben.
Daher ist die Nachfrage nach einfachen GUI-Buildern geringer als zu HyperCard-Zeiten, und selbst wenn man Nutzer gewinnt, entwachsen sie dem Produkt meist schnell; außerdem gibt es enorm viele Konkurrenten, sodass es für kein Tool leicht ist, eine Community mit echter Zugkraft aufzubauen.
Selbst wenn man sich nur auf HTML beschränkt, macht das Erstellen damit bei Weitem nicht so viel Spaß wie mit HyperCard.
Im Grunde sieht es HyperCard auch ein wenig ähnlich. Es hat einen Low-Resolution-Look, intern gibt es aber auch Farben.
HyperCard erschien in einer Zeit, in der Nutzer von Personal Computern noch lernten, was Computernutzung überhaupt bedeutet. Genau dieser Moment war einer, in dem End-User-Programming und formbare Systeme wie HyperCard hätten führend werden können. Über OpenDoc kann man in gewissem Maß Ähnliches sagen, aber es ist etwas anders.
Was war HyperCard aus Unternehmenssicht überhaupt? Eine Möglichkeit, Computeranwendern zu erlauben, ihre grundlegenden Apps einfach selbst zu bauen? Wie verdient man dann weiter Geld? Was passiert mit der Entwickler-Community des Computers? Aufgrund solcher kommerziellen Bedenken sind heute sowohl die Art, wie Nutzer am Personal Computing beteiligt sind, als auch die Werkzeuge, mit denen wir Computing-Umgebungen manipulieren, stark durch Konsummodelle geprägt; zwischen Nutzern und Programmierern besteht eine starke Trennung.
Der Grund, warum es heute kein echtes HyperCard-Gegenstück gibt, ist, dass Personal Computing eine andere Richtung eingeschlagen hat.
Wie ist das im Vergleich zu Decker?
https://beyondloom.com/decker/index.html
Decker ist eine Open-Source-Standalone-App, die HyperCard in mancher Hinsicht ähnelt, sich in den Details aber stark unterscheidet, etwa weil sie eine eigene, von APL abstammende Skriptsprache verwendet. Decker wurde nicht dafür entwickelt, mit HyperCard-Stacks kompatibel zu sein.