On Mon, 2022-04-25 at 00:39 -0700, seb....@gmail.com wrote:
> 
> So, what do we advertise to potential newcomers to Sage? I think despite 
> such great things as Cocalc, SageMathCell and Gitpod, there should be 
> something easy to install that can be used offline, too.
> 

Everyone agrees on that part, but how to go about it is a religious
matter. I've been using sage, teaching with sage, writing papers that
cite sage, and giving presentations about my research that use sage for
about fifteen years. I have literally never met someone besides myself
who has managed to install it. The only installation procedure that
anyone uses is,

  1. Give the computer to mjo
  2. It comes back in the morning with sage installed

The best way to accomplish the goal of "easy to install" is to make
sage easy to package. It will then be installable with a single command
on any linux distribution, on WSL, or on homebrew. That is, on every
platform we support. (We don't support cygwin in practice any more.)

Binary packages will *never* work. You simply can't cover every
combination of kernel, system library, and CPU. Similarly, using python
packaging (pip install sage) will *never* work. Many of sage's
dependencies are not python packages, and making then pip-installable
amounts to reinventing all of Debian but hosted on pypi. Still, you
will not cover all target systems, because those packages are
necessarily binary packages (pip can't build C programs), and binary
packages will *never* work.

Since binary packages will never work, we should focus on making the
source distribution sane. Not necessarily as friendly as possible for
new users, who should not be its target audience -- but as standard and
as robust as possible for developers and distribution packagers. In
other words, sage should be easy to develop and package. Once it's easy
for the distros and homebrew to package it, it will also be easy to
install.

Right now we have the worst of both worlds, where there's no easy way
to install it, and the source distribution is absolutely bonkers. Any
honest installation instructions begin with two pages of apologizing
for the horrors you're about to encounter. Then the user wastes two or
three days getting build failures, until they eventually throw up their
hands and goto step (1).

Making the source distribution "less friendly" as in intermediate step
may be counter-intuitive, but making it "less special" is the answer to
these problems in the long term.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/bb6d483a3c737796b0cd0121e90d0d1ab77539e0.camel%40orlitzky.com.

Reply via email to