Re: [Sugar-devel] New Activity Proposal

2020-04-07 Thread Abhishek Tanwar
Thanks for the clarification James.
What I am not able to understand is that if I make an activity by following
this https://github.com/llaske/sugarizer/blob/master/docs/tutorial.md , how
will the activity work in both sugarizer as well as in sugar .
I have developed activities for sugarizer earlier and have decent
experience in it but I am not sure if I am correctly understanding what you
are looking for.
I have gone through the discussions in
https://github.com/sugarlabs/sugar-web/issues/127 and
https://github.com/sugarlabs/sugar-web/pull/133 . Sugarizer activities use
the sugar-web library , I can't find the relevant documentation for
developing activities for both sugar and sugarizer, if you could help me
with some documentation that would be great.

Maybe I am not understanding what you intend to tell. Please let me know
what direction to head in.

Thank You

On Tue, Apr 7, 2020 at 3:42 AM James Cameron  wrote:

> Yes.  Sugar is a Linux environment that can run any language.
> Sugarizer is a JavaScript environment inside browser.  An activity can
> be written to run in both Sugar and Sugarizer.  The Sugar Web library
> facilitates that.  You will have seen the post here earlier about work
> on Sugar Web.
>
> On Tue, Apr 07, 2020 at 03:19:00AM +0530, Abhishek Tanwar wrote:
> > Hello ,
> > I did not quite understand everything .
> > By saying "include sugar as a platform for sugarizer activity" I did not
> > understand what you are trying to say .
> > Are you saying to make mancala for both sugar and sugarizer?
> >
> > Thank you
> >
> > On Tue, 7 Apr, 2020, 3:10 am James Cameron, <[1]qu...@laptop.org> wrote:
> >
> > We have a Sugar activity for Mancala, written in Python.
> >
> > [2]https://github.com/sugarlabs/mancala-activity
> >
> > License is GPLv3+, but Peter Hewitt has delegated an authority to me
> > to relicense his activities as we require.  Sugarizer activities use
> a
> > different license in order to maximise distribution.
> >
> > Please do include Sugar as a platform for your JavaScript activity.
> >
> > On Tue, Apr 07, 2020 at 02:11:21AM +0530, Abhishek Tanwar wrote:
> > > Hello,
> > >
> > > I have been searching for games that could help the children to
> develop
> > their
> > > brains and work in teams as well to incorporate the values of a
> good team
> > > player.
> > >
> > > Mancala(or Mangala) is one such game that I came
> across. [1]https://
> > > [3]en.wikipedia.org/wiki/Mancala
> > > [2][4]https://mancala.playdrift.com/
> > > Mancala on sugarizer can be played between computer vs player ,
> player vs
> > > player (offline ),player vs player (online using presence).
> > > I think this could be a good addition to sugarizer for children of
> age 6
> > and
> > > above.
> > > I want to make this game for sugarizer and would like the
> community to
> > share
> > > feedback on this if it would be good addition.
> > >
> > > Thank You
> > >
> > > References:
> > >
> > > [1] [5]https://en.wikipedia.org/wiki/Mancala
> > > [2] [6]https://mancala.playdrift.com/
> >
> > > ___
> > > Sugar-devel mailing list
> > > [7]Sugar-devel@lists.sugarlabs.org
> > > [8]http://lists.sugarlabs.org/listinfo/sugar-devel
> >
> > --
> > James Cameron
> > [9]http://quozl.netrek.org/
> >
> > References:
> >
> > [1] mailto:qu...@laptop.org
> > [2] https://github.com/sugarlabs/mancala-activity
> > [3] http://en.wikipedia.org/wiki/Mancala
> > [4] https://mancala.playdrift.com/
> > [5] https://en.wikipedia.org/wiki/Mancala
> > [6] https://mancala.playdrift.com/
> > [7] mailto:Sugar-devel@lists.sugarlabs.org
> > [8] http://lists.sugarlabs.org/listinfo/sugar-devel
> > [9] http://quozl.netrek.org/
>
> --
> James Cameron
> http://quozl.netrek.org/
>
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] New Activity Proposal

2020-04-07 Thread James Cameron
G'day Abhishek,

Thanks for asking.

Yes, an activity should be written to work in both Sugarizer as well
as Sugar.  This maximises audience and reach.

Sugar Web has conditional code to detect execution environment.  Sugar
itself detects a JavaScript activity using the activity/activity.info
file exec keyword value, and runs sugar-activity-web, which in turn
starts an instance of the WebKit browser and loads index.html

You will see activity/activity.info files in Sugarizer activities
already, with each of them referencing sugar-activity-web.

