[HN Gopher] Hypercard Simulator
___________________________________________________________________
Hypercard Simulator
Author : alexmingoia
Score : 166 points
Date : 2022-01-30 16:30 UTC (6 hours ago)
(HTM) web link (hypercardsimulator.com)
(TXT) w3m dump (hypercardsimulator.com)
| sharkweek wrote:
| Now somebody build me a Creative Writer simulator with mascot
| McZee.
|
| I still remember the little jingle theme song and randomly hum it
| to this day.
| abemiller wrote:
| Everyone in this thread reminiscing about hypercard and how more
| modern no-code tools still have not matched its amazing
| functionality and UI.
|
| So, what's to stop someone today from making a modern hypercard
| clone? I imagine something which has the exact same UI logic as
| hypercard and allows projects to be exported as JavaScript
| WebApps. Is it not possible?
|
| Seems like it should exist! Inviting any volunteers...
| pvg wrote:
| _still have not matched its amazing functionality and UI_
|
| This isn't because people just ignored or forgot Hypercard -
| similar tools just evolved in many different directions and
| many of them were much more popular than Hypercard. FileMaker,
| Access, Visual Basic and their ilk come to mind; the current
| crop of 'no code' tools are also distant descendants. A key
| difficulty isn't replicating the UI, it's coming up with a
| tool/system that's both accessible to non-experts while also
| providing a smooth 'power curve' to the more sophisticated
| features of the platform. Without that, motivated beginners
| quickly run up against the limitations of the built-in
| functionality or a big jump in conceptual and practical
| complexity.
| jayd16 wrote:
| Hypercard is absolute layout, I think. A large part of UI
| complexity is handling all the aspect ratios.
| soapdog wrote:
| There is a bunch of them out there. Many died in the last
| twenty years. The only ones that I am aware of that are in
| active development are LiveCode and SuperCard.
| hyperhello wrote:
| We could call it HyperCardSimulator.com
|
| :-D I'm the developer of this, and particularly proud that not
| only can you Import stacks, icons and all, but you can Export
| single page web apps that end in .stack.html and run in any
| modern browser! It's all in the hamburger menu.
| buescher wrote:
| Bravo! But, I picked a stack at random from archive.org,
| probably one that was too complex, and it just threw an error
| when I tried to import it. What are some limitations to be
| aware of?
| hyperhello wrote:
| The importer will open StuffIt and old OS disk images just
| like archive.org gives you, but something unexpected could
| have gone wrong. I'll probably do a few bug fixes tonight.
| Lammy wrote:
| There's SuperCard, but I've not tried it
| https://en.wikipedia.org/wiki/SuperCard
| scroot wrote:
| > So, what's to stop someone today from making a modern
| hypercard clone?
|
| One issue is the HyperCard fit holistically with Macs of the
| 80s and early 90s. A straight clone doesn't quite make sense
| today -- perhaps we need slightly different metaphors.
|
| Last year I was a part of a research team that explored some of
| this. We ended up producing a system called Simpletalk [1],
| which is essentially a web-based system and scripting language
| inspired by Smalltalk and Hypercard. If you are interested, I
| also gave a talk [2] on some of the motivations and design
| behind the system.
|
| [1] https://github.com/dkrasner/Simpletalk
|
| [2] https://www.youtube.com/watch?v=5U6MkU5fLJw
| throwthere wrote:
| For those who weren't in elementary school in the 90s, Hypercard
| was the OG no-code platform.
| pjmlp wrote:
| Not every country had Macs on elementary school in the 90s,
| specially outside US.
| hoppyhoppy2 wrote:
| I learned how to use Hypercard for Windows at school in the
| late 90s! (My school's computers all ran MS-DOS or Windows.)
| pavlov wrote:
| The seamless transition between editing and interaction modes is
| still unparalleled.
|
| There's basically no difference between using something and
| creating it. I recall this was a very empowering feeling on the
| original Mac when I was a child.
| jheitzeb wrote:
| Was reading about Bill after seeing this post and found this
| quote: "Inspired by a mind-expanding LSD journey in 1985, I
| designed the HyperCard authoring system..." - Bill Atkinson
| hedgehog wrote:
| He's an interesting guy. Went on to do some really good nature
| photography, I used to see his work on the wall at Cafe Borrone
| in Menlo Park.
| drallison wrote:
| "Simulator", the term, is misused in this post. In common usage,
| an implementation of a programming system is not called a
| "simulation". For example, the"cross-platform Visual Basic clone"
| mentioned by rgovostes in the comments is not called a "Visual
| Basic simulation". For common usage, see
| https://en.wikipedia.org/wiki/Simulation and the associated
| disambiguation page. Consult Google for alternative usage.
| Language is dynamic, fluid, and occasionally fickle, but for
| effective communication we need to stick with commonly accepted
| usage unless there is good reason to depart from same.
| rgovostes wrote:
| I started out with HyperCard and when I outgrew it, upgraded to
| REALbasic, a cross-platform Visual Basic clone (now Xojo). When I
| started college I switched to writing C++, which I perceived as a
| more "professional" language, but in doing so left the GUI behind
| and started producing almost exclusively command-line tools.
|
| When I try to write a GUI app these days, I'm stunned by how much
| harder it seems. As an elementary school student I could churn
| out HyperCard stacks without being able to search Google, ask on
| StackOverflow, or watch a YouTube tutorial.
|
| One of the things modern tools left behind is how the code and UI
| were bound together. In HyperCard or REALbasic, the code for what
| a button does is "inside" the button, so if you want to know how
| it works or modify its behavior, you just "open it up" it in the
| editor. Stringing together IBActions or attaching event handlers
| to DOM elements may be a more general solution, but most of the
| time the distance it introduces between the button and its effect
| is just extra cognitive overhead.
| blowski wrote:
| > One of the things modern tools left behind is how the code
| and UI were bound together
|
| That seems wrong to me, unless I've misunderstood your comment.
| It's more like there's a saturated market full of such tools.
|
| Microsot Power Apps, Quickbase, Mendix, Salesforce Platform all
| provide "no-code solutions" that let you drag and drop and
| customise with code. Then there are Bootstrap generators that
| you let you control layout. I've seen plugins that integrate
| React components into a WYSIWYG editor. Even PowerPoint has
| easy to attach custom actions for desktop presentations.
| golem14 wrote:
| IMO, the problem is that many of those tools are really not
| that reliable in the sense that they may go away soon.
|
| It all takes a company to be acquired by M$, GOOG etc and
| then taken offline. For example, I lived through Google
| Appmaker (absolutely fantastic!) which was retired with 6
| months notice.
|
| It's really risky to build larger app on no-code platforms
| that you don't fully control via self-hosting. And I don't
| know great open-source/open-core low/no-code stacks that are
| easy to use and expressive enough. It would be great to get
| pointers.
|
| I guess a the height of hypercard, that really wasn't really
| on people's radar.
| blowski wrote:
| Sounds like you're worried about what happens if you embed
| and tightly couple a lot of your business logic to
| something you don't have full control over? That's a
| totally valid concern, and probably one of the reasons
| we've tended to move away from these tools and towards
| doing everything in stable programming languages.
|
| It's a classic set of trade-offs - quality, features,
| stability, security, price. There are lots of solutions on
| the market offering one configuration of those trade-offs.
|
| If it existed today, some people would push for HyperCard
| to support mobile apps, multi-user access, web-based and
| native apps, all of which would make the solution 'worse"
| for others.
| jmiserez wrote:
| > _I guess a the height of hypercard, that really wasn 't
| really on people's radar._
|
| It didn't matter yet. People were shipping the software
| they made in HyperCard to customers on floppies or CDs.
| IIRC these were self-contained executables, so you didn't
| need to have HyperCard installed for it to run. One of the
| most famous examples of this was Myst:
| https://en.wikipedia.org/wiki/Myst.
| klodolph wrote:
| Myst is an interesting example... while it's definitely a
| HyperCard stack, it relies heavily on XCMDs and XFCNs...
| which let you call into native code. So while it's
| certainly the most famous example of a program written in
| HyperCard, it's not a typical or representative example
| of how people made HyperCard programs.
|
| Here's a recent thread about it:
| https://twitter.com/uliwitness/status/1408841306013581313
| Closi wrote:
| None of these apps are really priced in a way that allows me
| to build an app and share it with people as a personal
| project though.
|
| Let's assume that I want to build a simple app for my local
| theater troupe, which will have 20 users:
|
| * Quickbase starts at $600 a month
|
| * PowerApps costs me PS7 for every user I want to give access
| to the app
|
| * Salesforce again costs me PS20 per user per month
|
| * Mendix costs me PS10 per user
|
| All these are priced at enterprises that have deeper pockets
| than a personal project or small community org can stomach.
|
| If you just want to make a cool app and share it with some
| people online, none of these products have commercial models
| which are compatible when you compare it against the 'old
| fashioned' ways to build apps like WinForms, Flash etc.
|
| I would love to find an alternative to these products with a
| commercial structure that means if I build something cool I
| can share it on HN without it bankrupting me.
| blowski wrote:
| I think that's a different point to the OP, which was more
| about Hypercard (which would not support your app idea as
| it's not multi-user).
|
| That said, there are also alternatives in that space:
|
| * Drupal
|
| * WordPress - particularly with Forms and Elementor
|
| * SquareSpace, Wix, Netlify all have free tiers (depending
| on what your troupe users can do)
| [deleted]
| Closi wrote:
| I don't personally think any of those start to scratch
| the capabilities of WinForms or an old-school Access DB -
| These are just the ability to create a static site, or at
| most submit some data through a form, not build an actual
| application.
|
| I know Hypercard wasn't multi-user, but you could make
| something and then send it to someone without incurring
| fees.
|
| Regardless of the technology and requirements though,
| which will be specific to each project, I just wanna be
| able to make stuff and show it to people :) (and not just
| a static site with a form).
|
| And if I need to make certain apps quickly, why is Access
| still a compelling choice? (PLEASE someone tell me an
| alternative if there is one for the sort of app you would
| build in an Access DB, I genuinely want to know!)
| blowski wrote:
| So why not use WinForms?
| egypturnash wrote:
| _One of the things modern tools left behind is how the code and
| UI were bound together._
|
| For a while, Flash had this, and it was one of the things that
| made it fun and easy to hack stuff together with. Then
| Actionscript 3 happened and that wasn't allowed any more
| because AS3 was a Serious Language for Serious Developers.
|
| (Actionscript 1 was a horrible thing you could only enter by
| selecting keywords from a dropdown menu, it was really terrible
| for doing anything more than basic interactivity. AS2 hit a
| real sweet spot of being something you could quickly type into
| a text box and tie closely to the objects in the editor.)
| dhosek wrote:
| The problem with this model is that it ends up being an
| invitation to mix "business" logic with the UI. I look at some
| of the PHP code I wrote (back when it was still PHP3) or some
| of the JSP stuff I've had to work with and this model of
| development always ends up an unholy mess.
| falcor84 wrote:
| I wonder if there could be some "gradual" approach here where
| perhaps you'd have levels of maturity that you can evolve a
| project thorough over time. Perhaps something such as:
|
| 0: no separation of concerns whatsoever, just quickly hacking
| at it.
|
| 1: no separation of concerns required, but you have to label
| each component as having one or more concerns. This would
| still allow for mixed "business+presentation", but you can
| add constraints such as "a pure business component is not
| allowed to depend on a pure presentation component".
|
| 2: No mixed-concerns components allowed. So you have to split
| them somehow, but they can still interact in arbitrary ways.
|
| 3: All interaction across concerns has to go through specific
| interfaces, such that it's easy to replace implementations
| (e.g. using dependency injection).
| vermilingua wrote:
| For me, React and SwiftUI definitely fill this niche. React
| requires more googling but it's still fairly simple to throw
| together a functional UI. SwiftUI is even easier, but when you
| want to customise away from the Apple provided appearance it
| gets considerably harder than with React.
| soapdog wrote:
| Couple years ago I wrote a blog post about how LiveCode is a
| modern day HyperCard:
|
| https://andregarzia.com/2019/07/livecode-is-a-modern-day-hyp...
|
| I still believe that people who enjoy HyperCard or want to
| experience something similar but with current day comforts should
| check HyperCard out.
|
| Oh, while I wrote that post I was working for LiveCode but I'm no
| longer with them. Still like them a lot though.
| D-Coder wrote:
| LiveCode is great. I have half a dozen LiveCode apps (some
| originally in HyperCard!) that I use every day.
|
| Disclaimer: Just a happy customer.
| jawngee wrote:
| Livecode's pricing is insane.
| soapdog wrote:
| Well, to each their own, but I find the starter plan with a
| single platform deployment at 7.99 per month pretty OK.
|
| I must say that I see a lot of value in LiveCode. I have a
| standard plan with lots of deployment options, enabling me to
| ship software for macOS, Linux, Windows, Android and iOS. It
| is not cheap, but I'm OK with it as I use it for professional
| work. LiveCode is a small company and making money on niche
| software development languages is quite hard. Sometimes
| selling cheap licenses is not a good option when your market
| is quite small.
| [deleted]
| tomcam wrote:
| Compared to what products supporting so many platforms with a
| commercial quality IDE, and regular updates?
|
| Can you find even a single competitor?
| jawngee wrote:
| Who cares about competitors when you barely have any market
| share for yourself? You can be the greatest IDE in the
| world, but if barely anybody is using you how great are you
| really?
|
| The fact that their lowest pricing tier ties the apps to
| the account is bonkers too. If that account lapses in
| payment, any apps built by the account cease functioning.
| Not even Apple is that brazen if your developer account
| lapses.
| soapdog wrote:
| That is because that account is for learning and building
| stuff for your own usage. If your objective is to ship
| software, you're supposed to go with a standard license.
| Apps built with them don't have such checks in place.
| [deleted]
| solarmist wrote:
| Did the source for HyperCard ever get released?
| rgovostes wrote:
| I had heard that the sources were donated to the Computer
| History Museum along with MacPaint and QuickDraw, also invented
| by Atkinson. However they have not released it.
|
| https://computerhistory.org/blog/macpaint-and-quickdraw-sour...
| pvg wrote:
| That link mentions MacPaint and QuickDraw and links the
| source archives right there. HyperCard doesn't come up.
| cmrdporcupine wrote:
| The sources for the Lisa's OS were also supposed to get
| donated to the CHM many years ago but have never
| materialized.
| rileyphone wrote:
| Recently I've been on something of a HyperCard kick despite being
| too young to have ever used it. The impression I've gotten of it,
| as a tool that was radically simple to use and create with, leads
| me to believe there is some spark of genius within it. Within the
| greater purview of end-user development it still shines as one of
| the greatest successes. Still waiting for the dream to be
| realized.
| FullyFunctional wrote:
| Kudos on HyperCard Simulator, brings back good memories.
|
| HyperCard was brilliant but as others mentioned, partly this was
| enabled by limiting the scope. You still had to learn the
| scripting language though.
|
| While dramatically different, MIT's Scratch enables kids (and
| older "kids", ahem) to experience the same immediacy and ease of
| use and having witness the output of my 10 yo, I dare say he
| could produce anything I could do with HyperCard and more with
| Scratch.
| joe_g_young wrote:
| I would be interested in a HyperCard and scratch hybrid
| application.
| zapstar wrote:
| HyperCard was ahead of its time, and I still don't think we've
| seen a solution as approachable and flexible.
| klyrs wrote:
| Flash seemed like an evolved form of HyperCard, and the
| proprietary nature of both were ultimately their demise. I
| retain some hope that somebody will redo / updo this family of
| tools on top of a cross-platform game engine like Unity.
| Shared404 wrote:
| > the proprietary nature of both were ultimately their demise
|
| Agree.
|
| > I retain some hope that somebody will redo / updo this
| family of tools
|
| Hard agree.
|
| > on top of a cross-platform game engine like Unity.
|
| Wait what? Wouldn't you want it to be implemented at the very
| least on something like Godot, which is open source?
|
| Aside from that, I think we are in full agreement on this -
| though my dream would be something like this on uxn (because
| I love the concept of uxn, I don't know that it would
| actually be feasible to do so - I suspect it wouldn't.)
| klyrs wrote:
| Sorry, Unity was the first that came to mind, I forgot it
| was closed. Good call.
|
| Though, I should clarify... the missed opportunity with
| Flash is that there was no good reason for the .swf format
| to be closed. IIRC, there were a few attempts made at
| making non-Adobe Flash players, but they were always
| terrible because of the necessary overhead of reversing the
| format.
|
| Even if the initial version was built on Unity, as long as
| the creations were saved to an open and well-documented
| file format, alternative players could be written which
| would be a boon to the ecosystem.
| Shared404 wrote:
| That seems reasonable.
|
| Honestly, I think open formats and protocols are more
| important in general than open code -- which is of course
| why we see them less and less these days :( .
| smoldesu wrote:
| GTK3 with Glade was a really great (albeit considerably more
| complicated) tool to do more or less the same thing with
| modern design paradigms and more complicated, capable
| widgets. Unfortunately, the GTK devs seem to be moving away
| from simple UI design with GTK4, making it pretty undesirable
| for building anything other than complex, hulking apps.
|
| I still have a plethora of weekend projects made with GTK2/3
| sitting around on my drives. Little MPRIS controllers, simple
| icon viewers, petname generators, hashing applications...
| I've got half a mind to fork GTK3 into a simpler UI design
| tool if I had the time for it.
| analog31 wrote:
| Aside from Bill Atkinson simply being a genius, a shining trait
| of HC is that it didn't try to do everything.
|
| There was a successor to HC called SuperCard (which I used to
| create a printed circuit board drawing app). SC added all of
| the features "missing" from HC, such as a large variety of
| different window types. In the process, it became harder to
| use, for not very much gain. Having both HC and SC on my
| computer, I invariably reached for HC, even when it meant that
| my programs didn't look quite as snappy.
|
| For me, HC was what made it tolerable to use a Mac. I did some
| pretty outrageous things with it, such as controlling a
| primitive custom machine tool. I did have to create some "code
| resources" in Pascal or C to access my hardware interfaces, but
| those codes were often on the order of a couple dozen lines,
| and rarely needed to be maintained.
|
| Visual Basic made the same mistake. The more "professional" it
| became, the harder it was for the people who were actually
| interested in using it. I stuck with VB5 long after VB.NET came
| out.
| gcanyon wrote:
| That's an interesting point about not doing everything.
| Livecode is a more powerful, capable tool very much based on
| HC, and while it has a great power-to-complexity ratio, I
| don't think it's (made up numbers) 5x more powerful, but 8x
| more complex. https://livecode.com/
| [deleted]
| uberman wrote:
| Way ahead.
|
| The original "greatest game of all time" Myst was implemented
| in Hypercard at least for the initial Mac release.
| cableshaft wrote:
| Didn't know that, but not surprised. When I got to play with
| Hypercard in elementary school, I drew houses and paths and
| put buttons on the paths to navigate between the screens,
| with some text to tell a very simple story (wish I still had
| it, but it's long gone. I only vaguely remember what a couple
| of screens looked like).
|
| If I had more time with it maybe I might have been able to
| turn it into a proper game. Not on the same level as Myst,
| though, of course.
| gcanyon wrote:
| Not _as_ approachable, but similar to HC and you get much more
| functionality for the learning curve: https://livecode.com/
| freemint wrote:
| Look at the paper: Implementation of Label Metaphor Using
| Shared Interaction Object Architecture by Koshizuka and
| Sakamura.
| lioeters wrote:
| Implementation of Label Metaphor Using Shared Interaction
| Object Architecture
|
| https://sci-hub.st/10.1109/tron.1994.378614
| based2 wrote:
| Others Macintosh gems:
|
| - https://en.wikipedia.org/wiki/ResEdit
|
| - https://en.wikipedia.org/wiki/Fontographer
|
| and later
|
| - https://en.wikipedia.org/wiki/Kai%27s_Power_Tools
___________________________________________________________________
(page generated 2022-01-30 23:00 UTC)