[Sugar-devel] last-minute feature proposal for 0.98

Walter Bender walter.bender at gmail.com
Fri Sep 28 10:19:21 EDT 2012


I am hoping to get this into the OLPC 13.1 build. Any change of
getting it into Sugar 0.98?

-walter


---------- Forwarded message ----------
From: Walter Bender <walter.bender at gmail.com>
Date: Thu, Sep 27, 2012 at 8:18 PM
Subject: Re: 13.1.0 feature freeze reminder
To: Daniel Drake <dsd at laptop.org>
Cc: OLPC Devel <devel at lists.laptop.org>


On Thu, Sep 27, 2012 at 5:46 PM, Daniel Drake <dsd at laptop.org> wrote:
> Hi,
>
> Just a quick reminder that we move to bug-fixes-only for 13.1.0 on
> October 11th which is exactly 2 weeks from now.

I have a new feature I would like to propose. maintain a list of
launch times in the metadata. This will be useful for datastore
analysis in the client. (The sugar-stats package [1] developed and
maintained by alsroot can also be used to capture these data, but I
posit that having these data as part of the datastore will facilitate
data visualizations within Sugar itself.)

The attached patch, also shown inline here to
sugar-toolkit/src/sugar/activity/activity.py adds a timestamp each
time an activity is launched. These timestamps can be used to answer
questions such as how often an activity has been used? in school or at
home, et al. that are being asked by teachers and also used to provide
feedback to the child as to when and where they are working.

--- a/activity.py
+++ b/activity.py

@@ -324,6 +324,14 @@ class Activity(Window, gtk.Container):
             if 'share-scope' in self._jobject.metadata:
                 share_scope = self._jobject.metadata['share-scope']

+            if 'launch-times' in self._jobject.metadata:
+                self._jobject.metadata['launch-times'] = '%s, %d' % (
+                    self._jobject.metadata['launch-times'],
+                    int(time.time()))
+            else:
+                self._jobject.metadata['launch-times'] = \
+                    str(int(time.time()))
+
         self.shared_activity = None
         self._join_id = None

@@ -376,6 +384,7 @@ class Activity(Window, gtk.Container):
         jobject.metadata['preview'] = ''
         jobject.metadata['share-scope'] = SCOPE_PRIVATE
         jobject.metadata['icon-color'] = icon_color
+        jobject.metadata['launch-times'] = str(int(time.time()))
         jobject.file_path = ''

         # FIXME: We should be able to get an ID synchronously from the DS,


> http://wiki.laptop.org/go/13.1.0/Release_plan
>
> Daniel
> _______________________________________________
> Devel mailing list
> Devel at lists.laptop.org
> http://lists.laptop.org/listinfo/devel


-walter

--
Walter Bender
Sugar Labs
http://www.sugarlabs.org


[1] http://git.sugarlabs.org/server/client/trees/master


-- 
Walter Bender
Sugar Labs
http://www.sugarlabs.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: launch-time.patch
Type: application/octet-stream
Size: 1034 bytes
Desc: not available
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20120928/0fe44432/attachment.obj>


More information about the Sugar-devel mailing list