For a working example, look at the master branch of the Moon activity,
and compare with the source in Sugarizer.  An older Sugar Web library
is used, and needs updating.

https://github.com/sugarlabs/sugar-docs#sugar-web has some
documentation on writing Sugar activities using Sugar Web library.

On Tue, Apr 07, 2020 at 01:14:28PM +0530, Abhishek Tanwar wrote:
> Thanks for the clarification James.
> What I am not able to understand is that if I make an activity by following
> this [1]https://github.com/llaske/sugarizer/blob/master/docs/tutorial.md , how
> will the activity work in both sugarizer as well as in sugar .
> I have developed activities for sugarizer earlier and have decent experience 
> in
> it but I am not sure if I am correctly understanding what you are looking for.
> I have gone through the discussions in [2]https://github.com/sugarlabs/
> sugar-web/issues/127 and [3]https://github.com/sugarlabs/sugar-web/pull/133 .
> Sugarizer activities use the sugar-web library , I can't find the relevant
> documentation for developing activities for both sugar and sugarizer, if you
> could help me with some documentation that would be great.
> 
> Maybe I am not understanding what you intend to tell. Please let me know what
> direction to head in.
> 
> Thank You
> 
> On Tue, Apr 7, 2020 at 3:42 AM James Cameron <[4]qu...@laptop.org> wrote:
> 
> Yes.  Sugar is a Linux environment that can run any language.
> Sugarizer is a JavaScript environment inside browser.  An activity can
> be written to run in both Sugar and Sugarizer.  The Sugar Web library
> facilitates that.  You will have seen the post here earlier about work
> on Sugar Web.
> 
> On Tue, Apr 07, 2020 at 03:19:00AM +0530, Abhishek Tanwar wrote:
> > Hello ,
> > I did not quite understand everything .
> > By saying "include sugar as a platform for sugarizer activity" I did not
> > understand what you are trying to say . 
> > Are you saying to make mancala for both sugar and sugarizer?
> >
> > Thank you
> >
> > On Tue, 7 Apr, 2020, 3:10 am James Cameron, <[1][5]qu...@laptop.org>
> wrote:
> >
> >     We have a Sugar activity for Mancala, written in Python.
> >
> >     [2][6]https://github.com/sugarlabs/mancala-activity
> >
> >     License is GPLv3+, but Peter Hewitt has delegated an authority to me
> >     to relicense his activities as we require.  Sugarizer activities use
> a
> >     different license in order to maximise distribution.
> >
> >     Please do include Sugar as a platform for your JavaScript activity.
> >
> >     On Tue, Apr 07, 2020 at 02:11:21AM +0530, Abhishek Tanwar wrote:
> >     > Hello,
> >     >
> >     > I have been searching for games that could help the children to
> develop
> >     their
> >     > brains and work in teams as well to incorporate the values of a
> good team
> >     > player.
> >     >
> >     > Mancala(or Mangala) is one such game that I came across. 
> [1]https:/
> /
> >     > [3][7]en.wikipedia.org/wiki/Mancala
> >     > [2][4][8]https://mancala.playdrift.com/
> >     > Mancala on sugarizer can be played between computer vs player ,
> player vs
> >     > player (offline ),player vs player (online using presence).
> >     > I think this could be a good addition to sugarizer for children of
> age 6
> >     and
> >     > above. 
> >     > I want to make this game for sugarizer and would like the 
> community
> to
> >     share
> >     > feedback on this if it would be good addition.
> >     >
> >     > Thank You
> >     >
> >     > References:
> >     >
> >     > [1] [5][9]https://en.wikipedia.org/wiki/Mancala
> >     > [2] [6][10]https://mancala.playdrift.com/
> >
> >     > ___
> >     > Sugar-devel mailing list
> >     > [7][11]Sugar-devel@lists.sugarlabs.org
> >     > [8][12]http://lists.sugarlabs.org/listinfo/sugar-devel
> >
> >     --
> >     James Cameron
> >     [9][13]http://quozl.netrek.org/
> >
> > References:
> >
> > [1] mailto:[14]qu...@laptop.org
> > [2] [15]https://github.com/sugarlabs/mancala-activity
> > [3] [16]http://en.wikipedia.org/wiki/Mancala
> > [4] [17]https://mancala.playdrift.com/
> > [5] [18]https:

Re: [Sugar-devel] Activity Idea for Sugarizer

2020-04-07 Thread Lionel Laské
Hi Utkarsh,

