[OLPC-AU] [Dextrose] Activity Market [WAS: Sugar WebSDK + Activity Pack]

Martin Abente martin.abente.lahaye at gmail.com
Thu Jul 7 10:44:04 EDT 2011

Or maybe we could extend the activities updater to do all these things :)

On Thu, Jul 7, 2011 at 9:26 AM, Sridhar Dhanapalan
<sridhar at laptop.org.au> wrote:
> I like the notion of making activities easier to find and install. The
> feedback that we've received is that ASLO is too messy, and the
> process isn't smooth enough.
> The idea I had was to have an Activity Market, similar to the Android
> Market or the Apple App Store. This would be a place where activities
> could be easily managed directly on the XO. You should be able to
> easily browse through, search for, install and remove activities. I
> think that this model would work well, since Sugar activities are
> usually self-contained.
> How does your idea differ from this?
> Cheers,
> Sridhar
> On 18 June 2011 16:58, Sebastian Silva <sebastian at somosazucar.org> wrote:
>> "The most important part of a christmas gift is the packaging." - My
>> father-in-law (acording to my wife)
>> Dextrose Activity Pack
>> As maybe you know, we started giving some maintenance to a collection of
>> activities - the Dextrose Activity Pack. These activities will come with
>> Dextrose but you will also be able to download them as a pack.
>> My plan is you will be able to download an activity catalogue.  Think of
>> "Add & Remove Activities" like in Ubuntu, except activity bundles may come
>> precached so that you can download an entire "Activity Pack" into USB or
>> otherwise distribute offline or online as a single download.
>> Currently ASLO, Sugar Labs's Activity Library does not cover this.
>> Obtaining/updating several activities at once over a slow link is a pain.
>> Deployments could use this mechanism to distribute new activities / updates.
>> The Catalogue
>> Looking at the catalogue, I think it should be visually attractive, have
>> screenshots, authors, a description. It could even offer a way to provide
>> feedback for each activity and/or interact with other users.
>> In order to provide an interesting package system for deployers and end
>> users, I think I need to focus on building this Catalogue, make it really
>> nice and user friendly.
>> The Sugar WebSDK
>> I've decided to develop a framework for the approach I'm taking with the
>> Catalogue. The pattern is known as Model-View-Controller and is widely used
>> in web industry and other places [0].
>> In short, we provide a View layer that is powered by Webkit. This layer is
>> connected thru events with the Controller layer, which is implemented in
>> Python. The Controller interacts with the Model, also in Python, the layer
>> which handles data. In turn, the View may be updated. Javascript will also
>> be available.
>> The good part is that all the components are already there. I've been doing
>> research and I found Python Webkit DOM Bindings [1]. The point of Sugar
>> WebSDK is not making Web .xo bundles, but implementing the GUI part of the
>> activity (except for sugar toolbars) as a Webkit window, effectively turning
>> it into a GUI toolkit engine. A similar approach was taken by "Titanium
>> Appcelerator Desktop SDK" [2] which powers the Status.Net Desktop client
>> [3].
>> I believe the ability to effectively make attractive interfaces in PyGTK is
>> pretty scarce. Doing so is also very time consuming. OTOH there is a
>> huge, mature offering of talented web designers out there. Embedded
>> javascript might allow for interesting visual tricks like jquery's fade
>> effects, or even full HTML5 gadgets/widgets.
>> I expect the Activity ecosystem can make good use of a framework which
>> allows to distribute the production of an Activity among a team that
>> can include traditional HTML/CSS designers. I know we can.
>> I intent to make this WebSDK a Sugar Labs project. This framework will be
>> shared to the developer community with a tutorial and of course, will be
>> used to build the Activity Pack Catalogue.
>> RoadMap
>> Initial Hello World of Sugar WebSDK - Beginning of July
>> Interface Design of Activity Pack Catalogue - July
>> Implementation of Catalogue functionality - August
>> This would be enough for a first "beta" release.
>> Focus after that should be on polish and documentation for a release of both
>> the WebSDK and the Activity Pack Catalogue.
>> Help appreciated
>> Currently I'm done with researching and ready to implement. If I missed
>> something it'd be nice to know, as well as general feedback on the WebSDK
>> idea. I especially appreciate prior experience and gotchas that may save me
>> time.
>> Open questions remain with the back-end package functionality: How it all
>> interacts with ASLO and the Sugar update mechanism.
>> I'm inspired partly by some insights Lucian had with Webified. Also Alsroot,
>> with the brilliant sweets project.
>> My impression: ASLO+ project and Sweets packaging system could probably be
>> the backend medium term. An implementation reusing Anish's metadata updater
>> code is probably the lowest hanging fruit.
>> Sincerely,
>> Sebastian
>> Somos Azucar
>> Activity Central Activity Team
>> [0] - http://en.wikipedia.org/wiki/Model_View_Controller
>> [1] - http://www.gnu.org/software/pythonwebkit/
>> [2] - http://developer.appcelerator.com/doc/desktop/python
>> [3] - http://status.net/desktop
>> _______________________________________________
>> Dextrose mailing list
>> Dextrose at lists.sugarlabs.org
>> http://lists.sugarlabs.org/listinfo/dextrose
> _______________________________________________
> Dextrose mailing list
> Dextrose at lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/dextrose

More information about the OLPC-AU mailing list