[sugar] Resuming by default
Mike C. Fletcher
Tue Oct 23 10:23:55 EDT 2007
Tomeu Vizoso wrote:
> On Tue, 2007-10-23 at 09:27 -0400, Mike C. Fletcher wrote:
>> Bert Freudenberg wrote:
>>> You guys are caught up way to deep in technical detail already. I'd
>>> place the desired user experience first, then see if this has
>>> security implications, and then worry about implementation.
> Agreed with that, but who has been talking about concrete implementation
I believe Bert was referring to my proposals for how to implement the
> Activities can already store configuration data that is not tied to an
> activity session in their own profile dir (env var SUGAR_ACTIVITY_ROOT,
> something like ~/.sugar/default/<activity bundle id>).
Fine, but it lacks version control, doesn't have visibility in the
Journal, and is generally kind of hacking around the idea of the Journal
being the storage on the machine. It also requires special support in
the backup systems. If all file-system access is going to be Journal
based, why are we not using it for this type of work? Why do we have a
"special" external storage instead of making the Journal capable of this
kind of operation?
The answer is probably "time". I do realise that. Still, going
forward, if we are going to require substantial rewriting of activities
to port them to the Journal anyway, why not provide the services so that
settings information get all the benefits of the Journal that we are
providing for content information.
>>> So I think not resuming by default is a real obstacle to making good
>>> use of the Journal idea.
>> Resuming by default is a particular application design. Starting fresh
>> each time is another design. Neither is necessarily correct or proper,
>> they are design-time (or even run-time) decisions that should both be
>> supported. Your own experience with porting eToys to the platform has
>> shown that making such application-level design decisions at the OS
>> level causes all sorts of problems, particularly when porting
>> already-extant code-bases. The OS should support *either* approach.
> I certainly see it not only activity dependent, but also dependent on
> how a particular user uses a particular activity.
> And having some activities resuming by default and some others showing a
> blank sheet, looks like confusing to me... How can we explain that
They are different. This one goes back to where you were. This one
starts at the same place each time.
As the children grow familiar with the machine, you can explain the
security system and the ability to let a given activity start with its
last content via the security settings page. Children are quite capable
of dealing with such differences. Activities that start with default
resumption are going to be those where it makes sense, or where the user
has explicitly configured that resumption.
Consider these questions:
* why doesn't my mail client remember my emails from yesterday?
* why does the mail client remember my emails from yesterday, but
the word processor starts with an empty page each time?
the first is a simple, concrete question regarding why something doesn't
work. The second is a complex abstract question that requires
type-based reasoning. While we (most of us being over 12) think of the
second as a serious question, most 7-11 year olds are still in the
concrete operational stage and will simply accept them as two different
types of thing, one which remembers where you were, one which does not.
As they approach 12 (formal operational), they may begin to wonder what
controls that decision and may poke under the covers to find the
security bit and/or the configuration/setting.
> About making easier to resume existing entries, well... I have already
> said that we aim to improve this situation. Any other ideas in this
> direction are welcome.
That's wonderful. Will continue to think about it.
Mike C. Fletcher
Designer, VR Plumber, Coder
More information about the Sugar-devel