Whitelisting KoBoToolbox URLS for data collection and Installation of koboextractor

42 views
Skip to first unread message

Elimboto Yohana

unread,
Aug 22, 2021, 2:22:02 AM8/22/21
to Andrey Novoseltsev, sage-cell
Hi Andrey,

I was struggling with a cumbersome method to import survey data from KoBoToolbox (https://www.kobotoolbox.org/) into Google sheets to be analyzed using SageCell and just discovered that there is a package that can read data from KoBo directly. KoBoToolbox is a free and open-source suite of tools for field data collection, very suitable for use in challenging environments.

I request whitelisting KoBo URLs:


and the installation of the Python package koboextractor: pip install koboextractor (https://pypi.org/project/koboextractor/)

Kind regards,

Elimboto

David Farmer

unread,
Aug 22, 2021, 8:12:46 AM8/22/21
to sage-cell

I don't know anything about this particular request,
but it seems to me that sage cells are moving beyond their
original intention.

The purpose of sage cells is to embed computations in a web page.
That is, I create a web page which allows you to do computations
in the context of that page.

Sage cells are not intended to be a complete computing environment.
Such environments exist: SageMath, CoCalc, Mathematica, Maple, etc.
Those are the tools to use for research and extensive calculations.

I see a risk in trying to have Sage cells fill a role for which they
were not intended, and for which there already exist superior
alternatives. Specific concerns are: the drain on the (free to users)
server which the cells use, work load for the (essentially volunteer)
maintainer, and potentially compromising the ability of sage cells
to be successful at their intended mission.

Regards,

David Farmer
> --
> You received this message because you are subscribed to the Google Groups "sage-cell" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
> sage-cell+...@googlegroups.com.
> To view this discussion on the web visithttps://groups.google.com/d/msgid/sage-cell/CACEZTmvK84JmYGbk9NNf3HxTGTRamMXsGXXDFroJoaE4L%3DqzDg%
> 40mail.gmail.com.
>
>

Elimboto Yohana

unread,
Aug 22, 2021, 8:43:23 AM8/22/21
to David Farmer, sage-cell
HI David,

Is it necessarily bad if sage-cell expands beyond its original intenteon? I don't see any harm if sage-cell is used beyond its original context. Many ideas start from one point and end-up being something else, but sage-cell can still do both.

For me, sage-cell has been very useful because I can use it to run codes without necessarily depending on my local computing environment. I can use a mobile or any other internet-connectes device to do so. It has eliminated barriers in terms of space and time, and in terms of technology too. I have never used sage-cell to embed computations on the web so far, even a single one.

In the current context, I want to use it to immediately read data from KoBotoolbox and do analyses. It is a matter of copying the code and paste it into sage-cell and get results, no need to carry my laptop everywhere or depend on my desktop.

Students enjoy doing the same too.

Kind regards,

Elimboto






David Farmer

unread,
Aug 22, 2021, 9:04:45 AM8/22/21
to sage-cell

> Is it necessarily bad if sage-cell expands beyond its original intenteon? I don't see any harm if
> sage-cell is used beyond its original context. Many ideas start from one point and end-up being
> something else, but sage-cell can still do both.

Dear Elimboto,

I'll repeat the reasons I gave in my previous email.

a) Someone is paying for the server which allows everyone else
to use Sage cells for free. If Sage cells are routinely used
by many people for extensive computations, then at some point
the server will be inadequate and Sage cells will not work.

b) One person is doing almost all the work to maintain Sage cells.
Every new package and new use case has the potential to increase
the work load for that person. What if the work load becomes more
than that person is happy to do on a volunteer part-time basis?

c) Every new feature has a cost. What if I come up with a great
idea which significantly enhances the original mission of Sage
cells, but the implementation is delayed, or more difficult,
because of the distractions from the change in scope of the mission?

There are many examples of software failing in its original
mission because it keeps getting new features and expanded scope.
No doubt the developers "didn't see any harm" in the changes
they made, yet the harm occurred. I don't want Sage cells to suffer
that fate.

And I'll repeat another thing I said in my previous email: there
already are superior alternatives available.

The specific reason you gave is the convenience of doing calculations
anywhere, away from your usual computing environment. I do not
think that a minor convenience outside of the intended scope
is a justification for the requested changes to Sage cells.

Regards,

David
> To view this discussion on the web visithttps://groups.google.com/d/msgid/sage-cell/alpine.LRH.2.21.2108220758570.30625%40li375-150.member
> s.linode.com.
>
> --
> You received this message because you are subscribed to the Google Groups "sage-cell" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
> sage-cell+...@googlegroups.com.
> To view this discussion on the web visithttps://groups.google.com/d/msgid/sage-cell/CACEZTmu9gzoJcvVRt3WcKSS%2Bqg_Z4WowBBFHwbhJsTAy0mpxoQ%
> 40mail.gmail.com.
>
>

Elimboto Yohana

unread,
Aug 22, 2021, 1:37:55 PM8/22/21
to David Farmer, sage-cell
Dear David,

No problem. My concern was sage-cell being used in a different context other than the original intention.

Kind regards,

Elimboto

Andrey Novoseltsev

unread,
Sep 3, 2021, 4:40:55 PM9/3/21
to sage-cell
I'll chime in after the recent upgrade and resolving server crashes ;-)

In theory, it is very little work/maintenance to install another package - add its name to the list of others and rebuild containers. In practice there may be some packages that don't really work with SageMathCell because they want to communicate with user somehow and the only communication that we support is IPython/Jupyter messages. Displaying graphics for Sage/R/Octave required quite a bit of work. There may be also conflicts between packages and their versions. We ran into an issue with snappy, but as long as the conflict was between optional packages, it was not a big deal - some of these packages just didn't work, as if they were not even there. But during upgrade to SageMath 9.4 it turned out that installing tensorflow replaced Sage's numpy and as a result matplotlib stopped working. Since it is imported at start, servers just won't go up and it took me a while to figure out what is going on. Then the fix was of course easy - just drop installation of tensorflow. The experience, however, was useful in understanding recent crashes that happened a bit after the upgrade. Turned out that users were installing tensorflow as a user package and if something happened afterwards the server could not be restarted.

My point is that we surely can install more and more packages, I'll add koboextractor, but they should not be added "just in case" since the more we have, the more likely we are to run into similar issues in the future.

I am also reluctant to whitelist generic servers for internet access - the more we have, the easier it is for a determined user to start using public servers as a compute farm, which could lead to either eliminating network access completely or tightening the limits for computations - neither is desirable.

Best regards,
Andrey
Reply all
Reply to author
Forward
0 new messages