From 98edf948e6befb78399384002ecef74371ba9d4e Mon Sep 17 00:00:00 2001 From: David Christiansen Date: Fri, 3 Mar 2023 13:17:14 +0100 Subject: [PATCH 1/4] Get out of quirks mode Adding a standard doctype will hopefully avoid weird HTML/CSS surprises --- templates/boilerplate.html | 1 + 1 file changed, 1 insertion(+) diff --git a/templates/boilerplate.html b/templates/boilerplate.html index c97a3a6f..a4d057e4 100644 --- a/templates/boilerplate.html +++ b/templates/boilerplate.html @@ -1,3 +1,4 @@ + From 0c277ac7f87bb058806dcbc9fe9c591e385351e0 Mon Sep 17 00:00:00 2001 From: David Christiansen Date: Fri, 3 Mar 2023 14:01:57 +0100 Subject: [PATCH 2/4] Factor out purple nested upper corners This blob of code was copy-pasted all over the place with inconsistent indendation, which posed a real barrier to maintaining the content and style. --- 404.html | 42 +------------ affiliates/about/index.html | 45 +++----------- board-nominations/2022/index.html | 35 ++--------- board-nominations/index.html | 35 ++--------- contact/index.html | 36 ++--------- .../index.html | 39 ++---------- templates/careers/list.html | 39 +----------- templates/corners.html | 26 ++++++++ templates/donations/list.html | 62 ++----------------- templates/donations/page.html | 51 ++++----------- templates/events/list.html | 39 +----------- templates/faq/list.html | 39 +----------- templates/homepage.html | 55 +--------------- templates/news/list.html | 39 +----------- templates/podcast/episode.html | 33 ++-------- templates/podcast/list.html | 39 +----------- templates/press/list.html | 40 +----------- templates/projects/list.html | 39 +----------- templates/resources/list.html | 39 +----------- templates/who-we-are/exec-and-board.html | 36 ++--------- templates/who-we-are/past-board.html | 34 ++-------- vision/index.html | 34 ++-------- whitepaper/index.html | 38 ++---------- 23 files changed, 100 insertions(+), 814 deletions(-) create mode 100644 templates/corners.html diff --git a/404.html b/404.html index bb2b012c..a979b81f 100644 --- a/404.html +++ b/404.html @@ -1,46 +1,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
+ $partial("templates/corners.html")$

Unable to find that page!

-
-
diff --git a/affiliates/about/index.html b/affiliates/about/index.html index 80bdf073..3cd5faf0 100644 --- a/affiliates/about/index.html +++ b/affiliates/about/index.html @@ -1,46 +1,17 @@ --- title: About the Haskell Foundation --- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ $partial("templates/corners.html")$ +
+

What Does Affiliation Entail?

-
-
-

What Does Affiliation Entail?

- -
-
- - -
- +
Affiliation means that the group supports the goals of the Haskell Foundation, and, in return, the Haskell Foundation supports this group. @@ -65,10 +36,10 @@

What Does Affiliation Entail?

- +
- +

Affiliated Committees

Transparency

@@ -197,7 +168,7 @@

Affiliated Projects

- +
diff --git a/board-nominations/2022/index.html b/board-nominations/2022/index.html index bf67f72e..0e1687d8 100644 --- a/board-nominations/2022/index.html +++ b/board-nominations/2022/index.html @@ -1,40 +1,13 @@ --- title: 2022 Board Nominations for the Haskell Foundation --- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ $partial("templates/corners.html")$ +
+

2022 Call for Nominations for the Haskell Foundation

-
-
-

2022 Call for Nominations for the Haskell Foundation

- -
-
-
diff --git a/board-nominations/index.html b/board-nominations/index.html index ef039a17..b629cc26 100644 --- a/board-nominations/index.html +++ b/board-nominations/index.html @@ -2,40 +2,13 @@ title: Board Nominations for the Haskell Foundation (historical) ---
Note: This page is for historical purposes, the call for nominations has expired.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ $partial("templates/corners.html")$ +
+

Haskell Foundation Board Call For Nominations

-
-
-

Haskell Foundation Board Call For Nominations

- -
-
-
diff --git a/contact/index.html b/contact/index.html index 91efa147..0d79ed3b 100644 --- a/contact/index.html +++ b/contact/index.html @@ -1,38 +1,10 @@ --- title: Contacting the Haskell Foundation --- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-

Contact

- -
+
+ $partial("templates/corners.html")$ +
+

Contact

diff --git a/guidelines-for-respectful-communication/index.html b/guidelines-for-respectful-communication/index.html index da72a908..1045f5cb 100644 --- a/guidelines-for-respectful-communication/index.html +++ b/guidelines-for-respectful-communication/index.html @@ -1,45 +1,17 @@ --- title: Guidelines for Respectful Communications --- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ $partial("templates/corners.html")$ +
+

Haskell Foundation Guidelines For Respectful Communication

-
-
-

Haskell Foundation Guidelines For Respectful Communication

- -
-
- -
- +

Preamble

The Haskell Foundation has adopted these guidelines for respectful communication.

@@ -91,4 +63,3 @@

Acknowledgements

- diff --git a/templates/careers/list.html b/templates/careers/list.html index 2d0ec37f..f89ab8a6 100644 --- a/templates/careers/list.html +++ b/templates/careers/list.html @@ -2,44 +2,7 @@ title: Careers ---
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

Careers

diff --git a/templates/corners.html b/templates/corners.html new file mode 100644 index 00000000..8d2a0be3 --- /dev/null +++ b/templates/corners.html @@ -0,0 +1,26 @@ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/templates/donations/list.html b/templates/donations/list.html index dd73092a..448f6a6d 100644 --- a/templates/donations/list.html +++ b/templates/donations/list.html @@ -2,34 +2,7 @@ title: Donations and Sponsorship ---
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
- +$partial("templates/corners.html")$

Donations

@@ -56,38 +29,11 @@

Donating To The Haskell Foundat
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$ +
+

Sponsorship

-
- -
- -
-

Sponsorship

-
-
diff --git a/templates/donations/page.html b/templates/donations/page.html index 478e1442..6d395335 100644 --- a/templates/donations/page.html +++ b/templates/donations/page.html @@ -1,40 +1,15 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

$title$

-
-
+ $partial("templates/corners.html")$ +
+

$title$

+
+
+ + +
+
+
+ $body$
- -
-
-
- $body$ -
-
-
- \ No newline at end of file +
+
diff --git a/templates/events/list.html b/templates/events/list.html index a231537c..e6d5d7fe 100644 --- a/templates/events/list.html +++ b/templates/events/list.html @@ -2,44 +2,7 @@ title: Events ---
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

Events

diff --git a/templates/faq/list.html b/templates/faq/list.html index 6ef032a6..099c1801 100644 --- a/templates/faq/list.html +++ b/templates/faq/list.html @@ -1,42 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

FAQ

diff --git a/templates/homepage.html b/templates/homepage.html index 1e50ba35..c75aca00 100644 --- a/templates/homepage.html +++ b/templates/homepage.html @@ -94,33 +94,7 @@

Not “just another programming langu
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
+ $partial("templates/corners.html")$

Our Ethos

@@ -167,32 +141,7 @@

Transparency.

-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

Follow HF Developments

diff --git a/templates/news/list.html b/templates/news/list.html index 08886231..c43626da 100644 --- a/templates/news/list.html +++ b/templates/news/list.html @@ -2,44 +2,7 @@ title: News ---
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

News

diff --git a/templates/podcast/episode.html b/templates/podcast/episode.html index c9fad28a..03828975 100644 --- a/templates/podcast/episode.html +++ b/templates/podcast/episode.html @@ -1,34 +1,9 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

$episode$ – $title$

-
-
+ $partial("templates/corners.html")$ +
+

$episode$ – $title$

+
diff --git a/templates/podcast/list.html b/templates/podcast/list.html index fd1411f7..0ff1d763 100644 --- a/templates/podcast/list.html +++ b/templates/podcast/list.html @@ -1,42 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

The Haskell Interlude

diff --git a/templates/press/list.html b/templates/press/list.html index 6e90eecc..f5f6febb 100644 --- a/templates/press/list.html +++ b/templates/press/list.html @@ -1,43 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
+ $partial("templates/corners.html")$

Press

diff --git a/templates/projects/list.html b/templates/projects/list.html index e8758948..81adeaf1 100644 --- a/templates/projects/list.html +++ b/templates/projects/list.html @@ -2,44 +2,7 @@ title: Projects ---
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

Projects

diff --git a/templates/resources/list.html b/templates/resources/list.html index a6b04331..84ad72cf 100644 --- a/templates/resources/list.html +++ b/templates/resources/list.html @@ -1,42 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $partial("templates/corners.html")$

Resources

diff --git a/templates/who-we-are/exec-and-board.html b/templates/who-we-are/exec-and-board.html index c0091ff0..8675a4c5 100644 --- a/templates/who-we-are/exec-and-board.html +++ b/templates/who-we-are/exec-and-board.html @@ -1,38 +1,10 @@ - - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ $partial("templates/corners.html")$ +
+

Who We Are

-
-
-

Who We Are

-
-

Executive Team

diff --git a/templates/who-we-are/past-board.html b/templates/who-we-are/past-board.html index a6891032..9f670880 100644 --- a/templates/who-we-are/past-board.html +++ b/templates/who-we-are/past-board.html @@ -1,36 +1,10 @@ -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ $partial("templates/corners.html")$ +
+

Past Boards

-
-
-

Past Boards

-
-
-

Past Board Members

diff --git a/vision/index.html b/vision/index.html index ad7f86ee..a95216ee 100644 --- a/vision/index.html +++ b/vision/index.html @@ -1,36 +1,10 @@ --- title: Haskell Foundation Vision --- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

Our Vision

-
-
+
+ $partial("templates/corners.html")$ +
+

Our Vision

diff --git a/whitepaper/index.html b/whitepaper/index.html index 0bb3ebda..be6d667c 100644 --- a/whitepaper/index.html +++ b/whitepaper/index.html @@ -1,45 +1,18 @@ --- title: Haskell Foundation Whitepaper --- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ $partial("templates/corners.html")$ +
+

A New Chapter For Haskell: The Haskell Foundation

-
-
-

A New Chapter For Haskell: The Haskell Foundation

- -
-
-
- +

Prelude

Haskell’s slogan of “avoid success at all costs” was a clever and cheeky way of saying that innovation and research in programming languages, especially in functional programming, needed some insulation to succeed. Ideas that were not perfectly understood needed iteration to fully develop in the minds of language innovators and users. By avoiding the “success at all costs” mentality of other language communities, the Haskell community bought time and space to try ideas that were not perfectly understood at first. Since then, the Haskell language has sparked so many lasting innovations in language design that its impact is now beyond doubt. What is the reason for this outsized impact? Haskell and related languages re-opened the connection between mathematical thinking on the one hand and compilers and programming languages on the other. It showed that these two fields should never have drifted so far apart. By removing the ceiling on the ideas that are easier to express in Haskell, it attracted the brightest minds and still does. It became a lingua franca for a large swath of CS research. In education, Haskell helps CS students learn to think better. The quality of ideas represented in the Haskell ecosystem has attracted both small and large companies. In many ways, the story of Haskell is one of success. Perhaps it was unavoidable after all.

@@ -124,4 +97,3 @@

Technical Agenda: Enhancing The Tooling, Filling The Gaps

- From f7d8b151bc3b5c91996113ab52cf98d2448d0dbc Mon Sep 17 00:00:00 2001 From: Jake Wood Date: Mon, 6 Mar 2023 23:31:47 -0500 Subject: [PATCH 3/4] autoformats html --- .gitignore | 1 + affiliates/about/index.html | 258 ++++++++--------- board-nominations/2022/index.html | 118 ++++---- board-nominations/index.html | 261 +++++++++--------- contact/index.html | 111 ++++---- .../index.html | 81 +++--- templates/affiliates/list.html | 6 +- templates/affiliates/tile.html | 3 +- templates/boilerplate.html | 45 +-- templates/careers/list.html | 10 +- templates/careers/page.html | 28 +- templates/donations/list.html | 148 +++++----- templates/donations/page.html | 3 +- templates/donations/tile.html | 4 +- templates/event.html | 26 +- templates/events/tile.html | 14 +- templates/footer.html | 20 +- templates/homepage.html | 159 ++++++----- templates/mobile-nav-flyout.html | 24 +- templates/nav.html | 119 ++++---- templates/news/frontpage.html | 6 +- templates/podcast/episode.html | 65 +++-- templates/podcast/list.html | 26 +- templates/projects/list.html | 4 +- templates/resources/tile.html | 10 +- templates/who-we-are/exec-and-board.html | 141 +++++----- templates/who-we-are/past-board.html | 103 ++++--- vision/index.html | 212 +++++++------- whitepaper/index.html | 172 ++++++------ 29 files changed, 1085 insertions(+), 1093 deletions(-) diff --git a/.gitignore b/.gitignore index d5bc97e8..492bc32f 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ dist-newstyle/ ### General ### *~ +.DS_Store diff --git a/affiliates/about/index.html b/affiliates/about/index.html index 3cd5faf0..450bd6aa 100644 --- a/affiliates/about/index.html +++ b/affiliates/about/index.html @@ -8,168 +8,180 @@

