[Sugar-devel] GSoC: Proposal for "Create new activities"

Muhammad Usman muhdusman98 at gmail.com
Sat Mar 30 01:49:32 EDT 2019


I have personally used jupyter for a long time, so I have a fair amount of
experience using it.

As I can see, jupyter-notebook kind of requires the whole GSoC period,
therefore I would consider it as a separate project from the other and
write a different proposal for it.

As for the design of the project, My understanding of going about doing the
project is:
- Install jupyter using pip. Install additional libraries such as Latex to
allow for the rendering of notebook as pdf and so on.
- Start with the jupyter server and modify the server to use journal,
removable devices along with using the file system.
- Make changes to frontend to display the notebook options appropriately.
- Display each language as a separate notebook option.
- Write a wrapper around the server controlling the starting of server and
the shutdown on exiting.
- Have examples and getting started tutorials.
- Lastly, have a detailed user documentation.

Thanks,
Muhammad Usman

On Sat, Mar 30, 2019 at 5:09 AM <sugar-devel-request at lists.sugarlabs.org>
wrote:

> Message: 3
> Date: Fri, 29 Mar 2019 16:38:47 +0800
> From: Tony Anderson <tony_anderson at usa.net>
> To: sugar-devel at lists.sugarlabs.org
> Subject: Re: [Sugar-devel] GSoC: Proposal for "Create new activities"
> Message-ID: <a3f8d544-a6f6-35be-5fe1-6cc8e138dcd2 at usa.net>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> The Jupyter Notebook project is of particular interest to me.
>
> Over the past several GSOC periods, developers have had a problem
> completing their projects within the allotted time. You are proposing to
> take on several projects, any one of which is a big load for one summer.
>
> If you undertake the Jupyter Notebook project, I would hope that is your
> only task for the summer. Completing it in a usable form in the GSOC
> period would be a major, noteworthy accomplishment.
>
> The Jupyter Notebook started life as ipython. The Jupyter implementation
> supports multiple programming languages (e.g. bash, python, web
> (javascript, html5, css), and many others. It can also be used to make
> interactive lessons on science and mathematics topics independent of
> programming).
>
> The essence of the ipython server is that it accepts a url for a file
> (*.ipynb). It then processes this file displaying cells and running
> cells interactively based on the requirements of the notebook author and
> input from the user.
>
> As an activity, (called for example, Jupyter-activity), it should resume
> .ipynb files in the Journal. The browser for this activity can be the
> Browse activity (testing to be sure that the WebKit browser in the
> Browse activity supports Jupyter). This is unlikely to be a
> show-stopper. If executed with start-new, it should enable the user to
> designate a notebook to run (among those in the Journal, Documents
> folder, or a mounted removable device). It should also enable a user to
> create a notebook.
>
> The technology involved in this project is Jupyter. The team at Jupyter
> is friendly and helpful, in my experience. I doubt there will be an
> significant need to modify the Browse activity. One limitation that
> could be addressed en passant is that when Browse is resumed, it
> launches a new instance rather than opening a tab in a running copy.
> This is OK but seems primitive compared to other browsers.
>
> There is a large library online of Jupyter notebooks with many
> tutorials. The first step in this project is to become familiar with
> these notebooks. Jupyter can be installed on Linux distributions via
> Anaconda - but this is overkill for the XO. It can also be installed by
> yum (apt for Ubuntu) but better by pip.
>
> The storage available to the XO is extremely limited (XO has 1GB, other
> models have 4GB). This means that the Anaconda implementation which
> incorporates many additional valuable packages is probably too large for
> Sugar on an XO (still over 80% of the systems in the wild). Even so, the
> Pip install may need some optional capabilities such as Latex and MatLab.
>
> One of the critical parts of an implementation frequently gets left to
> the end and then is not done - user documentation. Thanks to Gonzalo
> Odiard, Sugar has an excellent documentation capability based on Sphinx
> - see help.sugarlabs.org. The 'Jupyter-activity' will need documentation
> that meets the needs of primary school students with limited computer
> experience and limited skills in Englsih. This could include a
> recommended library of Jupyter notebooks which can be used on the XO
> (esp. bash, python, and web langauges).
>
> Tony
>
> Tony
>
> On 3/29/19 3:52 PM, James Cameron wrote:
> > Thanks, interesting.
> >
> > Technical comments; Jupyter Notebook Activity, you suggest stripping
> > down Browse activity.  You might instead presume Browse is present
> > and call it directly.  This is what the Wikipedia activity does.  It
> > isn't what the Help activity does.
> >
> > Please also consider the design and user requirements input in this
> > closed issue; https://github.com/sugarlabs/GSoC/issues/13 Especially
> > note Jupyter Lab; a richer environment than a browser alone.
> >
> > On Thu, Mar 28, 2019 at 06:22:03PM +0530, Muhammad Usman wrote:
> >> Hello all!
> >> I am Muhammad Usman. I am sharing my draft proposal for Create New
> Activities
> >> and Write activity in Sugarizer. Please do take a look at it and let me
> know
> >> your thoughts.
> >> [1]https://gist.github.com/usmanmuhd/ce60a3dd2c43fd5c5fe5154b5bc18750
> >>
> >> Regards,
> >> Muhammad Usman
> >>
> >> References:
> >>
> >> [1] https://gist.github.com/usmanmuhd/ce60a3dd2c43fd5c5fe5154b5bc18750
> >> _______________________________________________
> >> Sugar-devel mailing list
> >> Sugar-devel at lists.sugarlabs.org
> >> http://lists.sugarlabs.org/listinfo/sugar-devel
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20190330/d5dd5aad/attachment.html>


More information about the Sugar-devel mailing list