New(?) Idea for Standalones

Richard Gaskin ambassador at fourthworld.com
Fri Mar 26 22:43:12 EDT 2021


Alex Tweedly wrote:

 > On 27/03/2021 00:35, Richard Gaskin via use-livecode wrote:
 >>
 >> What are you looking for?  When were these "good ol days" in which
 >> one could run stack files without an engine, and how did that work?
 >>
 > I can describe what I would like; that may be similar to what Roger is
 > looking for. Or it may not.
 > But I think it is :-)
 >
 > I'd like to be able to develop a stack and give it to a friends or
 > family, and have them run it on their iOS or Android devices. I don't
 > want to get involved in building iOS standalones (or even installing
 > xCode), so ideally I would give them a simple app (i.e. stackRunner
 > kind of thing), and then my "app" as a document to load into that
 > 'runner' app.
 >
 >> There are many reasons it would be problematic to make one generic
 >> "player" for everyone's stack files, mostly user experience but also
 >> app store restrictions, and additional technical requirements for any
 >> devs using it to keep stacks playing nicely together.
 >
 > I'm not going to sell apps, or distribute them widely, so I (don't
 > think  I) care about app store restrictions.

None of us would, because Apple's app store explicitly prohibits apps 
that act anything like app stores, so any distribution would be outside 
of their app store.


 > I also don't care about 'user experience' in the sense of branding or
 > feeling like a unique app.

If I were delivering a standalone that ran stacks as courses for 
elementary students, I'd design it differently than if the standalone 
were aimed at adult learners, or at organizations where the stacks could 
be collaboration or productivity tools.

Everything, even with the most trivial products, comes down to: What are 
you making and who's it for?

A one-size-fits-all really fits none, with either clothes or software.

This is something that's been part of my career since the mid-90s, when 
I was working on this very question with the folks at Allegiant 
Technologies for SuperCard. Much of the work I've done all these years 
is building authoring systems for people to deliver interactive 
experiences.  I've had lots of time across a dozen industries to think 
this through.

A generic player is one of those things that seems simple, but is only 
simple in practice to the degree that it doesn't deliver a great experience.



Let's set design aside for the moment and look at one other corner of 
this: licensing.

A generic player poses a potential risk to proprietary editions of LC, 
since it could be used as a way for folks to bypass a need for licensed 
standalone building.  Understandably, the LC EULA for the proprietary 
editions prohibit building a generic player.

However, the GPL serves an entirely different set of goals, emphasizing 
the freedom for the recipient of a work to do whatever they want with it 
all the way down to the source code.

This makes the Community Edition a natural fit for a generic player, 
since the proliferation the license explicitly encourages would be very 
much with the grain of its goals.

But then we have to ask: how many of those who might enjoy a generic 
player embrace the GPL with the stacks they'd like to distribute it with?

If there's enough people into the GPL that part of the licensing 
questions is solved.  But at the moment I'm not sure that's the case, 
and even if it is we're still left with the other question of 
security/liability:


If I make a standalone that runs stacks designed for a specific range of 
needs under my supervision, I have no problem putting my name on it 
since it's all code I can vet.

But if I make a generic player and someone else decides to distribute 
malware for it, LC is quite powerful, and quite powerful damage could 
result, rapidly, to the lives of everyone who ran it.

Of course, depending on the jurisdiction, chances are good I'd prevail 
if someone tried to assert that my company's reputation is what 
encouraged them to believe that any stacks run with it would be at least 
reasonably safe, despite whatever disclaimer I'd included (case law is 
mixed on this).

But can you imagine the time and money needed to defend a case like that?

It only takes one annoyed person with deep pockets to turn your life 
into a living hell, even if you eventually "win" the case.



 > I'm not sure what you mean by  "additional technical requirements..."
 >
 > If that's feasible, I'd happily buy (or contribute cost towards) such
 > a 'runner' app. I doubt that I'd be the only one.

The technical side of this would be longer than the above, which is 
already too long.  I've found that the more complete my answers here the 
less they're read, so there's a point where mail lists just aren't a 
great place for deep dives.


TL/DR:

If all one wants is a vanilla runtime engine and doesn't care about 
either user experience, licensing, or security, just make a standalone 
with an "Open File..." item in its file menu and you're done.

You still need to get the engine to the user, but that only needs to be 
done once.

Anyone can build that.  Keep it for your own stuff among friends and no 
one will likely mind; or distribute it broadly under GPL with the 
Community Edition and you're good with that too.


Anyone interested in a more serious effort to distribute works within a 
solid design and architecture for a specific segment -- whether 
education, business, or something else -- drop me an email and let's talk.

-- 
  Richard Gaskin
  Fourth World Systems
  Software Design and Development for the Desktop, Mobile, and the Web
  ____________________________________________________________________
  Ambassador at FourthWorld.com                http://www.FourthWorld.com





More information about the use-livecode mailing list