[Haskell-community] Request for comment: New haskell.org download page

Michael Snoyman michael at fpcomplete.com
Sat Sep 26 18:05:09 UTC 2015


On Fri, Sep 25, 2015 at 9:25 PM, John Wiegley <johnw at newartisans.com> wrote:

> >>>>> Michael Snoyman <michael at fpcomplete.com> writes:
>
> > There was a lot of discussion on Twitter about this thread, but almost
> none
> > of those participants wrote into this discussion. When I asked why[1], I
> got
> > (at least[2]) two forms of response:
> >
> > 1. I don't want to sign up for another mailing list just to vote
>
> I've been there before.
>
> > 2. Previous actions made it seem like the voting would be
> inconsequential to
> > the outcome
>
> This is most unfortunate. The voting certainly matters, since I'm looking
> for
> community feedback to finalize the edits.
>
> > To try and lower the barrier to entry, I created a Google Form with the
> same
> > questions as above:
>
> >
> https://docs.google.com/forms/d/1w2wKSxn5YN4LtSXYHvFT2IFw_BDaT_2cjUkP9pDeqLQ/viewform?usp=send_form
>
> Thanks for this additional data.
>
> I've counted the most votes on the ML for #4. Several of those voting for
> #4
> also voted for #5. The Google Form seems to strongly prefer #3 and #5. So
> let's drop this down to the three main choices:
>
>     (A) Stack   Minimal HP
>     (B) Minimal HP      Stack
>     (C) Minimal Stack   HP
>
> (A) has a very strong showing on the Google Form, but not on the ML. The
> arguments I've collected right now for not preferring (A) are:
>
>   - Stack hasn't proven itself over time yet, the way cabal has.
>   - Stack doesn't actually download a Haskell compiler.
>   - Stack does not make using "ghci" easy.
>
> As for whether HP should be first or not (B or C), I don't have strong
> feelings, since we *are* going to merge the two options.
>
> I'd like to open a second round of voting now on these three options,
> unless
> someone wishes to make a case for those that were dropped.
>
> > Given the obvious sentiment around (2) mentioned above, I think it's
> > important to pay attention to what people are saying outside of this
> mailing
> > list.
>
> If you know of discussions happening elsewhere (SO, reddit, Google+, etc),
> please let me know, since I don't follow those communities. I only happened
> upon your Twitter discussion because Gabriel retweeted it.
>
> John
>

I don't think another round of voting is necessary, and I think asking for
it is a clear message of not listening to people who voted the first time.
I'm also cognizant of Simon's comments about spending too much time on
this, which frankly I've already far overextended on.

This response is probably going to get a bit meander-y, but I want to make
sure we're on the same page about things. The point has been raised
multiple times that - in the future - Stack and HP will really be the same
option. I actually have a very different read on the situation: today,
Stack and *minimal installers* are the same option. I would never have
categorized them as being two separate choices, but as really being the
same choice with a few distinguishing characteristics:

* Stack: easily download multiple versions of GHC, easier upgrade path,
doesn't add a lot of binaries to your PATH. Allow easily downloading and
building all additional tools (alex, happy, cabal-install, etc)
* Minimal installers: provide Stack, alex, happy, cabal-install, and GHC
out of the box. Preferable if: you don't want a build tool downloading your
compiler, you'll be reusing the downloaded file on multiple machines, you
want to use cabal-install instead of Stack, or you want to make sure you
have GHC and friends on the PATH.

My proposal - which is very much in line with the voting results - would be
to make this section first, and the Haskell Platform section second.

I'm not sure if opening this can of worms now is a good idea or not, but
I'll ask it: I don't understand what the future vision is for the Haskell
Platform relative to the minimal installers. As I see it, in the future the
Haskell Platform will be indistinguishable from today's MinGHC/GHC for Mac
OS X, with the possible addition of some global constraint file that is
still too ill-defined for me to be certain what it's going to do[1].

Richard: your concern seems to be having a GHC available on the path that
students can use today. Where do the minimal installers fall short on this?
The big area I see where that will happen is that HP includes more packages
in the global database. But that's exactly the aspect of HP which is
planned to change in the next release, meaning the advantage you're going
for is going to disappear anyway.

I realize I've muddled many things together here (and perhaps a separate
"future of HP" thread is in order), but I've just been getting more
confused reading the various responses. So to sum up, here's what I'd
really see as the future of the downloads page:

* Links provided for a minimal installer and Stack itself
* I picture that at some point, instead of having HP and MinGHC/GHC for Mac
OS X, we'll just have one option. I don't care what that option is called,
so may as well call it HP
* Explanation along the lines I gave above about difference between Stack
and minimal installer, possibly also about difference between Stack and
cabal-install (I'd focus on curation vs dependency solving, even though
that's not technically the primary difference between the two)
* Including "getting started" style guides for using each tool. The Stack
guide could work for both Stack itself and the minimal installer, and in
the future a link to a cabal-install guide could be provided as well

With this approach, I think we can give very concrete advice to new users,
collapse the download options down significantly, and streamline the
community efforts on installers substantially. In the short term: we keep a
link to the HP at the bottom of the page, explaining that it ships with
more packages than minimal installers, and that in some cases it can be
difficult to upgrade those packages.

As a side note, this is not terribly different from what I proposed
originally in my pull request[2].

Michael

[1]
https://mail.haskell.org/pipermail/cabal-devel/2015-September/010247.html
[2] https://github.com/haskell-infra/hl/pull/130
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-community/attachments/20150926/7ec0450a/attachment.html>


More information about the Haskell-community mailing list