In my opinion, Scratch and TurtleBlocks activities already allow children
to handle algorithmic concepts.
Then Jappy and EToys activities could be used for experimented users.
Not sure we need one more Algorithmic activity. At least we didn't have
request about that from deployments.
We had the project to include Microbit (
https://github.com/llaske/sugarizer/issues/562) but it's not possible today
to have a full offline version (which is a pre-requisite for Sugarizer
activities).

Regards.

   Lionel.


Le dim. 5 avr. 2020 à 18:00,  a
écrit :

> From: Utkarsh Raj Singh 
> To: sugar-devel@lists.sugarlabs.org
> Subject: [Sugar-devel] Activity Idea for Sugarizer
> Message-ID:
> <
> cacyvxwgq0dntodcu3dsv9n+e_88gpol2mbfnjusb7mqstvb...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Hello,
>
> I am a part of a team which is undergoing training in pedagogy for primary
> and secondary school children. In the classes for Introductory Mathematical
> Thinking, we teach flowcharts to students. The basic elements like start,
> stop, process, user I/O and diamond boxes, along with conditionals and
> looping constructs are taught to them, without explicitly telling them
> about the fine intricacies.
>
> As a result, the students learn to apply algorithmic thinking to questions,
> which we value as an essential skill in problem solving in various domains.
> The students quickly pick up the basic syntax for flowcharts and are
> usually creative in making them for mathematical as well as everyday tasks.
>
> So could we make a similar activity for Sugarizer? We are already working
> on a prototype for a JS version for the team and teaching. I believe it
> will be a great addition to the Sugarizer set. Let me know your thoughts.
> If yes, I can share the feature set and what exactly I propose to build.
>
> Stay safe,
> Regards,
> Utkarsh
>
>
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] New Activity Proposal

2020-04-07 Thread Lionel Laské
Just few elements to give you some context.

