-
Notifications
You must be signed in to change notification settings - Fork 104
Description
Hello. I have just finished reading Get Started. It is an excellent, clear, newcomer-friendly addition to haskell.org. Many thanks @Martinsos for this very useful addition.
One thing that I am not sure about is suggesting VS Code:
- VS Code has some weird, proprietary licence (Wikipedia says: MIT, binaries built by Microsoft proprietary). This might steer away people who value open source software, and also means a number of technical problems (it is more difficult to find VS Code in distribution repositories if the user prefers so, thus increasing friction, etc.).
- Along with that, VS Code collects telemetry data, and as far as I can see this is by default/opt-out. Again something which a sizeable portion of Haskell newcomers might dislike.
- Taking a step back, do we really need to suggest a specific editor? There is much much value in a tool like
ghcup
: not using it and relying on your distribution GHC/cabal will lead to painful experiences in your Haskell learning path. But the editor of choice? I took part in some live “Let’s start with Haskell” workshops, and seldom we had to instruct or help newcomers with editors, they were good on their own.
(Compare this situation with Agda one, where — I believe — Emacs and similar editors provide a much more user friendly experience with the language. Haskell toolchain instead works fine with a number of editors.)
Now that I highlighted what I feel the problems are, my proposed solution:
-
Be less assertive in the introductory section. Instead of
Use VSCode as the editor, with the Haskell extension installed.
we could write
Have an editor ready. Any popular editor (emacs, vim, intellij, VS Code…) will do. Haven’t got one? Pick SuggestedEditor.
-
Select VSCodium as our recommended choice. VSCodium is an open source project that provides freely-licenced, telemetry-free binaries for VS Code.
I would have written a patch myself, but since this change is important I would like to hear feedback from the community.