What Does Affiliation Entail?

-
-
-
- -
-
- Affiliation means that the group supports the goals of the Haskell Foundation, and, in return, the Haskell Foundation supports this group. -
-
- Different groups work in different ways, and it would be counter-productive to impose complete uniformity. However, we expect the groups that want to affiliate with the Haskell Foundation to follow a few ground rules, laid out below. -
-
-
-
- Affiliation does not mean that the HF is taking over control of that group’s bailiwick. The group’s powers and responsibilities remain unchanged, although it would be reasonable to expect the group to take into account the views of the HF. -
-
- We make a distinction between projects and committees. -
-
+
+
+
+
+
+ Affiliation means that the group supports the goals of the Haskell Foundation, and, in return, the Haskell Foundation supports this group. +
+
+ Different groups work in different ways, and it would be counter-productive to impose complete uniformity. However, we expect the groups that want to affiliate with the Haskell Foundation to follow a few ground rules, laid out below. +
+
+
+
+ Affiliation does not mean that the HF is taking over control of that group’s bailiwick. The group’s powers and responsibilities remain unchanged, although it would be reasonable to expect the group to take into account the views of the HF. +
+
+ We make a distinction between projects and committees. +
+
- +
-
-
+
+
-

Affiliated Committees

+

Affiliated Committees

-

Transparency

-
    -
  • - Group must have some website that makes it clear what the goals and responsibilities of this group are -

  • -
  • -

    - All technical discussions must be stored in a publicly accessible location, for example: -

    +

    Transparency

      -
    • - GitHub issues -

    • -
    • - GitLab issues -

    • -
    • - Mailing list archives There is an obvious exception for confidential matters such as financial and security related information -

    • +
    • +

      + Group must have some website that makes it clear what the goals and responsibilities of this group are +

      +
    • +
    • +

      + All technical discussions must be stored in a publicly accessible location, for example: +

      +
        +
      • +

        + GitHub issues +

        +
      • +
      • +

        + GitLab issues +

        +
      • +
      • +

        + Mailing list archives There is an obvious exception for confidential matters such as financial and security related information +

        +
      • +
      +
    • +
    • +

      + It should be clear what decisions the group has taken, and what are under discussion (if it’s that kind of group). A good example of this are the GHC Steering Committee proposals, but a simple email to a public list can also suffice. +

      +
    • +
    • +

      + The group must have a voting system in place in case it cannot reach unanimity. Votes must be accompanied by reasoning, and a tie-breaking mechanism should be in place. +

      +
    -
  • -
  • - It should be clear what decisions the group has taken, and what are under discussion (if it’s that kind of group). A good example of this are the GHC Steering Committee proposals, but a simple email to a public list can also suffice. -

  • -
  • - The group must have a voting system in place in case it cannot reach unanimity. Votes must be accompanied by reasoning, and a tie-breaking mechanism should be in place. -

  • -
-

Membership

-
    -
  • -

    - The group’s website should list its members (with their affiliations and terms), and the membership rules. -

    -
  • -
  • -

    - Groups should appoint a chair (or co-chairs) or a contact for Haskell Foundation. -

    -
  • -
  • -

    - Groups should ensure a turnover of membership, for example by setting terms. -

    +

    Membership

    • - This only makes sense for "decision-making" bodies, not really for groups that just focus on doing work. + The group’s website should list its members (with their affiliations and terms), and the membership rules.

    • -
    -
  • -
  • -

    - The process for appointing new members should be clearly set out: -

    -
    • - There should be a “way in” for new members who are not already part of the “in crowd”; for example, a regular opportunity to self-nominate. + Groups should appoint a chair (or co-chairs) or a contact for Haskell Foundation.

    • - Criteria for new members should be written down, so that new members can address them in writing a self-nomination. + Groups should ensure a turnover of membership, for example by setting terms.

      +
        +
      • +

        + This only makes sense for "decision-making" bodies, not really for groups that just focus on doing work. +

        +
      • +
    • - A reasonably broad group of people should be involved in making appointment decisions (e.g. not just the chair). Typically the whole group votes on appointing new members. + The process for appointing new members should be clearly set out:

      +
        +
      • +

        + There should be a “way in” for new members who are not already part of the “in crowd”; for example, a regular opportunity to self-nominate. +

        +
      • +
      • +

        + Criteria for new members should be written down, so that new members can address them in writing a self-nomination. +

        +
      • +
      • +

        + A reasonably broad group of people should be involved in making appointment decisions (e.g. not just the chair). Typically the whole group votes on appointing new members. +

        +
      • +
    -
  • -
-

CODE OF CONDUCT

-

- Groups must adopt the Guidelines for Respectful Communication. Groups may additionally adopt other guidelines & CoCs that are stronger; as long as they do not conflict with the GRC. -

-

- Why make a code of conduct as part of HF affiliation? -

-
    -
  • +

    CODE OF CONDUCT

    - We want the Haskell community to be welcoming, diverse, and inclusive. Having explicit guidelines for respectful communication signals that desire, and makes it more explicit and concrete. + Groups must adopt the Guidelines for Respectful Communication. Groups may additionally adopt other guidelines & CoCs that are stronger; as long as they do not conflict with the GRC.

    -
  • -
  • - For all of us, as individuals and as groups, making an explicit commitment to respectful communication encourages us to review our messages to see if they meet the goals set out in the guidelines, and will give others some specifics to point to if we fail. + Why make a code of conduct as part of HF affiliation?

    -
  • -
+
    +
  • +

    + We want the Haskell community to be welcoming, diverse, and inclusive. Having explicit guidelines for respectful communication signals that desire, and makes it more explicit and concrete. +

    +
  • +
  • +

    + For all of us, as individuals and as groups, making an explicit commitment to respectful communication encourages us to review our messages to see if they meet the goals set out in the guidelines, and will give others some specifics to point to if we fail. +

    +
  • +
-

Affiliated Projects

+

Affiliated Projects

-
    -
  • -

    - The project must have a public issue tracker and/or mailing list where discussion about the project takes place -

    -
  • -
  • -

    - The expectation is that the project has at least one responsive maintainer. If this is not the case, it should be clearly signalled that more resources are required. -

    -
  • -
  • -

    - The project must be open to community discussion about possible features and contributions. -

    -
  • -
  • -

    - The project should encourage new contributors and members, i.e. there should be "a way in". -

    -
  • -
  • -

    - Just like committees, the project must adopt the Guidelines for Respectful Communication as a code of conduct. -

    -
  • -
+
    +
  • +

    + The project must have a public issue tracker and/or mailing list where discussion about the project takes place +

    +
  • +
  • +

    + The expectation is that the project has at least one responsive maintainer. If this is not the case, it should be clearly signalled that more resources are required. +

    +
  • +
  • +

    + The project must be open to community discussion about possible features and contributions. +

    +
  • +
  • +

    + The project should encourage new contributors and members, i.e. there should be "a way in". +

    +
  • +
  • +

    + Just like committees, the project must adopt the Guidelines for Respectful Communication as a code of conduct. +

    +
  • +
+
-
+
diff --git a/board-nominations/2022/index.html b/board-nominations/2022/index.html index 0e1687d8..73e1f929 100644 --- a/board-nominations/2022/index.html +++ b/board-nominations/2022/index.html @@ -8,54 +8,52 @@

2022 Call for Nominations for the Haskell Foundation

+
+
+ +

+ The Board of Directors of the Haskell Foundation is pleased to announce the nomination process for Board seats. + As per the + Board membership lifecycle rules, and since the current board has 13 members, at most one position may + be filled by this call. Note that the Board may also choose to not elect any new members at this stage, since it is + not about to drop below the minimum of 8 members. +

+ +

+ The Board provides the strategic leadership for the Foundation, and is the final decision-making body for everything + the Foundation does. More specifically, it ensures that the Foundation is working toward achieving its mission, + and it appoints and supervises senior members of Foundation staff. +

+ +

The Foundation Board

+

Membership

+
    +
  • Being a member of the Foundation Board means giving you the opportunity to contribute directly to the + strategic direction of the Foundation, to help build the Haskell community, and to help promote the broader + adoption of functional programming.
  • +
  • Being a member of the Board is not an honorary post; it involves real work. There will typically be ad-hoc or + permanent working groups, on which Board members are expected to serve or chair.
  • +
  • Currently, the Board meets for one hour every two weeks, with attendance taken. + Board members may excuse themselves from meeting by an email to the Chair, but such excuses should ideally be + infrequent.
  • +
  • Once appointed, Board members should act in the best interests of the Foundation and the entire Haskell + community; they are not appointed to represent the interests of a particular group.
  • +
-
-
- -

- The Board of Directors of the Haskell Foundation is pleased to announce the nomination process for Board seats. - As per the - Board membership lifecycle rules, and since the current board has 13 members, at most one position may - be filled by this call. Note that the Board may also choose to not elect any new members at this stage, since it is - not about to drop below the minimum of 8 members. -

- -

- The Board provides the strategic leadership for the Foundation, and is the final decision-making body for everything - the Foundation does. More specifically, it ensures that the Foundation is working toward achieving its mission, - and it appoints and supervises senior members of Foundation staff. -

- -

The Foundation Board

-

Membership

- -
    -
  • Being a member of the Foundation Board means giving you the opportunity to contribute directly to the - strategic direction of the Foundation, to help build the Haskell community, and to help promote the broader - adoption of functional programming.
  • -
  • Being a member of the Board is not an honorary post; it involves real work. There will typically be ad-hoc or - permanent working groups, on which Board members are expected to serve or chair.
  • -
  • Currently, the Board meets for one hour every two weeks, with attendance taken. - Board members may excuse themselves from meeting by an email to the Chair, but such excuses should ideally be - infrequent.
  • -
  • Once appointed, Board members should act in the best interests of the Foundation and the entire Haskell - community; they are not appointed to represent the interests of a particular group.
  • -
- -

Criteria

-

Nominations for membership of the Board will be evaluated against the following criteria:

+

Criteria

+

Nominations for membership of the Board will be evaluated against the following criteria:

-
    -
  • You have a positive drive and vision for the Haskell community and ecosystem
  • -
  • You have a track record of contribution to the Haskell community and ecosystem
  • -
  • You are widely trusted and respected in the community.
  • -
  • You have enough time and energy to devote to being a member of the board; it is not an honorary position!
  • -
+
    +
  • You have a positive drive and vision for the Haskell community and ecosystem
  • +
  • You have a track record of contribution to the Haskell community and ecosystem
  • +
  • You are widely trusted and respected in the community.
  • +
  • You have enough time and energy to devote to being a member of the board; it is not an honorary position!
  • +
-

- Moreover, the Haskell Foundation Board aims to reflect the priorities of Haskell’s various constituencies, including: -

+

+ Moreover, the Haskell Foundation Board aims to reflect the priorities of Haskell’s various constituencies, including: +

  • Companies that use Haskell in production, and Haskell consultancies; giving this group a stronger voice is one of the HF’s main goals.
  • @@ -66,23 +64,25 @@

    Criteria

  • Functional programming researchers who build on and/or develop Haskell.
-

NB: nominations are also welcome from individuals who meet other criteria but do not represent any particular constituency.

+

NB: nominations are also welcome from individuals who meet other criteria but do not represent any particular constituency.

-

Simultaneously hitting all these criteria is nigh impossible. However, each subsequent round of nominations for new Board members offers a fresh chance to rectify any imbalances.

+

Simultaneously hitting all these criteria is nigh impossible. However, each subsequent round of nominations for new Board members offers a fresh chance to rectify any imbalances.

-

Nominations

-

Please submit your nomination to nominations@haskell.foundation, by 1st March 2022.

+

Nominations

+

Please submit your nomination to nominations@haskell.foundation, by 1st March 2022.

-

Your nomination should be accompanied by a brief CV and a covering letter that says

+

Your nomination should be accompanied by a brief CV and a covering letter that says

-
    -
  • How you fit the above criteria.
  • -
  • Why you would like to be a Board member
  • -
  • What you feel you could contribute
  • -
+
    +
  • How you fit the above criteria.
  • +
  • Why you would like to be a Board member
  • +
  • What you feel you could contribute
  • +
-

- For further information about the nomination process, please contact the secretariat of the Foundation - (Secretary Théophile Hécate Choutri and Vice Secretary José Pedro Magalhães) at - secretariat@haskell.foundation. -

