<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Good start. <br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">A reasonable way to start would be to
install the server in gnome so that it works on the XO. This is
going to be a bit tricky because Sugar on the XO is based on
Fedora 18. One of the current modules required by pip is not
supported by Fedora 18. <br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">In considering how I might proceed, I
decided it would be easiest to install Jupyter on Ubuntu 18.04 and
use the sucre install of Sugar to build and test the
'Jupyter-activity' wrapper, pushing off the XO dependency issues.
<br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Tony<br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">On 3/30/19 1:49 PM, Muhammad Usman
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAFafk5EAM=nfbFkPwzGe-AO_ap7iU8ju4Si67OvX+31h0y9r-A@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div>I have personally used jupyter for a long time, so I have a
fair amount of experience using it.</div>
<div><br>
</div>
<div>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.</div>
<div><br>
</div>
<div>As for the design of the project, My understanding of going
about doing the project is:</div>
<div>- Install jupyter using pip. Install additional libraries
such as Latex to allow for the rendering of notebook as pdf
and so on.</div>
<div>- Start with the jupyter server and modify the server to
use journal, removable devices along with using the file
system. </div>
- Make changes to frontend to display the notebook options
appropriately.
<div>- Display each language as a separate notebook option.<br>
<div>- Write a wrapper around the server controlling the
starting of server and the shutdown on exiting.</div>
<div>- Have examples and getting started tutorials.</div>
<div>- Lastly, have a detailed user documentation. </div>
<div><br>
</div>
<div>Thanks,</div>
<div>Muhammad Usman</div>
<div><br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sat, Mar 30, 2019 at
5:09 AM <<a
href="mailto:sugar-devel-request@lists.sugarlabs.org"
moz-do-not-send="true">sugar-devel-request@lists.sugarlabs.org</a>>
wrote:</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">Message: 3<br>
Date: Fri, 29 Mar 2019 16:38:47 +0800<br>
From: Tony Anderson <<a
href="mailto:tony_anderson@usa.net" target="_blank"
moz-do-not-send="true">tony_anderson@usa.net</a>><br>
To: <a href="mailto:sugar-devel@lists.sugarlabs.org"
target="_blank" moz-do-not-send="true">sugar-devel@lists.sugarlabs.org</a><br>
Subject: Re: [Sugar-devel] GSoC: Proposal for "Create
new activities"<br>
Message-ID: <<a
href="mailto:a3f8d544-a6f6-35be-5fe1-6cc8e138dcd2@usa.net"
target="_blank" moz-do-not-send="true">a3f8d544-a6f6-35be-5fe1-6cc8e138dcd2@usa.net</a>><br>
Content-Type: text/plain; charset=utf-8; format=flowed<br>
<br>
The Jupyter Notebook project is of particular interest
to me.<br>
<br>
Over the past several GSOC periods, developers have had
a problem <br>
completing their projects within the allotted time. You
are proposing to <br>
take on several projects, any one of which is a big load
for one summer.<br>
<br>
If you undertake the Jupyter Notebook project, I would
hope that is your <br>
only task for the summer. Completing it in a usable form
in the GSOC <br>
period would be a major, noteworthy accomplishment.<br>
<br>
The Jupyter Notebook started life as ipython. The
Jupyter implementation <br>
supports multiple programming languages (e.g. bash,
python, web <br>
(javascript, html5, css), and many others. It can also
be used to make <br>
interactive lessons on science and mathematics topics
independent of <br>
programming).<br>
<br>
The essence of the ipython server is that it accepts a
url for a file <br>
(*.ipynb). It then processes this file displaying cells
and running <br>
cells interactively based on the requirements of the
notebook author and <br>
input from the user.<br>
<br>
As an activity, (called for example, Jupyter-activity),
it should resume <br>
.ipynb files in the Journal. The browser for this
activity can be the <br>
Browse activity (testing to be sure that the WebKit
browser in the <br>
Browse activity supports Jupyter). This is unlikely to
be a <br>
show-stopper. If executed with start-new, it should
enable the user to <br>
designate a notebook to run (among those in the Journal,
Documents <br>
folder, or a mounted removable device). It should also
enable a user to <br>
create a notebook.<br>
<br>
The technology involved in this project is Jupyter. The
team at Jupyter <br>
is friendly and helpful, in my experience. I doubt there
will be an <br>
significant need to modify the Browse activity. One
limitation that <br>
could be addressed en passant is that when Browse is
resumed, it <br>
launches a new instance rather than opening a tab in a
running copy. <br>
This is OK but seems primitive compared to other
browsers.<br>
<br>
There is a large library online of Jupyter notebooks
with many <br>
tutorials. The first step in this project is to become
familiar with <br>
these notebooks. Jupyter can be installed on Linux
distributions via <br>
Anaconda - but this is overkill for the XO. It can also
be installed by <br>
yum (apt for Ubuntu) but better by pip.<br>
<br>
The storage available to the XO is extremely limited (XO
has 1GB, other <br>
models have 4GB). This means that the Anaconda
implementation which <br>
incorporates many additional valuable packages is
probably too large for <br>
Sugar on an XO (still over 80% of the systems in the
wild). Even so, the <br>
Pip install may need some optional capabilities such as
Latex and MatLab.<br>
<br>
One of the critical parts of an implementation
frequently gets left to <br>
the end and then is not done - user documentation.
Thanks to Gonzalo <br>
Odiard, Sugar has an excellent documentation capability
based on Sphinx <br>
- see <a href="http://help.sugarlabs.org"
rel="noreferrer" target="_blank"
moz-do-not-send="true">help.sugarlabs.org</a>. The
'Jupyter-activity' will need documentation <br>
that meets the needs of primary school students with
limited computer <br>
experience and limited skills in Englsih. This could
include a <br>
recommended library of Jupyter notebooks which can be
used on the XO <br>
(esp. bash, python, and web langauges).<br>
<br>
Tony<br>
<br>
Tony<br>
<br>
On 3/29/19 3:52 PM, James Cameron wrote:<br>
> Thanks, interesting.<br>
><br>
> Technical comments; Jupyter Notebook Activity, you
suggest stripping<br>
> down Browse activity. You might instead presume
Browse is present<br>
> and call it directly. This is what the Wikipedia
activity does. It<br>
> isn't what the Help activity does.<br>
><br>
> Please also consider the design and user
requirements input in this<br>
> closed issue; <a
href="https://github.com/sugarlabs/GSoC/issues/13"
rel="noreferrer" target="_blank"
moz-do-not-send="true">https://github.com/sugarlabs/GSoC/issues/13</a>
Especially<br>
> note Jupyter Lab; a richer environment than a
browser alone.<br>
><br>
> On Thu, Mar 28, 2019 at 06:22:03PM +0530, Muhammad
Usman wrote:<br>
>> Hello all!<br>
>> I am Muhammad Usman. I am sharing my draft
proposal for Create New Activities<br>
>> and Write activity in Sugarizer. Please do take
a look at it and let me know<br>
>> your thoughts.<br>
>> [1]<a
href="https://gist.github.com/usmanmuhd/ce60a3dd2c43fd5c5fe5154b5bc18750"
rel="noreferrer" target="_blank"
moz-do-not-send="true">https://gist.github.com/usmanmuhd/ce60a3dd2c43fd5c5fe5154b5bc18750</a><br>
>><br>
>> Regards,<br>
>> Muhammad Usman<br>
>><br>
>> References:<br>
>><br>
>> [1] <a
href="https://gist.github.com/usmanmuhd/ce60a3dd2c43fd5c5fe5154b5bc18750"
rel="noreferrer" target="_blank"
moz-do-not-send="true">https://gist.github.com/usmanmuhd/ce60a3dd2c43fd5c5fe5154b5bc18750</a><br>
>> _______________________________________________<br>
>> Sugar-devel mailing list<br>
>> <a
href="mailto:Sugar-devel@lists.sugarlabs.org"
target="_blank" moz-do-not-send="true">Sugar-devel@lists.sugarlabs.org</a><br>
>> <a
href="http://lists.sugarlabs.org/listinfo/sugar-devel"
rel="noreferrer" target="_blank"
moz-do-not-send="true">http://lists.sugarlabs.org/listinfo/sugar-devel</a><br>
><br>
<br>
</blockquote>
</div>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
Sugar-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Sugar-devel@lists.sugarlabs.org">Sugar-devel@lists.sugarlabs.org</a>
<a class="moz-txt-link-freetext" href="http://lists.sugarlabs.org/listinfo/sugar-devel">http://lists.sugarlabs.org/listinfo/sugar-devel</a>
</pre>
</blockquote>
<p><br>
</p>
</body>
</html>