Sugarizer was designed initially to host Sugar activities written with
Sugar-Web. A brief history of Sugarizer is here:
https://github.com/llaske/sugarizer/blob/dev/docs/credits.md
So the Sugar-Web implementation in Sugarizer was compatible with Sugar.
It's why today, the activity template to write a new Sugarizer activity (
https://github.com/llaske/sugarizer/tree/dev/activities/ActivityTemplate)
use in Sugarizer Development Tutorial, still include Python stuff.
Just zip the content of your Sugarizer activities into a .xo file (explain
here:
https://github.com/sugarlabs/sugar-docs/blob/master/src/web-activity.md#ready-to-release)
and you should be able to install it on Sugar and run it. At least,
theoretically.

Unfortunately the compatibility between Sugarizer and Sugar-Web was lost
during the development of Sugarizer. The Sugar-Web implementation in
Sugarizer was never merged in Sugar-Web, Sugarizer added new features
(presence, Journal chooser, ...) not directly compatible with Sugar and no
one worked to maintain the compatibility.

BTW it will be interesting to retrieve this compatibility, even if some
features are not directly mappable, at least to allow a Sugarizer activity
to be launched on Sugar and run basic features of the activity.

It's not necessary a very complex task but it require rigor and patience.
The thread here: https://github.com/sugarlabs/sugar-web/pull/133 explain
the process if you're volunteer to work on this task. Of course, both
people from the Sugar side and from the Sugarizer side on this list will be
able to help you.

Regards.

  Lionel.



Le mar. 7 avr. 2020 à 15:56,  a
écrit :

> Date: Tue, 7 Apr 2020 13:14:28 +0530
> From: Abhishek Tanwar 
> To: James Cameron 
> Cc: Sugar-dev Devel 
> Subject: Re: [Sugar-devel] New Activity Proposal
> Message-ID:
> <
> calhjuuh2vowxmwb4nmn9r8fuwofaassksuzfm22zge6kxha...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Thanks for the clarification James.
> What I am not able to understand is that if I make an activity by following
> this https://github.com/llaske/sugarizer/blob/master/docs/tutorial.md ,
> how
> will the activity work in both sugarizer as well as in sugar .
> I have developed activities for sugarizer earlier and have decent
> experience in it but I am not sure if I am correctly understanding what you
> are looking for.
> I have gone through the discussions in
> https://github.com/sugarlabs/sugar-web/issues/127 and
> https://github.com/sugarlabs/sugar-web/pull/133 . Sugarizer activities use
> the sugar-web library , I can't find the relevant documentation for
> developing activities for both sugar and sugarizer, if you could help me
> with some documentation that would be great.
>
> Maybe I am not understanding what you intend to tell. Please let me know
> what direction to head in.
>
> Thank You
>
> On Tue, Apr 7, 2020 at 3:42 AM James Cameron  wrote:
>
> > Yes.  Sugar is a Linux environment that can run any language.
> > Sugarizer is a JavaScript environment inside browser.  An activity can
> > be written to run in both Sugar and Sugarizer.  The Sugar Web library
> > facilitates that.  You will have seen the post here earlier about work
> > on Sugar Web.
> >
> > On Tue, Apr 07, 2020 at 03:19:00AM +0530, Abhishek Tanwar wrote:
> > > Hello ,
> > > I did not quite understand everything .
> > > By saying "include sugar as a platform for sugarizer activity" I did
> not
> > > understand what you are trying to say .
> > > Are you saying to make mancala for both sugar and sugarizer?
> > >
> > > Thank you
> > >
> > > On Tue, 7 Apr, 2020, 3:10 am James Cameron, <[1]qu...@laptop.org>
> wrote:
> > >
> > > We have a Sugar activity for Mancala, written in Python.
> > >
> > > [2]https://github.com/sugarlabs/mancala-activity
> > >
> > > License is GPLv3+, but Peter Hewitt has delegated an authority to
> me
> > > to relicense his activities as we require.  Sugarizer activities
> use
> > a
> > > different license in order to maximise distribution.
> > >
> > > Please do include Sugar as a platform for your JavaScript activity.
> > >
> > > On Tue, Apr 07, 2020 at 02:11:21AM +0530, Abhishek Tanwar wrote:
> > > > Hello,
> > > >
> > > > I have been searching for games that could help the children to
> > develop
> > > their
> > > > brains and work in teams as well to incorporate the values of a
> > good team
> > > > player.
> > > >
> > > > Mancala(or Mangala) is one such game that I came
> > across. [1]https://
> > > > [3]en.wikipedia.org/wiki/Mancala
> > > > [2][4]https://mancala.playdrift.com/
> > > > Mancala on sugarizer can be played between computer vs player ,
> > player vs
> > > > player (offline ),player vs player (online using presence).
> > > > I think this could be a good addition to sugarizer for children
> of
> > age 6
> > > and
> > > > above.
> > > > I want to make 

Re: [Sugar-devel] Updating sugar-web with changes from Sugarizer

2020-04-07 Thread James Cameron
I agree with the plan.

My goal is to leverage work done on activities so that they are
available on both Sugar and Sugarizer.  Having a Sugar Web library
that works on both is a better outcome than having two separate
libraries, because it will reduce maintenance.

What has tended to happen is that developers who want to work on
JavaScript are attracted to Sugarizer, and developers who want to work
on Python are attracted to Sugar.  A division by language preference.

Once an activity is accepted into Sugarizer, developers have been
content with that dopamine hit and haven't worked to get the activity
working in Sugar.  Firstly because of the evolution of the Sugar Web
library inside Sugarizer, secondly because of scope constraints for
GCI tasks or GSoC projects, and thirdly because no other developers
have been working on JavaScript activities in Sugar.

This is an opportunity for developers skilled in JavaScript to write
or port activities to Sugar.

On Tue, Apr 07, 2020 at 12:42:08AM +0800, Cheong Siu Hong wrote:
> Hello all,
> 
> Currently, the sugar-web library is fairly outdated. I have been working on
> backporting changes from Sugarizer's sugar-web, and more details can be seen 
> in
> the pull request at [1]https://github.com/sugarlabs/sugar-web/pull/133.
> 
> I would like to open this up to more discussion, but so far from the 
> discussion
> in the PR, the plan currently is as follows:
> 
> 1. Update a set of files for sugar-web (i.e. for each component)
> 2. Test if some Sugar Web activities work with the updated library, else make
> porting fixes.
> 3. Repeat steps 1 and 2 until sugar-web is up to date with Sugarizer.
> 4. Select a version for next release (i.e. 0.118)
> 5. Push changes to selected Sugar Web activities to make them work with the
> updated library.
> 6. Write a guide for porting old Sugar Web activities.
> 
> This merely brings the sugar-web repository back up to speed with that of
> Sugarizer's. Sugarizer activities may still not work natively on Sugar.
> 
> I would also like to ask and discuss about the direction that this library is
> going to take. Is the aim to have a sugar-web library that will work on both
> native Sugar Desktop and Sugarizer? Currently, I have submitted a GSoC 
> proposal
> for working on this, and it would be great to hear the community's thoughts on
> the matter.
> 
> Best regards,
> Cheong Siu Hong
> 
> References:
> 
> [1] https://github.com/sugarlabs/sugar-web/pull/133

> ___
> Sugar-devel mailing list
> Sugar-devel@lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel


-- 
James Cameron
http://quozl.netrek.org/
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel