[not quite OT] Serving a standalone

Richmond richmondmathewson at gmail.com
Sun Feb 8 11:14:17 EST 2015


On 08/02/15 15:52, Graham Samuel wrote:

Right . . .
> As with so much in this world, technical and otherwise, I am profoundly ignorant of the following, and I’d be grateful for any explanations, best practice etc.
>
> The idea is as follows:
>
> 1. I write a desktop program (OK, an app) that runs, say, on PC and Mac. Good LC territory. This program is capable of saving some parameters, files etc on behalf of the user. Some of these files will be anonymous, in that the user won’t see them or be able to change their names or file paths - they are just there to maintain the state of the program between activations - this is a very widespread notion throughout modern computing.
>
> 2. Now, some institution - like an enterprise, school etc - buys a “site license” for the app, which means they’ve paid to have (say) up to 20 simultaneous users.
Messy model.
>
> 3. When the purchase is made, someone (probably a technical support person) loads up the app onto a server belonging to the institution and registers it: some kind of registration file is kept on the server, controlled by the initial instance of the app (I’m sure Jacque’s Zygodact would be an excellent component of this).
>
> 4. When a user wants to run the app, they sit at their personal computer, contact the server, and download the app.

That seems wide open to abuse. Have a computer lab in the college with 
20 dedicated machines running your program; and that's all!

OR: sing some "dirty" agreement with the institution where every time a 
student downloads a copy of your program you get paid, but
the institution gets a cut of the fee.

>   This is where the fun starts.

First question:

Does the system administrator scrub the individual computers at the end 
of every day and do a clone of the system
from the disk image the next day?

If so, Jack, Jill and the so-far-unnamed transgendered individual will 
all lose their data.
>
> 6. What happens now when that downloaded instance of the app is called upon to save a file? Is it just saved on the local computer? If so, what if Jack and Jill both use the program on the same machine at different times? Will Jill’s files overwrite Jack’s, and if we don’t want this, how can we prevent it? How much work will the app itself have to do? I think I understand this one: the app will have to associate each file with a directory created especially for an individual. This is not hard, especially if Jack and Jill have separate user spaces - we can insist on this. But maybe these files end up on the server - does this ever happen?

Second question:

My wife uses Rosetta Stone to improve her German, and my kids also have 
used it in the past. When the program is started
there is a list of users + the chance for a new user to set up an account.

Presumably each person's data is saved into a separate file.

Why can't you do that?
>
> 7. While Jill is working, many others start work.

> Anselma

Wow! "Anselma" . . . now we are labouring to show off our tertiary 
education :) Or is this the transgendered individual?

> downloads another instance of the app to her own computer. How does the original copy on the server know whether this is legit (not greater than the twentieth user in my example) or not (the 21st user),

Well, you will have to have something set up on the source machine to 
count copies . . .

If they are doing a system clone each day that is going to get problematic.

> and indeed how do any of the users know the app is already registered? More particularly, how much work does the app have to do to manage this?
>
> This is really the key question - what do servers generally do to support multiple instances as described above? Maybe it’s nothing, in which case the ‘server’ version of the app will need a lot more development work than the version intended for a single individual; or maybe it’s so much that the app doesn’t need to know anything about the server once the user has done the download.

If the sys. admin. is doing a clone each day then the server has to 
"reach out" and save students' data from those computers
before they are wiped, and restore them after a system clone.

Of course . . . individual students might be afforded a way to save 
their personal data from your program on a usb flash-drive
so they, rather than the program and/or the sys. admin. takes 
responsibility for backing up their data.
>
> For me this is a real case, and I just don’t know how to learn more and thus get started.
>
> TIA for any discussion and help.
>
> Graham
>
>
  Just my 50p :)

Richmond.




More information about the use-livecode mailing list