+

+ For further information about the nomination process, please contact the secretariat of the Foundation + (Secretary Théophile Hécate Choutri and Vice Secretary José Pedro Magalhães) at + secretariat@haskell.foundation. +

+
+
diff --git a/board-nominations/index.html b/board-nominations/index.html index b629cc26..7c28d84e 100644 --- a/board-nominations/index.html +++ b/board-nominations/index.html @@ -9,142 +9,139 @@

Haskell Foundation Board Call For Nominations

+
+
+

The Haskell Foundation seeks nominations for the Foundation Board.

+ +

The Haskell Foundation is a new non-profit organisation that seeks to articulate the benefits of functional programming to a broader audience, to erase barriers to entry, and to support Haskell as a solidly reliable basis for mission-critical applications.

+ +

The Foundation Board

+

Remit Of The Board

+

The Board provides the strategic leadership for the Foundation, and is the decision-making body for everything the Foundation does. More specifically

-
-
- -

The Haskell Foundation seeks nominations for the Foundation Board.

- -

The Haskell Foundation is a new non-profit organisation that seeks to articulate the benefits of functional programming to a broader audience, to erase barriers to entry, and to support Haskell as a solidly reliable basis for mission-critical applications.

- -

The Foundation Board

-

Remit Of The Board

-

The Board provides the strategic leadership for the Foundation, and is the decision-making body for everything the Foundation does. More specifically

- -
    -
  • Governance: leadership and direction - set strategy, provide guidance
  • -
  • Staff: appoint senior members of Foundation staff
  • -
  • Define, curate and track Foundation goals
  • -
  • Deploy the funds raised by the Foundation to support the Foundation’s goals.
  • -
  • Seek out opportunities to further the goals of the Foundation
  • -
  • Represent the Haskell community to the world: liaise with sponsors, public bodies (ACM, standards committees) etc
  • -
  • Ensure success and long-term continuity of the Foundation
  • -
  • Receive and review financial accounts
  • -
- -

- The Foundation will not supplant or replace the excellent work of existing groups. So, for example, the GHC Steering Group is responsible for making decisions about GHC proposals. Similarly, decisions about stack are taken by the stack team, and about Haddock are taken by the Haddock team. The Board will hopefully influence these groups, and improve communication between them, but they remain individually responsible for decisions in their bailiwicks. -

- -

Membership

-

- - Being a member of the Foundation Board means gives you the opportunity to contribute directly to the strategic direction of the Foundation, to help build the Haskell community, and to help promote the broader adoption of functional programming. -

- -
    -
  • - Being a member of the Board is not an honorary post; it involves real work. There will typically be ad-hoc or permanent working groups, on which Board members are expected to serve or chair. -
  • -
  • - The Board needs to be big enough to have a breadth of expertise and representation, but small enough to be effective. We will start with a Board of 12 members. -
  • -
  • - Once appointed, board members should act in the best interests of the Foundation and the entire Haskell community; they are not appointed to represent the interests of a particular group. -
  • -
  • - Members will have fixed terms, to ensure a steady turnover of members. There is a balance here: it’s a pity to lose strong, well-qualified members too quickly. The details remain to be settled, but will be something like: three or four year terms, but with the possibility of being renewed once, and the possibility of returning after a gap. -
  • -
  • - Terms will be staggered so that a similar number of members reach the end of their term at regular intervals. “Regular intervals” might mean annually or every two years; again there is a balance between providing a regular “way in” and the overheads of nomination, selection, and onboarding. To bootstrap this process the Interim Board may invite some members to serve for shorter initial terms. -
  • -
  • - No two members should be paid employees of the same organisation -
  • -
- -

- The Executive Director reports to the board, attends all board meetings, but does not vote. -

- -

- The initial membership of the Board will be chosen by the Interim Board, based on open nominations against written criteria. (After this bootstrap process, the Board itself chooses its new members, based on a similar call for nominations.) This document is the call for nominations. -

- -

Key Roles

-
    -
  • Chair (elected annually by the Foundation Board members)
  • -
  • Treasurer
  • -
  • Secretary
  • -
- -

Transparency

-

The Board should conduct its business as transparently as possible. Specifically:

- -
    -
  • It should publish public minutes of meetings and decisions.
  • -
  • It should be open about its finances: where money comes from, and what it is spent on.
  • -
  • It should conduct most conversations on a publicly-readable mailing list.
  • -
- -

In all cases there may be some aspects of the Board’s work that should properly be private, e.g. relating to security, staff, or money. The Board will have to make judgements about this, but the strong default is to work in public.

- -

Nominations For The Board

-

Please submit your nomination to nominations@haskell.foundation, by Monday 11 January 2021.

- -

Your nomination should be accompanied by a brief CV and a covering letter that says

- -
    -
  • How you fit the criteria below.
  • -
  • Why you would like to be a Board member
  • -
  • What you feel you could contribute
  • -
- -

Please indicate whether you would consider the role of Secretary (legal knowledge/experience useful) or Treasurer (financial knowledge/experience useful).

- -

These nominations will be evaluated by the Interim Board, which will disband once the Foundation Board is in place. Its members are:

- -
    -
  • Lennart Augustsson (Epic Games)
  • -
  • Chris Dornan (IRIS Connect)
  • -
  • Jasper van der Jeugt (haskell.org)
  • -
  • Gabriele Keller (Utrecht University)
  • -
  • Ed Kmett (Miri)
  • -
  • Simon Marlow (Facebook)
  • -
  • Simon Peyton Jones (Microsoft Research)
  • -
  • Stephanie Weirich (University of Pennsylvania)
  • -
- -

Criteria

-

Nominations for membership of the Board will be evaluated against the following criteria:

- -
    -
  • You have a positive drive and vision for the Haskell community and ecosystem
  • -
  • You have a track record of contribution to the Haskell community and ecosystem
  • -
  • You are widely trusted and respected in the community.
  • -
  • You have enough time and energy to devote to being a member of the board; it is not an honorary position!
  • -
-

The Interim Board will seek to appoint a Board that, collectively, satisfies these criteria:

- -
    -
  • Includes individuals with the skills, expertise and experience (e.g. technical, legal, organisational, community-building) that the Board needs.
  • -
  • Reflects the rich diversity (e.g. of age, gender, geographical spread) that is in the Haskell community.
  • -
  • Includes individuals who are well-equipped to reflect the priorities of Haskell’s various constituencies, including
      -
    • Companies that use Haskell in production, and Haskell consultancies; giving this group a stronger voice is one of the HF’s main goals.
    • -
    • Users of Haskell. That might include companies, but also includes the broader open-source community, hobbyists, etc.
    • -
    • Sponsors: companies (or even individuals) who are funding the Foundation.
    • -
    • People who build and run the infrastructure of the Haskell ecosystem: compilers, libraries, packaging and distribution, IDEs etc.
    • -
    • Educators, including school, university, and commercial training courses.
    • -
    • Functional programming researchers who build on and/or develop Haskell.
    • +
    • Governance: leadership and direction - set strategy, provide guidance
    • +
    • Staff: appoint senior members of Foundation staff
    • +
    • Define, curate and track Foundation goals
    • +
    • Deploy the funds raised by the Foundation to support the Foundation’s goals.
    • +
    • Seek out opportunities to further the goals of the Foundation
    • +
    • Represent the Haskell community to the world: liaise with sponsors, public bodies (ACM, standards committees) etc
    • +
    • Ensure success and long-term continuity of the Foundation
    • +
    • Receive and review financial accounts
    -
  • -
-

NB: nominations are also welcome from individuals who meet other criteria but do not represent any particular constituency.

-

Simultaneously hitting all these criteria is nigh impossible. However, each subsequent round of nominations for new Board members offers a fresh chance to rectify any imbalances.

+

+ The Foundation will not supplant or replace the excellent work of existing groups. So, for example, the GHC Steering Group is responsible for making decisions about GHC proposals. Similarly, decisions about stack are taken by the stack team, and about Haddock are taken by the Haddock team. The Board will hopefully influence these groups, and improve communication between them, but they remain individually responsible for decisions in their bailiwicks. +

-
-
+

Membership

+

+ + Being a member of the Foundation Board means gives you the opportunity to contribute directly to the strategic direction of the Foundation, to help build the Haskell community, and to help promote the broader adoption of functional programming. +

+ +
    +
  • + Being a member of the Board is not an honorary post; it involves real work. There will typically be ad-hoc or permanent working groups, on which Board members are expected to serve or chair. +
  • +
  • + The Board needs to be big enough to have a breadth of expertise and representation, but small enough to be effective. We will start with a Board of 12 members. +
  • +
  • + Once appointed, board members should act in the best interests of the Foundation and the entire Haskell community; they are not appointed to represent the interests of a particular group. +
  • +
  • + Members will have fixed terms, to ensure a steady turnover of members. There is a balance here: it’s a pity to lose strong, well-qualified members too quickly. The details remain to be settled, but will be something like: three or four year terms, but with the possibility of being renewed once, and the possibility of returning after a gap. +
  • +
  • + Terms will be staggered so that a similar number of members reach the end of their term at regular intervals. “Regular intervals” might mean annually or every two years; again there is a balance between providing a regular “way in” and the overheads of nomination, selection, and onboarding. To bootstrap this process the Interim Board may invite some members to serve for shorter initial terms. +
  • +
  • + No two members should be paid employees of the same organisation +
  • +
+ +

+ The Executive Director reports to the board, attends all board meetings, but does not vote. +

+ +

+ The initial membership of the Board will be chosen by the Interim Board, based on open nominations against written criteria. (After this bootstrap process, the Board itself chooses its new members, based on a similar call for nominations.) This document is the call for nominations. +

+ +

Key Roles

+
    +
  • Chair (elected annually by the Foundation Board members)
  • +
  • Treasurer
  • +
  • Secretary
  • +
+ +

Transparency

+

The Board should conduct its business as transparently as possible. Specifically:

+ +
    +
  • It should publish public minutes of meetings and decisions.
  • +
  • It should be open about its finances: where money comes from, and what it is spent on.
  • +
  • It should conduct most conversations on a publicly-readable mailing list.
  • +
+ +

In all cases there may be some aspects of the Board’s work that should properly be private, e.g. relating to security, staff, or money. The Board will have to make judgements about this, but the strong default is to work in public.

+ +

Nominations For The Board

+

Please submit your nomination to nominations@haskell.foundation, by Monday 11 January 2021.

+ +

Your nomination should be accompanied by a brief CV and a covering letter that says

+
    +
  • How you fit the criteria below.
  • +
  • Why you would like to be a Board member
  • +
  • What you feel you could contribute
  • +
+ +

Please indicate whether you would consider the role of Secretary (legal knowledge/experience useful) or Treasurer (financial knowledge/experience useful).

+ +

These nominations will be evaluated by the Interim Board, which will disband once the Foundation Board is in place. Its members are:

+ +
    +
  • Lennart Augustsson (Epic Games)
  • +
  • Chris Dornan (IRIS Connect)
  • +
  • Jasper van der Jeugt (haskell.org)
  • +
  • Gabriele Keller (Utrecht University)
  • +
  • Ed Kmett (Miri)
  • +
  • Simon Marlow (Facebook)
  • +
  • Simon Peyton Jones (Microsoft Research)
  • +
  • Stephanie Weirich (University of Pennsylvania)
  • +
+ +

Criteria

+

Nominations for membership of the Board will be evaluated against the following criteria:

+ +
    +
  • You have a positive drive and vision for the Haskell community and ecosystem
  • +
  • You have a track record of contribution to the Haskell community and ecosystem
  • +
  • You are widely trusted and respected in the community.
  • +
  • You have enough time and energy to devote to being a member of the board; it is not an honorary position!
  • +
+

The Interim Board will seek to appoint a Board that, collectively, satisfies these criteria:

+ +
    +
  • Includes individuals with the skills, expertise and experience (e.g. technical, legal, organisational, community-building) that the Board needs.
  • +
  • Reflects the rich diversity (e.g. of age, gender, geographical spread) that is in the Haskell community.
  • +
  • Includes individuals who are well-equipped to reflect the priorities of Haskell’s various constituencies, including +
      +
    • Companies that use Haskell in production, and Haskell consultancies; giving this group a stronger voice is one of the HF’s main goals.
    • +
    • Users of Haskell. That might include companies, but also includes the broader open-source community, hobbyists, etc.
    • +
    • Sponsors: companies (or even individuals) who are funding the Foundation.
    • +
    • People who build and run the infrastructure of the Haskell ecosystem: compilers, libraries, packaging and distribution, IDEs etc.
    • +
    • Educators, including school, university, and commercial training courses.
    • +
    • Functional programming researchers who build on and/or develop Haskell.
    • +
    +
  • +
+

NB: nominations are also welcome from individuals who meet other criteria but do not represent any particular constituency.

