[Sugar-devel] [IAEP] Unified Objects (was Unified bundles)

Eben Eliason eben.eliason at gmail.com
Wed Apr 8 09:12:17 EDT 2009


On Wed, Apr 8, 2009 at 2:20 AM, Aleksey Lim <alsroot at member.fsf.org> wrote:
> If I understand Wade correctly the one of the main purposes(at least) is not
> hiding "content" bundles somewhere(for example in Browse's bookmarks)
> ..and I see your concern(for what reason we should create new entities
> if there are lots of existed content - Gutenberg's texts, pdfs, etc)
>
> ..I was thinking a bit this morning :) and here it is proposal from my side:
> Expand Unified Bundles to Unified Objects
>
> Preamble.
>
> Separation all objects on verbs and nouns can be failed in some cases -
> and moreover it will be failed when sugar will be used for purposes that
> sugar was designed for - Create, Reuse, Share.
>
> This CRS scheme works(more or less at present) for content since we have
> Journal to store objects, but what about Activities?
>
> We should encourage people CRS theirs activities as well. Only one but -
> current sugar cannot work with many versions installed. At the same time
> this multi versioning is cornerstone of CRS activities since we have
> (should have) many versions of one particular activity installed on the
> same box. And these versions could include "home made" activities not
> only "official" ones. User should have possibility to treat all these
> versions(of one activity) effectively to CRS them.
>
> Home View should mutate from "storage" of activities to Tags View of
> Journal objects. It could have tags cloud and etc. Another Wade's idea[1]
> could useful here.
>
> Proposal.
>
> To achieve this target, instead of inventing new versioning scheme in sugar
> (in addition to Journal), I propose treat Activities as regular Journal objects.

I'm a little confused by this comment, as this is already the case.
Activities have entries in the Journal just as anything else does, and
are, in fact, objects in that sense. They're "special" objects since
they spawn fresh new objects by default, but the activity bundle is
still an object in itself, and should be resumable with other
activities which understand that object type (develop is one example;
a future "bundle" (zip) activity would be another).

> Well, it couldn't solve multi versions issue for activities out of the box,
> but I'm strongly for having *only one* storage for content versions and
> activities versions(since we could treat current activity as a source(noun)
> to produce new activity).

Right. The Journal doesn't have versions yet, but was designed to.
There's no fix for that but to add the functionality, but as mentioned
above, this functionality will automatically apply to activities as
well as other objects already.

> Benefits.
>
> With this scheme accepted user will have unified interface to all
> objects(and theirs versions) - content(generated by activities or
> downloaded from the internet) and activities(downloaded, transfered from
> friends and home made).

The Home view is not the only place activities live; it's just an
easily accessible view which makes it easier to see all installed
activities at a glance, instead of filtering or digging through the
Journal to find them.

> We could treat ASLO(Activity Library) as a Objects Library and encourage
> people share theirs objects(not only activities) via
> activities.sugarlabs.org(objects.sugarlabs.org? or library.sugarlabs.org?)
>
> Returning to Unified Bundles vs. Gutenberg existed texts, we have no
> conflicts at all - we could gain all these objects from Tags View
> (former Home View) and open them by one click.

I urge caution here. We've considered methods of bringing all kinds of
objects (not just activities) into Home in the past, but it's a
problem to be dealt with carefully. For one thing, we desired not to
introduce lots of extra management facilities for defining what lived
in Home. I'd need some detailed proposals of how this might work to be
convinced it's a good idea. Also, we don't want to duplicate the
Journal, or take away its intended use by overloading Home too
strongly.

Eben

> Any comments are welcome in ml or on [2]
>
> [1] http://wiki.laptop.org/go/User:Wade/Ideas/Activity_Management#Annotated_Concept_Sketches
> [2] http://wiki.sugarlabs.org/go/Unified_Objects
>
> --
> Aleksey
>
> On Tue, Apr 07, 2009 at 03:40:21PM -0500, James Simmons wrote:
>> Wade,
>>
>> Since two of my Activities are referred to by name in your proposal I
>> suppose I should have an opinion on it, but I don't fully understand the
>> proposal.  It sounds like you want to mix content and Activity in the
>> same bundle.  So I guess you could write some sort of presentation using
>> HTML and JavaScript and bundle it up like an Activity that contains a
>> pointer to the Browse component needed to use it?
>>
>> You mention that Activities like Read, Read Etexts, etc. don't create
>> content, and thus are not like real Activities.  That is currently true,
>> but lately I've been thinking of adding an Annotation feature to Read
>> Etexts which would let the user attach notes to individual pages of the
>> etext, as well as highlight passages with a yellow background (like
>> marking up a book with a hi-lighter pen).  The notes and highlight
>> coordinates would be stored in as a collection of objects which would be
>> pickled and the pickle file would be stored in a Zip file along with the
>> original etext.  So students assigned to read an etext could create
>> their own content in the form of notes and highlights and share these
>> with other students along with the text.
>>
>> Acrobat allows you to annotate PDFs so maybe Read could support this one
>> day too.
>>
>> Originally Read and the rest did not appear in the Activity ring, and
>> the only way to launch them was to resume a Journal entry with the
>> supported MIME type.  This was a source of frustration to me because my
>> own Activities make use of Zip files and there are at least three
>> Activities that use them: Read Etexts, View Slides, and Etoys.  I was
>> constantly launching Etoys when I wanted to launch one of my own
>> Activities.  What I really wanted was to have my documents display the
>> icon of the Activity needed to read that and launch that Activity when
>> resumed.  Having the Activity launched from the ring and open that ugly
>> dialog solved that problem for me in two ways:
>>
>> 1).  I never had to worry about opening the wrong Activity.
>> 2).  When I exited the Activity it created a brand new Journal entry
>> with my Activity icon, exactly how I wanted it to be.  I could delete
>> the original Journal entry and resume the new one.
>>
>> So yeah it's ugly, but it gave me a way to do something I really wanted
>> to do.  What would be nice is if the Journal let you specify a default
>> program to open a given Journal entry that otherwise would only be known
>> by its MIME type.  I could download a Zip file from Gutenberg, then open
>> the Journal entry information page.  Right now the launch button shows a
>> menu of all the Activities that can be used to open it and you pick one
>> from that menu.  But what if there was a similar menu that let you
>> choose the default Activity, and once you chose it that icon was used
>> for the entry in the Journal?  Zip files used in Etoys could be given
>> the Etoys icon, slide collections the View Slides icon, etc.
>>
>> I'm not sure why I'd want a content bundle that worked the way you
>> describe "Slides Content Viewer" and "Etexts Content Viewer".  Etexts
>> contained in Zip files can already be downloaded from Gutenberg, and
>> slide collections are just images in a Zip file.  It takes some work to
>> create these, but less than creating a bundle would be.
>>
>> I could see the point of an HTML bundle.  Gutenberg has books with
>> illustrations in HTML format and making a bundle would give you a way to
>> read these offline.
>>
>> James Simmons
>>
>>
>> > Message: 1
>> > Date: Mon, 6 Apr 2009 19:05:09 -0400
>> > From: Wade Brainerd <wadetb at gmail.com>
>> > Subject: [Sugar-devel] Unified Bundles
>> > To: Sugar Devel <sugar-devel at lists.sugarlabs.org>
>> > Message-ID:
>> >     <7087c32a0904061605k424b1517v71eb47de85c47098 at mail.gmail.com>
>> > Content-Type: text/plain; charset=ISO-8859-1
>> >
>> > Hi all,
>> >
>> > Aleksey finally prodded me (by creating an empty page and pointing me
>> > at it) into writing down my idea for Unified bundles which merges .xol
>> > and .xo files together.
>> >
>> > It diverged somewhat into a plan to recast activities which do not
>> > support actually creating anything as "Content viewers".  Those are
>> > ones like Read, Read Etexts, View Slides, Jukebox, etc.
>> >
>> > http://wiki.sugarlabs.org/go/Unified_Bundles
>> >
>> > Comments welcome!
>> >
>> > -Wade
>>
>> _______________________________________________
>> Sugar-devel mailing list
>> Sugar-devel at lists.sugarlabs.org
>> http://lists.sugarlabs.org/listinfo/sugar-devel
>>
> _______________________________________________
> IAEP -- It's An Education Project (not a laptop project!)
> IAEP at lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/iaep
>


More information about the Sugar-devel mailing list