+ +

Simultaneously hitting all these criteria is nigh impossible. However, each subsequent round of nominations for new Board members offers a fresh chance to rectify any imbalances.

+ +
+
diff --git a/contact/index.html b/contact/index.html index 0d79ed3b..4c0e3338 100644 --- a/contact/index.html +++ b/contact/index.html @@ -11,99 +11,100 @@

Contact

-
-

General Information

-

For general information or volunteer opportunities, please email us:

+
+

General Information

+

For general information or volunteer opportunities, please email us:

-
+
-
-

Sponsorship

-

Does your company use Haskell? Email us to join the conversation with other enterprise users of Haskell.

+
+

Sponsorship

+

Does your company use Haskell? Email us to join the conversation with other enterprise users of Haskell.

-
+
-
-

Press Kit

-

For press-related information, including branding, logos, and syndication opportunities, please email us:

+
+

Press Kit

+

For press-related information, including branding, logos, and syndication opportunities, please email us:

-
+
-
-

Volunteers

-

For more information on volunteer opportunities, please email us:

+
+

Volunteers

+

For more information on volunteer opportunities, please email us:

-
+
-
-

Board of Directors

-

To contact the Haskell Foundation Board of Directors, email the Google Group:

+
+

Board of Directors

+

To contact the Haskell Foundation Board of Directors, email the Google Group:

-

You can also read the Google Group:

- +

You can also read the Google Group:

+ -
+
-
-

Follow HF Developments

-

Follow us on or join a mailing list

-
- -
-
-
-

HF Discourse

-

- Discourse is where HF presents its major announcements, and solicits feedback on proposals and ongoing development. Additionally, this is a great place to make your desire to participate known, and to get up to date meeting minutes. All posted meeting minutes are archived at the HF gitlab repository. -

-
- - +
+

Follow HF Developments

+

Follow us on or join a mailing list

-
-
-

HF Slack

-

- Joining the Slack is a great way to begin volunteering and participating in HF projects. All HF Slack communications are considered informal and are expected to conform to the Guidelines for Respectful Communication. -

-
-
- >> Slack Invite + +
+
+
+

HF Discourse

+

+ Discourse is where HF presents its major announcements, and solicits feedback on proposals and ongoing development. Additionally, this is a great place to make your desire to participate known, and to get up to date meeting minutes. All posted meeting minutes are archived at the HF gitlab repository. +

+ +
+
+

HF Slack

+

+ Joining the Slack is a great way to begin volunteering and participating in HF projects. All HF Slack communications are considered informal and are expected to conform to the Guidelines for Respectful Communication. +

+
+ +
+
-
-
-
+
diff --git a/guidelines-for-respectful-communication/index.html b/guidelines-for-respectful-communication/index.html index 1045f5cb..18ad876b 100644 --- a/guidelines-for-respectful-communication/index.html +++ b/guidelines-for-respectful-communication/index.html @@ -8,58 +8,57 @@

Haskell Foundation Guidelines For Respectful Communicat

+
+
-
-
+

Preamble

+

The Haskell Foundation has adopted these guidelines for respectful communication.

-

Preamble

-

The Haskell Foundation has adopted these guidelines for respectful communication.

+

We do not seek to impose these guidelines on members of the Haskell community generally. Rather it is a signal that we seek high standards of discourse in the Haskell community, and are willing to publicly hold ourselves to that standard, in the hope that others may voluntarily follow suit.

-

We do not seek to impose these guidelines on members of the Haskell community generally. Rather it is a signal that we seek high standards of discourse in the Haskell community, and are willing to publicly hold ourselves to that standard, in the hope that others may voluntarily follow suit.

+

Motivation

+

We are motivated to adopt a set of guidelines for respectful communication for several reasons

-

Motivation

-

We are motivated to adopt a set of guidelines for respectful communication for several reasons

+
    +
  • Diversity and inclusion. We recognize that the Haskell community, echoing the technology industry more generally, skews white and male. We see it as our duty and honour to spread the joy of Haskell widely and to broaden the patterns of participation, in the hopes that, one day, we will no longer be askew.
  • +
  • Making an explicit commitment will encourage us to review our messages to see if they meet the goals set out here, and will give others some specifics to point to if we fail.
  • +
-
    -
  • Diversity and inclusion. We recognize that the Haskell community, echoing the technology industry more generally, skews white and male. We see it as our duty and honour to spread the joy of Haskell widely and to broaden the patterns of participation, in the hopes that, one day, we will no longer be askew.
  • -
  • Making an explicit commitment will encourage us to review our messages to see if they meet the goals set out here, and will give others some specifics to point to if we fail.
  • -
+

Guidelines For Respectful Communication

+

As members of a Haskell committee, we commit ourselves to a high standard of public behaviour. We have one over-arching rule:

-

Guidelines For Respectful Communication

-

As members of a Haskell committee, we commit ourselves to a high standard of public behaviour. We have one over-arching rule:

+

We strive to treat every person with respect.

-

We strive to treat every person with respect.

+

Specifically, we aspire to these qualities:

-

Specifically, we aspire to these qualities:

+
    +
  • We treat everyone with courtesy, aware that their diverse backgrounds, experiences, goals, and perspectives may be very different to ours.
  • +
  • In our communication, we consistently honour and affirm the passion, professional expertise, and good intentions of others. Even if we occasionally doubt these qualities in someone else, we will not make public accusations of incompetence, malice or ulterior motives.
  • +
  • We strive to be scrupulously polite at all times. There should be no rudeness, name-calling, or harassment in our communication.
  • +
  • Where we disagree with someone, we avoid forms of expression that might make our dialogue partner feel attacked, humiliated, demeaned, or marginalised. Our critique should always be of specific statements and claims, never of people.
  • +
  • Disagreement itself is fine: we are enriched by robust technical debate. But we seek to make the tone of that debate to be a conversation among people who respect, or even admire, each other.
  • +
  • Where we disagree, we try to be curious about the perspective, goals, motivation, and priorities of the other person.
  • +
  • We do not tolerate any form of discriminatory language or behaviour towards any minority (for example age, body size, disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation).
  • +
-
    -
  • We treat everyone with courtesy, aware that their diverse backgrounds, experiences, goals, and perspectives may be very different to ours.
  • -
  • In our communication, we consistently honour and affirm the passion, professional expertise, and good intentions of others. Even if we occasionally doubt these qualities in someone else, we will not make public accusations of incompetence, malice or ulterior motives.
  • -
  • We strive to be scrupulously polite at all times. There should be no rudeness, name-calling, or harassment in our communication.
  • -
  • Where we disagree with someone, we avoid forms of expression that might make our dialogue partner feel attacked, humiliated, demeaned, or marginalised. Our critique should always be of specific statements and claims, never of people.
  • -
  • Disagreement itself is fine: we are enriched by robust technical debate. But we seek to make the tone of that debate to be a conversation among people who respect, or even admire, each other.
  • -
  • Where we disagree, we try to be curious about the perspective, goals, motivation, and priorities of the other person.
  • -
  • We do not tolerate any form of discriminatory language or behaviour towards any minority (for example age, body size, disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation).
  • -
+

We seek to apply these standards in all our public interactions in the Haskell sphere, including email, social media, discussion forums, and so on.

-

We seek to apply these standards in all our public interactions in the Haskell sphere, including email, social media, discussion forums, and so on.

+

If one of us fails to meet these standards, the ideal course of action is to write to that person privately, gently drawing attention to their lapse. If you're not comfortable with that, please contact the chair of the committee, or (if the chair is the problem) the vice-chair or co-chair.

-

If one of us fails to meet these standards, the ideal course of action is to write to that person privately, gently drawing attention to their lapse. If you're not comfortable with that, please contact the chair of the committee, or (if the chair is the problem) the vice-chair or co-chair.

+

Our response should usually be to apologise and stop doing what it was that you are unhappy about. Even if we feel we have been misinterpreted or unfairly accused, the chances are good there was something we could have communicated better, and an apology is far more likely to bring healing than is a counter-accusation.

-

Our response should usually be to apologise and stop doing what it was that you are unhappy about. Even if we feel we have been misinterpreted or unfairly accused, the chances are good there was something we could have communicated better, and an apology is far more likely to bring healing than is a counter-accusation.

+

Acknowledgements

+ We'd like to thank the communities and projects that established code of conducts and diversity statements as our inspiration, including these: + -

Acknowledgements

- We'd like to thank the communities and projects that established code of conducts and diversity statements as our inspiration, including these: - - -
+
diff --git a/templates/affiliates/list.html b/templates/affiliates/list.html index 5e3e4102..fa5ec715 100644 --- a/templates/affiliates/list.html +++ b/templates/affiliates/list.html @@ -26,8 +26,7 @@

Affiliated

-
+
$for(affiliated)$ $partial("templates/affiliates/tile.html")$ $endfor$ @@ -38,8 +37,7 @@

Affiliated

Pending Affiliations

-
+
$for(pending)$ $partial("templates/affiliates/tile.html")$ $endfor$ diff --git a/templates/affiliates/tile.html b/templates/affiliates/tile.html index bc2700c4..5814bfd0 100644 --- a/templates/affiliates/tile.html +++ b/templates/affiliates/tile.html @@ -1,5 +1,4 @@ - +
$title$
$externalUrl$
diff --git a/templates/boilerplate.html b/templates/boilerplate.html index a4d057e4..8d06abc4 100644 --- a/templates/boilerplate.html +++ b/templates/boilerplate.html @@ -1,5 +1,6 @@ + @@ -27,40 +28,44 @@ --> $title$ - + + $if(description)$ - + + $endif$ + - -$partial("templates/mobile-nav-flyout.html")$ + + $partial("templates/mobile-nav-flyout.html")$ - -
-
- $partial("templates/nav.html")$ -
+ +
+
+ $partial("templates/nav.html")$ +
-
- $body$ -
+
+ $body$ +
- $partial("templates/footer.html")$ -
+ $partial("templates/footer.html")$ +
+ diff --git a/templates/careers/list.html b/templates/careers/list.html index f89ab8a6..0041e3dd 100644 --- a/templates/careers/list.html +++ b/templates/careers/list.html @@ -12,7 +12,7 @@

Careers

Working at the Haskell Foundation

- Interested in working at the crossroads of the Haskell ecosystem? + Interested in working at the crossroads of the Haskell ecosystem?

@@ -30,7 +30,7 @@

Working at the Has

Haskell Foundation Sponsors Hiring Haskellers

- Many of our sponsors are actively hiring Haskell engineers. + Many of our sponsors are actively hiring Haskell engineers.

@@ -38,11 +38,7 @@

Haskell Foundation
$for(hiringsponsors)$ - $title$ + $title$ $endfor$
diff --git a/templates/careers/page.html b/templates/careers/page.html index 65fc9db0..1464b2cb 100644 --- a/templates/careers/page.html +++ b/templates/careers/page.html @@ -1,17 +1,15 @@
-
-

$title$

+
+

$title$

+
+
+
+
+
+
Posted: $postedOn$
+
Status: $status$
+
$body$ +
- -
-
-
-
-
Posted: $postedOn$
-
Status: $status$
-
- $body$ -
-
-
-
\ No newline at end of file +
+
diff --git a/templates/donations/list.html b/templates/donations/list.html index 448f6a6d..f6933486 100644 --- a/templates/donations/list.html +++ b/templates/donations/list.html @@ -2,10 +2,10 @@ title: Donations and Sponsorship ---
-$partial("templates/corners.html")$ -
-

Donations

-
+ $partial("templates/corners.html")$ +
+

Donations

+
@@ -13,7 +13,7 @@

Donations

Donating To The Haskell Foundation

- Individuals can donate to the Haskell Foundation and help us drive broader adoption of the Haskell language. Click the button to donate through PayPal! + Individuals can donate to the Haskell Foundation and help us drive broader adoption of the Haskell language. Click the button to donate through PayPal!

@@ -26,15 +26,12 @@

Donating To The Haskell Foundat

- - -
- $partial("templates/corners.html")$ -
-

Sponsorship

-
+
+ $partial("templates/corners.html")$ +
+

Sponsorship

- +
@@ -51,97 +48,96 @@

Sponsoring The Haskell Foundati

-
-
-
-

Sponsorship Levels

-
+
+
+
+

Sponsorship Levels

+
-
-
+
+
-
+
-
-
-

Functor

-
USD $$10k+ / year
-
-

- Receive ongoing acknowledgements on social media channels and have a small logo displayed on the HF website. -

+
+

Functor

+
USD $$10k+ / year
+
+

+ Receive ongoing acknowledgements on social media channels and have a small logo displayed on the HF website. +

+
-
-
+
+
-
+
-
+
-
-
-

Applicative

-
USD $$25k+ / year
-
-

- Have your logo and story featured in the Supporter Spotlight on the website and newsletter, a medium- sized logo displayed on the HF website, and receive ongoing recognition on our social media pages. -

+
+

Applicative

+
USD $$25k+ / year
+
+

+ Have your logo and story featured in the Supporter Spotlight on the website and newsletter, a medium- sized logo displayed on the HF website, and receive ongoing recognition on our social media pages. +

+
-
-
+
+
-
+
-
+
-
+
-
-
-

Monad

-
USD $$70k+ / year
-
-

- All of the benefits of Functor and Applicative memberships, with the addition of a full interview for the Haskell Foundation blog, as well as having your logo prominently displayed on the HF website. -

+
+

Monad

+
USD $$70k+ / year
+
+

+ All of the benefits of Functor and Applicative memberships, with the addition of a full interview for the Haskell Foundation blog, as well as having your logo prominently displayed on the HF website. +

+
+
-
-
+
-
-
-

In-Kind Support

-

+

+
+

In-Kind Support

+

- Non-financial contributions to HF are also welcome. As a volunteer-based organization, the Haskell Foundation needs volunteers who can work on software, documentation, promotion, and other tasks to support the HF affiliated projects and the Haskell community. Individuals who contribute their own time or on behalf of their company are the backbone of our organization. Please reach out to us at contact@haskell.foundation to learn more about how you can volunteer or offer in-kind support. + Non-financial contributions to HF are also welcome. As a volunteer-based organization, the Haskell Foundation needs volunteers who can work on software, documentation, promotion, and other tasks to support the HF affiliated projects and the Haskell community. Individuals who contribute their own time or on behalf of their company are the backbone of our organization. Please reach out to us at contact@haskell.foundation to learn more about how you can volunteer or offer in-kind support. -

+

-
-
-
-
- +
+
+
+
+ +
+

In-Kind Donations

+
+
+ $for(inkinds)$ + $partial("templates/donations/tile.html")$ + $endfor$
-

In-Kind Donations

-
-
- $for(inkinds)$ - $partial("templates/donations/tile.html")$ - $endfor$
-
-
+
diff --git a/templates/donations/page.html b/templates/donations/page.html index 6d395335..5bc24ecd 100644 --- a/templates/donations/page.html +++ b/templates/donations/page.html @@ -5,11 +5,10 @@

$title$

-
- $body$ + $body$
diff --git a/templates/donations/tile.html b/templates/donations/tile.html index 8c89f5f1..1b27c706 100644 --- a/templates/donations/tile.html +++ b/templates/donations/tile.html @@ -1,6 +1,4 @@ -
+
$title$

$summary$

diff --git a/templates/event.html b/templates/event.html index d3e8de89..38f8b4f9 100644 --- a/templates/event.html +++ b/templates/event.html @@ -1,17 +1,15 @@
-
-

$title$

-
- -
-
-
-
-
Posted:
-
Status:
-
- $body$ -
-
+
+

$title$

+
+
+
+
+
+
Posted:
+
Status:
+
$body$ +
+
diff --git a/templates/events/tile.html b/templates/events/tile.html index 4f80c524..1f7c07ce 100644 --- a/templates/events/tile.html +++ b/templates/events/tile.html @@ -5,8 +5,18 @@

$title$

$summary$

- - + + + + + + + +
Dates:

$daterange$

Location:

$location$

Dates: +

$daterange$

+
Location: +

$location$

+
>> Read more diff --git a/templates/footer.html b/templates/footer.html index 067ceb7d..21d84636 100644 --- a/templates/footer.html +++ b/templates/footer.html @@ -1,7 +1,7 @@
SPONSORS
- Individual Sponsors + Individual Sponsors
@@ -9,11 +9,7 @@
$for(monads)$ - $title$ + $title$ $endfor$
@@ -22,11 +18,7 @@
$for(applicatives)$ - $title$ + $title$ $endfor$
@@ -35,11 +27,7 @@
$for(functors)$ - $title$ + $title$ $endfor$
diff --git a/templates/homepage.html b/templates/homepage.html index c75aca00..f2f5f234 100644 --- a/templates/homepage.html +++ b/templates/homepage.html @@ -15,44 +15,44 @@

Amplify Haskell’s impact on humanity.

-
+
- $if(openreqs)$ - $for(openreqs)$ - $partial("templates/careers/tile.html")$ - $endfor$ - $endif$ - - $if(announcements)$ - $for(announcements)$ - $partial("templates/news/frontpage.html")$ - $endfor$ - $endif$ - - $for(episodes)$ -
-
-

- $episode$ – $title$ -

-
- $body$ - -
+ $if(openreqs)$ + $for(openreqs)$ + $partial("templates/careers/tile.html")$ + $endfor$ + $endif$ + + $if(announcements)$ + $for(announcements)$ + $partial("templates/news/frontpage.html")$ + $endfor$ + $endif$ + + $for(episodes)$ +
+
+

+ $episode$ – $title$ +

+
+ $body$ + +
- $endfor$ +
+ $endfor$ - $if(events)$ - $for(events)$ - $partial("templates/events/tile.html")$ - $endfor$ - $endif$ + $if(events)$ + $for(events)$ + $partial("templates/events/tile.html")$ + $endfor$ + $endif$
-
+
@@ -79,12 +79,11 @@

We drive change.

-

Not “just another programming language”

- Haskell embodies a radical and elegant attack on the entire enterprise of writing software. It profoundly influences the world of software for the better. + Haskell embodies a radical and elegant attack on the entire enterprise of writing software. It profoundly influences the world of software for the better.

>> Learn About Haskell @@ -92,72 +91,70 @@

Not “just another programming langu

+
+ $partial("templates/corners.html")$ +
+

Our Ethos

-
- $partial("templates/corners.html")$ -
-

Our Ethos

+

Ideas that guide our every decision

-

Ideas that guide our every decision

- -
+
-
- -

Faithfulness to Haskell’s founding design principles.

-

Haskell’s design puts principle ahead of expediency by cleaving closely to the principles of purely functional programming.

-
+
+ +

Faithfulness to Haskell’s founding design principles.

+

Haskell’s design puts principle ahead of expediency by cleaving closely to the principles of purely functional programming.

+
-
- -

Open source.

-

All Haskell Foundation efforts are open source.

-
+
+ +

Open source.

+

All Haskell Foundation efforts are open source.

+
-
- -

Empowering the community.

-

HF augments, celebrates, and coordinates the contributions and leadership of Haskell’s vibrant community.

-
+
+ +

Empowering the community.

+

HF augments, celebrates, and coordinates the contributions and leadership of Haskell’s vibrant community.

+
-
- -

Openness, friendliness, and diversity.

-

For many, Haskell is more a way of life than a programming language. All are welcome, all can contribute. To this end we have adopted the Haskell Guidelines For Respectful Communication.

-
+
+ +

Openness, friendliness, and diversity.

+

For many, Haskell is more a way of life than a programming language. All are welcome, all can contribute. To this end we have adopted the Haskell Guidelines For Respectful Communication.

+
-
- -

Transparency.

-

All technical decisions related to HF’s open source projects are proposed and debated in public.

-
+
+ +

Transparency.

+

All technical decisions related to HF’s open source projects are proposed and debated in public.

+
+
+ $partial("templates/corners.html")$ +
+

Follow HF Developments

-
- $partial("templates/corners.html")$ -
-

Follow HF Developments

- -
-

Follow us on or join a mailing list

+
+

Follow us on or join a mailing list

-
+
-
-

Haskell Foundation Discourse

-

- The Haskell Foundation category in the Haskell Discourse is where we make official announcements, and have discussions with the community. -

-
+
+

Haskell Foundation Discourse

+

+ The Haskell Foundation category in the Haskell Discourse is where we make official announcements, and have discussions with the community. +

+
diff --git a/templates/nav.html b/templates/nav.html index abbc7428..fb89a97f 100644 --- a/templates/nav.html +++ b/templates/nav.html @@ -11,96 +11,95 @@ +
  • +
    + + + +
    +
  • +
    -
    diff --git a/templates/podcast/episode.html b/templates/podcast/episode.html index 03828975..208de1a0 100644 --- a/templates/podcast/episode.html +++ b/templates/podcast/episode.html @@ -5,55 +5,52 @@

    $episode$ – $title$

    -
    -
    -
    - $if(recorded)$ -

    Recorded $recorded$. Published $published$.

    - $endif$ - $body$ -
    +
    +
    +
    + $if(recorded)$ +

    Recorded $recorded$. Published $published$.

    + $endif$ + $body$
    +
    -
    -
    - -
    +
    +
    + +
    - $if(links)$ -
    -
    - -

    Related links

    -
    -
    - $links$ -
    +

    Related links

    - $endif$ +
    + $links$ +
    +
    + $endif$ - $if(transcript)$ -
    -
    - -

    Transcript

    -
    -
    - $transcript$ -
    +

    Transcript

    +
    +
    + $transcript$
    - $endif$
    + $endif$
    diff --git a/templates/podcast/list.html b/templates/podcast/list.html index 0ff1d763..65c10009 100644 --- a/templates/podcast/list.html +++ b/templates/podcast/list.html @@ -2,14 +2,14 @@ $partial("templates/corners.html")$
    -

    The Haskell Interlude

    +

    The Haskell Interlude

    - The Haskell Interlude is Haskell-focused podcast where we interview guests from the Haskell community. The hosts are Joachim Breitner, Andres Löh, Matthías Páll Gissurarson, Wouter Swierstra and Niki Vazou. + The Haskell Interlude is Haskell-focused podcast where we interview guests from the Haskell community. The hosts are Joachim Breitner, Andres Löh, Matthías Páll Gissurarson, Wouter Swierstra and Niki Vazou.

    @@ -18,17 +18,17 @@

    The Haskell Interlude

    $for(episodes)$ -
    -

    - $episode$ – $title$ -

    -
    - $body$ - -
    +
    +

    + $episode$ – $title$ +

    +
    + $body$ +
    +
    $endfor$
    @@ -38,7 +38,7 @@

    Acknowledgements

    - The music used is "Blue Lambda" by Donya Quick.
    + The music used is "Blue Lambda" by Donya Quick.
    Many thanks to Donya for giving us permission to use this track for our podcast.

    diff --git a/templates/projects/list.html b/templates/projects/list.html index 81adeaf1..60f608d5 100644 --- a/templates/projects/list.html +++ b/templates/projects/list.html @@ -11,9 +11,7 @@

    Projects

    Volunteering

    - We are always looking for help on our projects. If you would like to volunteer, please reach out to us at volunteer@haskell.foundation, or join the Haskell + We are always looking for help on our projects. If you would like to volunteer, please reach out to us at volunteer@haskell.foundation, or join the Haskell Foundation Slack. If you have a proposal, we'd love to hear it!

    diff --git a/templates/resources/tile.html b/templates/resources/tile.html index fc53d68d..94991330 100644 --- a/templates/resources/tile.html +++ b/templates/resources/tile.html @@ -1,8 +1,8 @@
    -

    $title$

    -

    $body$

    +

    $title$

    +

    $body$

    - +
    diff --git a/templates/who-we-are/exec-and-board.html b/templates/who-we-are/exec-and-board.html index 8675a4c5..2f3397a2 100644 --- a/templates/who-we-are/exec-and-board.html +++ b/templates/who-we-are/exec-and-board.html @@ -5,88 +5,87 @@

    Who We Are

    -
    -
    -

    Executive Team

    -

    +

    +
    +

    Executive Team

    +

    - The Haskell Foundation Executive Team reports to the Board of Directors and manages the day to day work of the Foundation. They interpret the Board's priorities, research solutions, and work with the community to execute of the Foundation's mission. + The Haskell Foundation Executive Team reports to the Board of Directors and manages the day to day work of the Foundation. They interpret the Board's priorities, research solutions, and work with the community to execute of the Foundation's mission. -

    -
    +

    -
    -
    - $for(currentexecutiveteam)$ -
    -
    - $name$ -
    -

    $name$

    -
    $title$
    -
    -
    -

    - $body$ -

    - - $if(website)$ - - $endif$ +
    +
    +
    + $for(currentexecutiveteam)$ +
    +
    + $name$ +
    +

    $name$

    +
    $title$
    - $endfor$ -
    +
    +

    + $body$ +

    + + $if(website)$ + + $endif$ +
    + $endfor$
    +
    +
    +
    +

    The HF Board Of Directors

    +

    -

    -
    -

    The HF Board Of Directors

    -

    - - The Haskell Foundation board of directors are responsible for managing and setting the direction of the Haskell Foundation. + The Haskell Foundation board of directors are responsible for managing and setting the direction of the Haskell Foundation. -

    -
    +

    +
    -
    -
    - $for(currentboard)$ -
    -
    - $name$ -
    -

    $name$

    - $if(title)$ -
    $title$
    - $endif$ -
    -
    -

    - $body$ -

    - $if(committees)$ -
    -
    Committees
    -

    $committees$

    -
    - $endif$ - $if(email)$ - - $endif$ - $if(website)$ -
    - >> $website$ +
    +
    + $for(currentboard)$ +
    +
    + $name$ +
    +

    $name$

    + $if(title)$ +
    $title$
    + $endif$
    - $endif$
    - $endfor$ +

    + $body$ +

    + $if(committees)$ +
    +
    Committees
    +

    $committees$

    +
    + $endif$ + $if(email)$ + + $endif$ + $if(website)$ + + $endif$
    + $endfor$
    +
    diff --git a/templates/who-we-are/past-board.html b/templates/who-we-are/past-board.html index 9f670880..8e06f777 100644 --- a/templates/who-we-are/past-board.html +++ b/templates/who-we-are/past-board.html @@ -5,17 +5,17 @@

    Past Boards

    -
    -
    -

    Past Board Members

    -

    +

    +
    +

    Past Board Members

    +

    - We are honored to have served the Haskell Foundation along with these former members of the Board. + We are honored to have served the Haskell Foundation along with these former members of the Board. -

    -
    +

    - +
    +
    $for(pastboard)$ @@ -57,71 +57,70 @@

    $name$

    Past Executive Team Members

    -

    +

    - Thank you to the former members of the Executive Team, who helped shape the Haskell Foundation. + Thank you to the former members of the Executive Team, who helped shape the Haskell Foundation. -

    +

    -
    - $for(pastexecutiveteam)$ -
    -
    - $name$ -
    -

    $name$

    - $if(title)$ -
    $title$
    -
    $tenureStart$ - $tenureEnd$
    +
    + $for(pastexecutiveteam)$ +
    +
    + $name$ +
    +

    $name$

    + $if(title)$ +
    $title$
    +
    $tenureStart$ - $tenureEnd$
    + $endif$ +
    +
    +

    + $body$ +

    +
    + $if(email)$ + >> $email$ + $endif$ + $if(website)$ + >> $website$ $endif$
    -

    - $body$ -

    -
    - $if(email)$ - >> $email$ - $endif$ - $if(website)$ - >> $website$ - $endif$ -
    + $endfor$
    - $endfor$ -
    -
    -
    -

    The HF Interim Board Of Directors

    -

    +

    +
    +

    The HF Interim Board Of Directors

    +

    - HF's Interim Board served during the launch phase and managed the establishment of the first full board in early 2021, as well as interviewing and selecting the foundation Executive Director and Chief Technology Officer. + HF's Interim Board served during the launch phase and managed the establishment of the first full board in early 2021, as well as interviewing and selecting the foundation Executive Director and Chief Technology Officer. -

    -
    +

    - +
    $for(interimboard)$ -
    -
    - $name$ -
    -

    $name$

    -
    $interimBoardTitle$
    -
    +
    +
    + $name$ +
    +

    $name$

    +
    $interimBoardTitle$
    -

    - $body$ -

    +

    + $body$ +

    +
    $endfor$
    diff --git a/vision/index.html b/vision/index.html index a95216ee..4e8799a5 100644 --- a/vision/index.html +++ b/vision/index.html @@ -9,7 +9,7 @@

    Our Vision

    -
    +

    The Haskell Foundation is an independent, non-profit organization dedicated to broadening the adoption of Haskell, by supporting its ecosystem of tools, libraries, education, and research. @@ -18,127 +18,137 @@

    Our Vision

    -
    -
    - Why do we need yet another Haskell community organisation? The HF will address the following needs, which are currently under-served: -
      -
    • - Driving adoption. HF seeks to foster an understanding of the benefits of using Haskell among developers who do not currently use the language, to erase barriers to entry, and to improve the Haskell ecosystem. We have many passionate and expert groups, but each is focused around a particular piece of the ecosystem, and none is dedicated to the overall user experience. -

      -
    • -
    • - Technical infrastructure and glue. The HF will identify and integrate or implement missing “technical glue”: the useful stuff that makes for a smooth user experience (pain-free installers, documentation, error messages, and much more). -
    • -
    • - Community glue. Our individual groups function well, but we lack mechanisms for high-quality technical communication between them. The HF will try to nurture respectful, inclusive communication across the community. -
    • -
    • - Resources and funding. We have plenty of volunteer groups, but as Haskell becomes more widely adopted, and more mission critical to more organisations it becomes harder for volunteers to sustain all the necessary infrastructure. We need colleagues whose day job is to make everything work...and that needs funding. Because of its broad scope, the Foundation will be a more credible recipient of corporate funding than any of our individual groups are today. -
    • -
    - -

    Principles and Ethos

    -
    - How we pursue the goals of HF is just as important as what the goals are. HF’s actions will be guided by these core principles: +
    +
    + Why do we need yet another Haskell community organisation? The HF will address the following needs, which are currently under-served:
      -
    • - Open source. Haskell is an open source community and HF will embrace the open-source ethos wholeheartedly. HF may develop, or sponsor the development of tools and infrastructure, but it will all be open source. -

      -
    • -
    • - Empowering the community. A major goal of HF is to augment, celebrate, and coordinate the contributions and leadership of volunteers, not to supplant or replace them. -

      -
    • -
    • - Open, friendly, and diverse. For many of us Haskell is more a way of life than a programming language. All are welcome, all can contribute. -

      -
    • -
    • - Transparent. All communication related to code and decision making will be publicly accessible, to enable asynchronous communication and collaboration. Only certain categories of sensitive information (e.g. financial, and matters concerning particular individuals) will be kept confidential. -

      -
    • -
    • - True to Haskell’s principles. Haskell’s design puts principle ahead of expediency, notably by cleaving closely to the principles of purely functional programming. Success, yes, but not at all costs! -

      -
    • -
    +
  • +

    + Driving adoption. HF seeks to foster an understanding of the benefits of using Haskell among developers who do not currently use the language, to erase barriers to entry, and to improve the Haskell ecosystem. We have many passionate and expert groups, but each is focused around a particular piece of the ecosystem, and none is dedicated to the overall user experience. +

    +
  • +
  • + Technical infrastructure and glue. The HF will identify and integrate or implement missing “technical glue”: the useful stuff that makes for a smooth user experience (pain-free installers, documentation, error messages, and much more). +
  • +
  • + Community glue. Our individual groups function well, but we lack mechanisms for high-quality technical communication between them. The HF will try to nurture respectful, inclusive communication across the community. +
  • +
  • + Resources and funding. We have plenty of volunteer groups, but as Haskell becomes more widely adopted, and more mission critical to more organisations it becomes harder for volunteers to sustain all the necessary infrastructure. We need colleagues whose day job is to make everything work...and that needs funding. Because of its broad scope, the Foundation will be a more credible recipient of corporate funding than any of our individual groups are today. +
  • + -

    Organization

    -
    - The Haskell community comprises an amazing group of technical talent, and functions today as an almost entirely volunteer effort. The Haskell Foundation will not change that. Our goal is to make every member of the Haskell community, and every Haskell committee, feel more supported, and more productive. We want to enlarge and diversify our community going forward. Here’s a picture: -
    - Community glue -
    -
    +

    Principles and Ethos

    - More specifically: + How we pursue the goals of HF is just as important as what the goals are. HF’s actions will be guided by these core principles:
      -
    • - HF will have a Foundation Board (“Board” hereafter) that reflects the Haskell community and its stakeholders, including academics, commercial users, and individuals. +

    • +

      + Open source. Haskell is an open source community and HF will embrace the open-source ethos wholeheartedly. HF may develop, or sponsor the development of tools and infrastructure, but it will all be open source.

    • -
    • - HF will have a staff. The size of the staff will depend on funding, but we intend to hire an Executive Director (ED), who can organize Haskell outreach, support its funding activities and oversee the rest of the staff. The staff will mostly focus on funding, marketing, and key infrastructure. +

    • +

      + Empowering the community. A major goal of HF is to augment, celebrate, and coordinate the contributions and leadership of volunteers, not to supplant or replace them.

    • - -
    • - HF will work with existing and new open-source teams to channel energy into various efforts like packaging, tools, libraries, compilers, languages, documentation, user experience, and infrastructure. To reiterate, we expect that most technical contributions will be volunteer, just as it is today, but we want to position HF to fill gaps that can help adoption. +

    • +

      + Open, friendly, and diverse. For many of us Haskell is more a way of life than a programming language. All are welcome, all can contribute.

    • -
    • - HF will establish a code of conduct and transparent decision-making that will apply to itself and any associated teams. +

    • +

      + Transparent. All communication related to code and decision making will be publicly accessible, to enable asynchronous communication and collaboration. Only certain categories of sensitive information (e.g. financial, and matters concerning particular individuals) will be kept confidential.

    • -
    • - To the extent HF funds and pursues technical goals itself, it will pursue those goals with the same transparency as we expect from any of the teams associated with it. In this way HF will augment the community in a transparent way. +

    • +

      + True to Haskell’s principles. Haskell’s design puts principle ahead of expediency, notably by cleaving closely to the principles of purely functional programming. Success, yes, but not at all costs!

    • -
    +

    Organization

    +
    + The Haskell community comprises an amazing group of technical talent, and functions today as an almost entirely volunteer effort. The Haskell Foundation will not change that. Our goal is to make every member of the Haskell community, and every Haskell committee, feel more supported, and more productive. We want to enlarge and diversify our community going forward. Here’s a picture: +
    + Community glue +
    +
    +
    + More specifically: +
      +
    • +

      + HF will have a Foundation Board (“Board” hereafter) that reflects the Haskell community and its stakeholders, including academics, commercial users, and individuals. +

      +
    • +
    • +

      + HF will have a staff. The size of the staff will depend on funding, but we intend to hire an Executive Director (ED), who can organize Haskell outreach, support its funding activities and oversee the rest of the staff. The staff will mostly focus on funding, marketing, and key infrastructure. +

      +
    • -

      Funding

      -
      - There have been other initiatives of this kind in the past, but they have proved hard to sustain. A big part of this has been a simple lack of bandwidth in a highly decentralised community run entirely by volunteers. -
      -
      - The Haskell Foundation launches with a small group of founding sponsors, enough to employ an Executive Director. Our goal is to raise around $$1m/year in cash and in-kind contributions. -
      -

      Improving the Haskell Adoption Story

      -
      - A principal goal of the Foundation is to promote adoption of Haskell. We see that task as having three major components: -
      -

      -

      Eliminating unreasonable barriers to adoption

      +
    • +

      + HF will work with existing and new open-source teams to channel energy into various efforts like packaging, tools, libraries, compilers, languages, documentation, user experience, and infrastructure. To reiterate, we expect that most technical contributions will be volunteer, just as it is today, but we want to position HF to fill gaps that can help adoption. +

      +
    • +
    • +

      + HF will establish a code of conduct and transparent decision-making that will apply to itself and any associated teams. +

      +
    • +
    • +

      + To the extent HF funds and pursues technical goals itself, it will pursue those goals with the same transparency as we expect from any of the teams associated with it. In this way HF will augment the community in a transparent way. +

      +
    • +
    +
    - We expect that with HF adding a little structure, some things can be improved immediately. For example, we need an entry point for Haskell that speaks to the needs of a range of users: from engineers looking for an easy on-ramp with our best advice on how to learn and use Haskell, to team leaders who want to assess Haskell adoption as a business decision. The Haskell community today does not cover the full range of content needed to promote adoption. This is one example where an organization with the right focus and some resources can easily have a positive impact. -

    -

    -

    Educating the tech community

    - Engineers are typically the ones who drive Haskell adoption. But they often need permission or sponsorship from managers 1 or 2 levels higher. These decision makers are people who are more concerned about speed of development, reliability, maintenance, and people. We need to explicitly address a broader audience and position Haskell as the best solution to many problems, while maintaining integrity and avoiding too much “marketing speak". -

    -

    - Conditions for telling this story are favorable. The days of a senior sysadmin dictating which version of Java or Python “shall be used” are dying. Containers and cloud technology have inadvertently conspired to permit engineering teams to make these decisions more often at a team level, even in larger organizations. Still, these teams need air cover and solid tools so that their decisions don’t look “rogue” to the rest of the organization. -

    -

    - If used correctly, Haskell can be unreasonably effective. Unfortunately, the “if” clause is not common knowledge. The HF recognizes that many of these advanced features are precisely the reason why Haskell can be successful in cases where other languages fall short. We trust that the end users will be able to make the right trade-offs that work for them. The HF will be there to help users that need to make these trade-offs by improving documentation and highlighting success stories. For example, Haskell has a great concurrency story and things like STM that are dramatically undersold in the marketplace. Some advanced features can be emphasized and taught. -

    -

    - The spectrum of developers is very broad: Haskell is used by both junior developers as well as long-time experts. This can cause friction, and some code may be unreadable even to other Haskell developers. This is unfortunate, because we believe that Haskell allows us to express ideas in a way that are clear and elegant. We need to delineate the common knowledge aspect of the language and tools to elevate more developers. HF should carry this banner. -

    -

    - Beyond that, the pesky problem of the marketplace for Haskellers remains. We often hear about fear of hiring bottlenecks and we know some engineering leaders that list this as the number one concern about Haskell. These leaders need to know one thing. You don’t have to hire a Haskell team: Haskell can make your team. Your smart Python developers can learn how to make reliable software and will love you for letting them. There is a role for HF to bridge the gap between the countless developers who want to learn and write Haskell, and the decision makers who currently believe it is hard to find these people. -

    -

    -

    Technical Agenda: Enhancing the tooling, filling the gaps

    - Haskell Foundation will identify a list of technical goals that will ease adoption and improve Haskell use in production. We have established an initial agenda and are seeking to refine it as we go forward. As HF evolves, we will engage technical discussion in a transparent way, with input from the community. -

    +

    Funding

    +
    + There have been other initiatives of this kind in the past, but they have proved hard to sustain. A big part of this has been a simple lack of bandwidth in a highly decentralised community run entirely by volunteers. +
    +
    + The Haskell Foundation launches with a small group of founding sponsors, enough to employ an Executive Director. Our goal is to raise around $$1m/year in cash and in-kind contributions. +
    +

    Improving the Haskell Adoption Story

    +
    + A principal goal of the Foundation is to promote adoption of Haskell. We see that task as having three major components: +
    +

    +

    Eliminating unreasonable barriers to adoption

    + + We expect that with HF adding a little structure, some things can be improved immediately. For example, we need an entry point for Haskell that speaks to the needs of a range of users: from engineers looking for an easy on-ramp with our best advice on how to learn and use Haskell, to team leaders who want to assess Haskell adoption as a business decision. The Haskell community today does not cover the full range of content needed to promote adoption. This is one example where an organization with the right focus and some resources can easily have a positive impact. +

    +

    +

    Educating the tech community

    + Engineers are typically the ones who drive Haskell adoption. But they often need permission or sponsorship from managers 1 or 2 levels higher. These decision makers are people who are more concerned about speed of development, reliability, maintenance, and people. We need to explicitly address a broader audience and position Haskell as the best solution to many problems, while maintaining integrity and avoiding too much “marketing speak". +

    +

    + Conditions for telling this story are favorable. The days of a senior sysadmin dictating which version of Java or Python “shall be used” are dying. Containers and cloud technology have inadvertently conspired to permit engineering teams to make these decisions more often at a team level, even in larger organizations. Still, these teams need air cover and solid tools so that their decisions don’t look “rogue” to the rest of the organization. +

    +

    + If used correctly, Haskell can be unreasonably effective. Unfortunately, the “if” clause is not common knowledge. The HF recognizes that many of these advanced features are precisely the reason why Haskell can be successful in cases where other languages fall short. We trust that the end users will be able to make the right trade-offs that work for them. The HF will be there to help users that need to make these trade-offs by improving documentation and highlighting success stories. For example, Haskell has a great concurrency story and things like STM that are dramatically undersold in the marketplace. Some advanced features can be emphasized and taught. +

    +

    + The spectrum of developers is very broad: Haskell is used by both junior developers as well as long-time experts. This can cause friction, and some code may be unreadable even to other Haskell developers. This is unfortunate, because we believe that Haskell allows us to express ideas in a way that are clear and elegant. We need to delineate the common knowledge aspect of the language and tools to elevate more developers. HF should carry this banner. +

    +

    + Beyond that, the pesky problem of the marketplace for Haskellers remains. We often hear about fear of hiring bottlenecks and we know some engineering leaders that list this as the number one concern about Haskell. These leaders need to know one thing. You don’t have to hire a Haskell team: Haskell can make your team. Your smart Python developers can learn how to make reliable software and will love you for letting them. There is a role for HF to bridge the gap between the countless developers who want to learn and write Haskell, and the decision makers who currently believe it is hard to find these people. +

    +

    +

    Technical Agenda: Enhancing the tooling, filling the gaps

    + + Haskell Foundation will identify a list of technical goals that will ease adoption and improve Haskell use in production. We have established an initial agenda and are seeking to refine it as we go forward. As HF evolves, we will engage technical discussion in a transparent way, with input from the community. +

    +
    -
    -
    diff --git a/whitepaper/index.html b/whitepaper/index.html index be6d667c..52fed3b3 100644 --- a/whitepaper/index.html +++ b/whitepaper/index.html @@ -8,92 +8,90 @@

    A New Chapter For Haskell: The Haskell Foundation

    +
    +
    + +

    Prelude

    +

    Haskell’s slogan of “avoid success at all costs” was a clever and cheeky way of saying that innovation and research in programming languages, especially in functional programming, needed some insulation to succeed. Ideas that were not perfectly understood needed iteration to fully develop in the minds of language innovators and users. By avoiding the “success at all costs” mentality of other language communities, the Haskell community bought time and space to try ideas that were not perfectly understood at first. Since then, the Haskell language has sparked so many lasting innovations in language design that its impact is now beyond doubt. What is the reason for this outsized impact? Haskell and related languages re-opened the connection between mathematical thinking on the one hand and compilers and programming languages on the other. It showed that these two fields should never have drifted so far apart. By removing the ceiling on the ideas that are easier to express in Haskell, it attracted the brightest minds and still does. It became a lingua franca for a large swath of CS research. In education, Haskell helps CS students learn to think better. The quality of ideas represented in the Haskell ecosystem has attracted both small and large companies. In many ways, the story of Haskell is one of success. Perhaps it was unavoidable after all.

    + +

    As good as the core concepts of Haskell are, users adopting it are often exposed to some very rough edges. We think it is time for Haskell to have a much smoother on-ramp and more real-world use cases where it is the clear first choice. There are now countless stories of Haskell adoption in the industry, but not all are successful. A few companies have even switched away from Haskell, for reasons that include difficulties with the compiler, tooling and hiring. Once users can get past these obstacles, they can achieve amazing outcomes, but too often the path to get there is not clear.

    + +

    Haskell is an open-source community. Almost all its tooling and community is created and run by a strong community of bright volunteers. But these contributors all have other day jobs, so the Haskell ecosystem still lacks crucial social, technical and organizational “glue”. We believe that every single obstacle standing in the way of Haskell adoption can be overcome. All technical issues are tractable and require a modest investment of energy, commitment and financial resources to fix. Likewise the social/community issues: the Haskell community is packed with friendly, able and motivated contributors who share common values. We think that by focusing our attention on the critical story of adoption, Haskell can encourage yet more innovation in the future, while bringing the benefits of its core ideas to a much larger user base. We need to encourage adoption in new ways and renew focus on improving the Haskell ecosystem.

    + +

    The Haskell Foundation

    +

    That’s why we are forming a non-profit organization, provisionally called “The Haskell Foundation” (HF), dedicated to advancing the Haskell programming language, related tools, education and research.

    + +

    Goals

    +

    HF has these goals:

    +
      +
    • To foster a much broader understanding of the benefits of using Haskell among developers who do not currently use Haskell.
    • +
    • To increase adoption of Haskell substantially, by erasing barriers that inhibit adoption.
    • +
    • To identify and fill missing “technical gaps”: the useful stuff that makes for a smooth user experience (pain-free installers, documentation, error messages, and much more).
    • +
    • To help with “community glue”, by nurturing respectful, inclusive communication across the community. Together these goals form the mission of HF.
    • +
    +

    Principles And Ethos

    +

    How ​ we pursue the goals of HF is just as important as ​ what the goals are. HF’s actions will be guided by these core principles:

    + +
      +
    • Open source. Haskell is an open source community and HF will embrace the open-source ethos wholeheartedly. HF may develop, or sponsor the development of tools and infrastructure, but it will all be open source.
    • +
    • Empowering the community. A major goal of HF is to augment, celebrate, and coordinate the contributions and leadership of volunteers, not to supplant or replace them.
    • +
    • Open, friendly, and diverse. For many of us Haskell is more a way of life than a programming language. All are welcome, all can contribute.
    • +
    • Transparent. ​ All communication related to code and decision making will be publicly accessible, to enable asynchronous communication and collaboration. Only certain categories of sensitive information (e.g. financial, and matters concerning particular individuals) will be kept confidential.
    • +
    • True to Haskell’s principles.​ Haskell’s design puts principle ahead of expediency, notably by cleaving closely to the principles of purely functional programming. Success, yes, but not at all costs!
    • +
    +

    We have learned from other open source communities. The ​Rust community​ has a code of conduct that has benefited the community. They do a remarkably good job of this, in large part because the Rust community is actively led and nurtured. ​ The Apache Software Foundation​ has developed clear standards of transparency and consistent governance across all of its 300+ projects, run by volunteers. As we set up HF we have adopted successful approaches like these into our operating principles.

    + +

    Organization And Funding

    +

    The organization will seek funding to ensure the longevity and continuous strengthening of the Haskell ecosystem.

    + +

    STRUCTURE

    +

    The Haskell community comprises an amazing group of technical talent and functions today as an almost entirely volunteer effort. Our goal is make every member of the Haskell community, and every HF-affiliated Haskell committee feel more support and more productive. We want to enlarge and diversify our community.

    + +

    We have received and incorporated lots of feedback about the best way to structure HF.

    +
      +
    • HF will have a Governing Board​ (“Board” hereafter) that reflects the Haskell community and its stakeholders, including academics, commercial users, and individuals.
    • +
    • HF will have a staff. The size of the staff will depend on funding, but we intend to hire an Executive​ Director​ (ED), who can organize Haskell outreach, support its funding activities and oversee the rest of the staff. The staff will mostly focus on funding, marketing, and key infrastructure.
    • +
    • HF will work with existing and new open source teams to channel energy into various efforts like packaging, tools, libraries, compilers, languages, documentation, user experience, and infrastructure. To reiterate, we expect that most technical contributions will be volunteer, just as it is today, but we want to position HF to fill gaps that can help adoption.
    • +
    • HF will establish a code of conduct and transparent decision-making that will apply to itself and any associated teams.
    • +
    • To the extent HF funds and pursues technical goals itself, it will pursue those goals with the same transparency as we expect from any of the teams associated with it. In this way HF will augment the community in a transparent way.
    • +
    +

    We think that HF represents one of the final puzzle pieces for Haskell. A new organization will provide a way to fund and coordinate Haskell development going forward. We hope that all key committees that currently support Haskell will align HF’s values and mission and we are working with those committees that wish to voluntarily affiliate with HF. Discussions with those teams are currently underway. We don’t want to simply add another Haskell committee.

    + +

    WHO ARE THE HF ORGANIZERS?

    +

    The idea of the Haskell Foundation has been developed by an informal working group including

    + +
      +
    • Representatives from the haskell.org committee, the Core Library Committee (CLC), the Hackage Trustees and the GHC Devops Committee, and other Haskellers.
    • +
    • Haskell companies, who are generously providing financial, advisory, and in-kind support.
    • +
    • Numerous long-standing members of the Haskell community.
    • +
    +

    FUNDING

    +

    There have been other initiatives of this kind in the past, but they have proved hard to sustain. A big part of this has been a simple lack of bandwidth in a highly decentralised community run entirely by volunteers. We expect to launch with a small group of founding sponsors. The Board and staff will take over that function after launch. Our goal is to raise around $$1m/year in cash and in-kind contributions.

    + +

    Improving The Haskell Adoption Story

    +

    Promoting Haskell adoption has three major components:

    + +
      +
    • Eliminating unreasonable and perceived barriers to adoption.
    • +
    • Educating the tech community about the benefits of adoption, including decision makers.
    • +
    • Enhancing the tooling, so that the risk of adoption is dramatically reduced.
    • +
    +

    Eliminating Unreasonable And Perceived Barriers To Adoption

    +

    We expect that with HF adding a little structure, some things can be improved immediately. For example, we need an entry point for Haskell that speaks to the needs of a range of users: from engineers looking for an easy on-ramp with our best advice on how to learn and use Haskell, to team leaders who want to assess Haskell adoption as a business decision. The Haskell community today does not cover the full range of content needed to promote adoption. This is one example where an organization with the right focus and some resources can easily have a positive impact.

    + +

    Educating The Tech Community

    +

    Engineers are typically the ones who drive Haskell adoption. But they often need permission or sponsorship from managers 1 or 2 levels higher. These decision makers are people who are more concerned about speed of development, reliability, maintenance, and people. We need to explicitly address a broader audience and position Haskell as the best solution to many problems, while maintaining integrity and avoiding too much “marketing speak".

    + +

    Conditions for telling this story are favorable. The days of a senior sysadmin dictating which version of Java or Python “shall be used” are dying. Containers and cloud technology have inadvertently conspired to permit engineering teams to make these decisions more often at a team level, even in larger organizations. Still, these teams need air cover and solid tools so that their decisions don’t look “rogue” to the rest of the organization.

    + +

    If used correctly, Haskell can be unreasonably effective. Unfortunately, the “if” clause is not common knowledge. The HF recognizes that many of these advanced features are precisely the reason why Haskell can be successful in cases where other languages fall short. We trust that the end users will be able to make the right trade-offs that work for them. The HF will be there to help users that need to make these trade-offs by improving documentation and highlighting success stories. For example, Haskell has a great concurrency story and things like STM that are dramatically undersold in the marketplace. Some advanced features can be emphasized and taught.

    + +

    The spectrum of developers is very broad: Haskell is used by both junior developers as well as long-time experts. This can cause friction, and some code may be unreadable even to other Haskell developers. This is unfortunate, because we believe that Haskell allows us to express ideas in a way that are clear and elegant. We need to delineate the common knowledge aspect of the language and tools to elevate more developers. HF should carry this banner.

    + +

    Beyond that, the pesky problem of the marketplace for Haskellers remains. We often hear about fear of hiring bottlenecks and we know some engineering leaders that list this as the number one concern about Haskell. These leaders need to know one thing. You don’t have to hire a Haskell team: Haskell can make your team. Your smart Python developers can learn how to make reliable software and will love you for letting them. There is a role for HF to bridge the gap between the countless developers who want to learn and write Haskell, and the decision makers who currently believe it is hard to find these people.

    + +

    Technical Agenda: Enhancing The Tooling, Filling The Gaps

    +

    Haskell Foundation will identify a list of technical goals that will ease adoption and improve Haskell use in production. We have established an initial agenda and are seeking to refine it as we go forward. As HF evolves, we will engage technical discussion in a transparent way, with input from the community.

    - -
    -
    - -

    Prelude

    -

    Haskell’s slogan of “avoid success at all costs” was a clever and cheeky way of saying that innovation and research in programming languages, especially in functional programming, needed some insulation to succeed. Ideas that were not perfectly understood needed iteration to fully develop in the minds of language innovators and users. By avoiding the “success at all costs” mentality of other language communities, the Haskell community bought time and space to try ideas that were not perfectly understood at first. Since then, the Haskell language has sparked so many lasting innovations in language design that its impact is now beyond doubt. What is the reason for this outsized impact? Haskell and related languages re-opened the connection between mathematical thinking on the one hand and compilers and programming languages on the other. It showed that these two fields should never have drifted so far apart. By removing the ceiling on the ideas that are easier to express in Haskell, it attracted the brightest minds and still does. It became a lingua franca for a large swath of CS research. In education, Haskell helps CS students learn to think better. The quality of ideas represented in the Haskell ecosystem has attracted both small and large companies. In many ways, the story of Haskell is one of success. Perhaps it was unavoidable after all.

    - -

    As good as the core concepts of Haskell are, users adopting it are often exposed to some very rough edges. We think it is time for Haskell to have a much smoother on-ramp and more real-world use cases where it is the clear first choice. There are now countless stories of Haskell adoption in the industry, but not all are successful. A few companies have even switched away from Haskell, for reasons that include difficulties with the compiler, tooling and hiring. Once users can get past these obstacles, they can achieve amazing outcomes, but too often the path to get there is not clear.

    - -

    Haskell is an open-source community. Almost all its tooling and community is created and run by a strong community of bright volunteers. But these contributors all have other day jobs, so the Haskell ecosystem still lacks crucial social, technical and organizational “glue”. We believe that every single obstacle standing in the way of Haskell adoption can be overcome. All technical issues are tractable and require a modest investment of energy, commitment and financial resources to fix. Likewise the social/community issues: the Haskell community is packed with friendly, able and motivated contributors who share common values. We think that by focusing our attention on the critical story of adoption, Haskell can encourage yet more innovation in the future, while bringing the benefits of its core ideas to a much larger user base. We need to encourage adoption in new ways and renew focus on improving the Haskell ecosystem.

    - -

    The Haskell Foundation

    -

    That’s why we are forming a non-profit organization, provisionally called “The Haskell Foundation” (HF), dedicated to advancing the Haskell programming language, related tools, education and research.

    - -

    Goals

    -

    HF has these goals:

    -
      -
    • To foster a much broader understanding of the benefits of using Haskell among developers who do not currently use Haskell.
    • -
    • To increase adoption of Haskell substantially, by erasing barriers that inhibit adoption.
    • -
    • To identify and fill missing “technical gaps”: the useful stuff that makes for a smooth user experience (pain-free installers, documentation, error messages, and much more).
    • -
    • To help with “community glue”, by nurturing respectful, inclusive communication across the community. Together these goals form the mission of HF.
    • -
    -

    Principles And Ethos

    -

    How ​ we pursue the goals of HF is just as important as ​ what the goals are. HF’s actions will be guided by these core principles:

    - -
      -
    • Open source. Haskell is an open source community and HF will embrace the open-source ethos wholeheartedly. HF may develop, or sponsor the development of tools and infrastructure, but it will all be open source.
    • -
    • Empowering the community. A major goal of HF is to augment, celebrate, and coordinate the contributions and leadership of volunteers, not to supplant or replace them.
    • -
    • Open, friendly, and diverse. For many of us Haskell is more a way of life than a programming language. All are welcome, all can contribute.
    • -
    • Transparent. ​ All communication related to code and decision making will be publicly accessible, to enable asynchronous communication and collaboration. Only certain categories of sensitive information (e.g. financial, and matters concerning particular individuals) will be kept confidential.
    • -
    • True to Haskell’s principles.​ Haskell’s design puts principle ahead of expediency, notably by cleaving closely to the principles of purely functional programming. Success, yes, but not at all costs!
    • -
    -

    We have learned from other open source communities. The ​Rust community​ has a code of conduct that has benefited the community. They do a remarkably good job of this, in large part because the Rust community is actively led and nurtured. ​ The Apache Software Foundation​ has developed clear standards of transparency and consistent governance across all of its 300+ projects, run by volunteers. As we set up HF we have adopted successful approaches like these into our operating principles.

    - -

    Organization And Funding

    -

    The organization will seek funding to ensure the longevity and continuous strengthening of the Haskell ecosystem.

    - -

    STRUCTURE

    -

    The Haskell community comprises an amazing group of technical talent and functions today as an almost entirely volunteer effort. Our goal is make every member of the Haskell community, and every HF-affiliated Haskell committee feel more support and more productive. We want to enlarge and diversify our community.

    - -

    We have received and incorporated lots of feedback about the best way to structure HF.

    -
      -
    • HF will have a Governing Board​ (“Board” hereafter) that reflects the Haskell community and its stakeholders, including academics, commercial users, and individuals.
    • -
    • HF will have a staff. The size of the staff will depend on funding, but we intend to hire an Executive​ Director​ (ED), who can organize Haskell outreach, support its funding activities and oversee the rest of the staff. The staff will mostly focus on funding, marketing, and key infrastructure.
    • -
    • HF will work with existing and new open source teams to channel energy into various efforts like packaging, tools, libraries, compilers, languages, documentation, user experience, and infrastructure. To reiterate, we expect that most technical contributions will be volunteer, just as it is today, but we want to position HF to fill gaps that can help adoption.
    • -
    • HF will establish a code of conduct and transparent decision-making that will apply to itself and any associated teams.
    • -
    • To the extent HF funds and pursues technical goals itself, it will pursue those goals with the same transparency as we expect from any of the teams associated with it. In this way HF will augment the community in a transparent way.
    • -
    -

    We think that HF represents one of the final puzzle pieces for Haskell. A new organization will provide a way to fund and coordinate Haskell development going forward. We hope that all key committees that currently support Haskell will align HF’s values and mission and we are working with those committees that wish to voluntarily affiliate with HF. Discussions with those teams are currently underway. We don’t want to simply add another Haskell committee.

    - -

    WHO ARE THE HF ORGANIZERS?

    -

    The idea of the Haskell Foundation has been developed by an informal working group including

    - -
      -
    • Representatives from the haskell.org committee, the Core Library Committee (CLC), the Hackage Trustees and the GHC Devops Committee, and other Haskellers.
    • -
    • Haskell companies, who are generously providing financial, advisory, and in-kind support.
    • -
    • Numerous long-standing members of the Haskell community.
    • -
    -

    FUNDING

    -

    There have been other initiatives of this kind in the past, but they have proved hard to sustain. A big part of this has been a simple lack of bandwidth in a highly decentralised community run entirely by volunteers. We expect to launch with a small group of founding sponsors. The Board and staff will take over that function after launch. Our goal is to raise around $$1m/year in cash and in-kind contributions.

    - -

    Improving The Haskell Adoption Story

    -

    Promoting Haskell adoption has three major components:

    - -
      -
    • Eliminating unreasonable and perceived barriers to adoption.
    • -
    • Educating the tech community about the benefits of adoption, including decision makers.
    • -
    • Enhancing the tooling, so that the risk of adoption is dramatically reduced.
    • -
    -

    Eliminating Unreasonable And Perceived Barriers To Adoption

    -

    We expect that with HF adding a little structure, some things can be improved immediately. For example, we need an entry point for Haskell that speaks to the needs of a range of users: from engineers looking for an easy on-ramp with our best advice on how to learn and use Haskell, to team leaders who want to assess Haskell adoption as a business decision. The Haskell community today does not cover the full range of content needed to promote adoption. This is one example where an organization with the right focus and some resources can easily have a positive impact.

    - -

    Educating The Tech Community

    -

    Engineers are typically the ones who drive Haskell adoption. But they often need permission or sponsorship from managers 1 or 2 levels higher. These decision makers are people who are more concerned about speed of development, reliability, maintenance, and people. We need to explicitly address a broader audience and position Haskell as the best solution to many problems, while maintaining integrity and avoiding too much “marketing speak".

    - -

    Conditions for telling this story are favorable. The days of a senior sysadmin dictating which version of Java or Python “shall be used” are dying. Containers and cloud technology have inadvertently conspired to permit engineering teams to make these decisions more often at a team level, even in larger organizations. Still, these teams need air cover and solid tools so that their decisions don’t look “rogue” to the rest of the organization.

    - -

    If used correctly, Haskell can be unreasonably effective. Unfortunately, the “if” clause is not common knowledge. The HF recognizes that many of these advanced features are precisely the reason why Haskell can be successful in cases where other languages fall short. We trust that the end users will be able to make the right trade-offs that work for them. The HF will be there to help users that need to make these trade-offs by improving documentation and highlighting success stories. For example, Haskell has a great concurrency story and things like STM that are dramatically undersold in the marketplace. Some advanced features can be emphasized and taught.

    - -

    The spectrum of developers is very broad: Haskell is used by both junior developers as well as long-time experts. This can cause friction, and some code may be unreadable even to other Haskell developers. This is unfortunate, because we believe that Haskell allows us to express ideas in a way that are clear and elegant. We need to delineate the common knowledge aspect of the language and tools to elevate more developers. HF should carry this banner.

    - -

    Beyond that, the pesky problem of the marketplace for Haskellers remains. We often hear about fear of hiring bottlenecks and we know some engineering leaders that list this as the number one concern about Haskell. These leaders need to know one thing. You don’t have to hire a Haskell team: Haskell can make your team. Your smart Python developers can learn how to make reliable software and will love you for letting them. There is a role for HF to bridge the gap between the countless developers who want to learn and write Haskell, and the decision makers who currently believe it is hard to find these people.

    - -

    Technical Agenda: Enhancing The Tooling, Filling The Gaps

    -

    Haskell Foundation will identify a list of technical goals that will ease adoption and improve Haskell use in production. We have established an initial agenda and are seeking to refine it as we go forward. As HF evolves, we will engage technical discussion in a transparent way, with input from the community.

    - -
    +
    From 5e2f5622682e7eeda6d96ee59a5cf3e74344fe11 Mon Sep 17 00:00:00 2001 From: Jake Wood Date: Mon, 6 Mar 2023 23:47:19 -0500 Subject: [PATCH 4/4] updates README.md --- README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c298cef9..7910584f 100644 --- a/README.md +++ b/README.md @@ -25,12 +25,18 @@ To build the project: stack build ``` -Once the project has built (which can take a while due to the dependencies for Hakyll), to generate the site use: +Once the project has built (which can take a while due to the dependencies for Hakyll), generate the site with: ```bash stack exec -- site build ``` +and for development use: + +```bash +stack run -- site watch +``` + The site will be build in the `_site` directory, and you can open the files in your browser of choice. Due to a Hakyll issue, some sponsor logos will not show up correctly. This is expected behavior, and should be fine for the deployed site. For further information, please refer to the [CONTRIBUTING.md](CONTRIBUTING.md) at the root of this project.