Skip to content

Add "Why Haskell?" benefits section to main page #338

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 26 commits into from

Conversation

malteneuss
Copy link
Contributor

@malteneuss malteneuss commented May 9, 2025

Follow-up from discussions on https://discourse.haskell.org/t/emphasize-why-haskell-on-haskell-org-landing-page/12036

Motivation: Increase general Haskell adoption by focusing on the business/developer benefits in headlines and descriptions, and to reduce technical jargon such that decision makers and developers from other programming languages understand the points easily, and to nudge them to try out Haskell.

Position on landing page:
image

Content:
image

@malteneuss
Copy link
Contributor Author

Update with prototyping first:
image

@reubenharry
Copy link

Some thoughts on wording and content:

In the "Scale with ease" section, the first sentence about users was a bit hard to follow. Is it clear how it relates to the rest of the paragraph?

Bleeding edge section: in light of a few minor grammar and wording quibbles, I'd rewrite it as "Get a view into the latest in programming language innovation. Haskell has its roots in programming language theory, and has influenced many popular languages. New features like Generalized Algebraic Data Types (GADT), Effect Systems and Linear Types are at your fingertips, but are optional." . I'd also vote for "Cutting edge" instead of "Bleeding edge" (the latter connotes "unstable" to me).

I really like the "Fun" paragraph, but maybe a synonym of fun would sound less flippant as a title? Like "Developer friendly".

Maintain with confidence, suggested rewording: "Haskell has the strongest type system in any practical language: this prevents mistakes from reaching production code, and enables developers to refactor large codebases easily and safely. As the Haskell slogan goes, "if it compiles, it works"."

I'd also say that links might add a lot of value, e.g. a link to the State of the Ecoystem site when mentioning Haskell's libraries, or to info about STM when mentioning Haskell's advantage in concurrent programming.

@rebeccaskinner
Copy link
Collaborator

I love the idea of this section. Since this is a significant change to the front page of haskell.org we'll want a majority vote from the committee on the change before we merge it.

@malteneuss
Copy link
Contributor Author

malteneuss commented May 10, 2025

Some thoughts on wording and content:

@reubenharry Thanks for the suggestions. I've simplified and clarified some of the wording. (Please write further comments as review comments for to separate discussions for separate sections).

image

@hasufell
Copy link
Contributor

I've been wondering if there was a way to merge it with the "Features" section or make a hybrid of both or just leave it as is.

Because the development experience kind of emerges out of those features. But I have no idea what the best structure would be.

@malteneuss
Copy link
Contributor Author

To me the current "Features" section further below is actually nice to get more technical details what Haskell has that others don't; although that section could also be improved (in another PR).

@angerman
Copy link
Collaborator

This is a great PR! And I think it's awesome to highlight why haskell. I am however of the opinion that "Cutting Edge" is actually not a "why haskell", but rather "why not haskell" part. I'd even go as far as say it conflicts with the "Maintain with confidence" and "Scale with ease" parts. The Cutting Edge section even mentions Linear Types, which as far as I recall, is still highly experimental.

@hasufell
Copy link
Contributor

I think the tension between language innovation and stability is actually a selling point. I'm not sure how many language communities actively pursue both goals. It is hard and we're doing it!

@malteneuss
Copy link
Contributor Author

This is a great PR! And I think it's awesome to highlight why haskell. I am however of the opinion that "Cutting Edge" is actually not a "why haskell", but rather "why not haskell" part. I'd even go as far as say it conflicts with the "Maintain with confidence" and "Scale with ease" parts. The Cutting Edge section even mentions Linear Types, which as far as I recall, is still highly experimental.

@angerman I'm also open revert back to towards "Bleeding edge" (with the experimental connotation), and maybe removing GADT's from the examples. I want to emphasize that Haskell supports both like @hasufell (if you need it, but can tolerate more instability), maybe that should be clearly stated along the lines as it was before:
"Stay with safe, current best practices or try out next-generation programming techniques like Generalized Algebraic Data Types (GADT), Effect Systems, Linear Types and more to make your code even more reliable; only when you need it and can tolerate the risk to get ahead: Haskell supports both."

site/index.html Outdated
<h3>Delightful</h3>
<p>Software that works, scales and is easy to maintain helps you to attract talent and keep your team motivated.
Haskell is a language that let's you express your ideas clearly and teaches you a new way of thinking about programming
&mdash; if you work on a challenging project, you might as well have a good time.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sounds slightly odd to my ear both in terms of tone and content, but I don't have a great alternative suggestion.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed it's a bit bold in contrast to the rest. I'm open to change it someone has a more fitting phrasing.

site/index.html Outdated
<h3>Rapid prototyping</h3>
<p>Start small and explore new ideas to find your market fit. Haskell is a compact language with a large ecosystem of open-source libraries and tools
to get you started and help you growing.
The strong type system makes it easy to write programs that work, both large and small, even when you don't like writing types &mdash; the compiler will figure it out.
Copy link
Contributor

@noughtmare noughtmare May 12, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps we could also mention that you can defer type checking to run time, letting you test programs that are not completely finished yet.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To me this seems like a lower-level details that could fit into another PR for the "Features" section further below on the site, e.g. the "Statically typed" subsection.

@angerman
Copy link
Collaborator

This is a great PR! And I think it's awesome to highlight why haskell. I am however of the opinion that "Cutting Edge" is actually not a "why haskell", but rather "why not haskell" part. I'd even go as far as say it conflicts with the "Maintain with confidence" and "Scale with ease" parts. The Cutting Edge section even mentions Linear Types, which as far as I recall, is still highly experimental.

@angerman I'm also open revert back to towards "Bleeding edge" (with the experimental connotation), and maybe removing GADT's from the examples. I want to emphasize that Haskell supports both like @hasufell (if you need it, but can tolerate more instability), maybe that should be clearly stated along the lines as it was before: "Stay with safe, current best practices or try out next-generation programming techniques like Generalized Algebraic Data Types (GADT), Effect Systems, Linear Types and more to make your code even more reliable; only when you need it and can tolerate the risk to get ahead: Haskell supports both."

@malteneuss I do like this more. I don't even mind GADTs much, those are pretty stable. To expand on my rational: If you want to kill Haskell at scale, you start going overboard with advanced type features, and make your codebase churn for each GHC upgrade (or you stop upgrading, which becomes its own drawback). If you stick to simple/boring/Haskell98+eps, you get pretty performant, and unlikely to break codebase, that's easy to maintain. If you go out and use Linear Types, or some of the work towards Dependent Types, you are opening yourself up to more churn. Yes you get great features, at the expense of increased maintenance burden. At the same time maintaining Haskell code is generally pretty great, because the rigorous type system gives you fairly easy refactoring abilities. This all falls flat once you have to refactor your code every 6-12 mo because of new compiler releases, and the subsequent churn in the ecosystem.

We have made progress towards reducing this with the stability guarantees, and trying to move breaking stuff into e.g. ghc-internal. We didn't get all the way to put turely experimental stuff behind feature flags.

So yes, I like your rephasing that basically says that haskell tries to provide industrial use while also allowing language research. I guess I'm just opposed to conflating it, as that distinctly does not reflect what I see in using haskell.

@malteneuss
Copy link
Contributor Author

malteneuss commented May 13, 2025

@angerman Reverted to "Bleeding Edge" and emphasized experimental connotation.
image

Co-authored-by: Julian Ospald <[email protected]>
@malteneuss
Copy link
Contributor Author

@Bodigrim

"Scale with ease" to 100k users isn't really a magnitude I'd advertise as "scalability". And frankly Haskell story about GC in multicore environment isn't something we can be particularly proud of. Further, not quite sure what streaming libraries have to do with scalability.

The main connotation i wanted to convey is that Haskell is not (only) for small POC projects but for real-world mission-critical services, and efficient enough to do that while better handling complexity of parallel and conurrent programming. I can move the specific features (like GC; apparently not the best related feature here) out of this section into the "Features" section in a later PR, as i originally planned.

I'm doubtful Haskell can really claim to be "Bleeding edge" nowadays and equally doubtful that it's a positive claim to make in a business-oriented text.

My main connotation was to express that Haskell at least offers more advanced features for reliability (when you need it) that mainstream languages don't offer, albeit as a trade off against more instability/churn. We can improve that in a later PR

@malteneuss
Copy link
Contributor Author

"Why" a language should be used is about the value it provides, not merely a list of its unique characteristics. Features are not value propositions, they do not entice readers on their own.

"Abstraction", for instance, is not a value proposition. Why should I care about abstraction? What benefits do I gain from being able to have more powerful abstractions?

Exactly. To make it more vivid:

image

@tomjaguarpaw
Copy link
Collaborator

I don't really care whether I can scale to 100k or 1 million users.

But you are already in the Haskell community :) I understand the point of this proposal is to appeal to the kinds of people who aren't yet.

@hasufell
Copy link
Contributor

I don't really care whether I can scale to 100k or 1 million users.

But you are already in the Haskell community :) I understand the point of this proposal is to appeal to the kinds of people who aren't yet.

I don't think that's the point.

If I'd visit a new language community front page and read this type of sentence, I'm not sure I'd be excited to dig deeper since it sounds grandiose and not really developer oriented.

Would you as a developer be interested about a language that tells you that you can easily upscale to 1 million users? Anyone who has ever worked on a project with 1 million users, regardless of language, will probably get nightmares from just thinking about it. Any decision or mistake you make has super high impact... I want to think about why haskell is fun, not how to navigate the most challenging industrial projects without going broke.

That's why I think there is an obvious rift in terms of audience.

@hasufell
Copy link
Contributor

I'd go so far to say that if our audience are managers and startup CEOs it's even more so inappropriate to tell white lies.

What does actually matter for a business?

  1. ecosystem size and availability of existing solutions (Haskell is nowhere near e.g. Java in terms of ecosystem size and commercial solutions)
  2. commercial support (there are maybe 2-3 well known consulting companies in Haskell)
  3. hiring market and onboarding (despite Haskellers trying to paint it as amazing, it's actually hard to hire Haskellers, especially seniors... onboarding takes longer than, say, Go or TypeScript)
  4. time to market (Haskell often has an initial higher one-time cost, because it leans more into properly designed solutions...)

In light of those priorities, I think Haskell cannot be recommended without reservations. It depends: are you tech focused, do you already have access to strong talent, will your product be a long-living product, etc. etc.

I think we should be cautious here as to not be perceived as misleading.

If we focus on developers... and they will be disappointed after 3 weeks of experimentation... well, sorry about that. And everyone moves on. But I'd really be nervous if this text is seen as advice for startups and managers.

@malteneuss
Copy link
Contributor Author

My impression is that parts of the Haskell community subconsciously(?) don't actually want Haskell to gain widespread adoption so that they can stay special unicorns in their niche. Remaining at the status quo and preaching to the choir of FP enthusiast certainly won't help Haskell to improve adoption commercially much.

You have to start somewhere to target a larger audience, and one important step is to start using language that more people understand, e.g. what Rust did when it transitioned from a developer focused https://prev.rust-lang.org website to its current form https://rust-lang.org with the explanation "As part of Rust 2018, we will completely overhaul the Rust web site, making it useful for CTOs and engineers alike."

@hasufell
Copy link
Contributor

My impression is that parts of the Haskell community subconsciously(?) don't actually want Haskell to gain widespread adoption so that they can stay special unicorns in their niche.

I think that's almost ad-hominem and I didn't spend 6 years of my free time on Haskell tooling, because I want it to remain niche.

If a CTO asks me whether Haskell is a good choice for them, then my answer depends on the situation.

Lots of what's written here is a pretty good pitch if it was on the website of a consulting company that can help you actually do it.

Otherwise, it lacks substance. And then the only two options are a) it's seen as a bad sales pitch, because it lacks evidence or b) someone actually buys into it without understanding the consequences.

@malteneuss
Copy link
Contributor Author

I think that's almost ad-hominem and I didn't spend 6 years of my free time on Haskell tooling, because I want it to remain niche.

I overgeneralized and apologize. My frustration is actually with comments like "Haskell not being for everyone is a feature, not a bug" and ambitions to keep the status quo. In this thread we just seem to have different opinions on what constitutes effective marketing, of which we both probably can agree on that Haskell needs more.

@aviaviavi
Copy link
Collaborator

+1 to more effective marketing one way or another.

A few more points I'd like to make on what is effective:

If I'd visit a new language community front page and read this type of sentence, I'm not sure I'd be excited to dig deeper since it sounds grandiose and not really developer oriented.

Given Haskell is currently so niche especially compared to the quality of the language, we have significant evidence for the claim: the marketing pitch that's effective to you, @hasufell (and me), versus the marketing that is effective for the broader programming community at large, are quite different. We should be careful about leaning too heavily on "Well I would react like {this} to {that messaging}". We are optimizing for the reader who is unfamiliar with Haskell, not the one who was already curious enough to try Haskell with our current marketing materials. Our historic approach is empirically not as effective as it could be.

Second, this is a "Why Haskell" section, and not a "Why not Haskell" section -- so giving the in depth and fully balanced view of tradeoffs and caveats to every claim we make should also not be the goal here. We could certainly add a "why not" section or similar that really digs into the tradeoffs of the language! It's not misleading to highlight the benefits and values and leave the deeper and more nuanced overview for another place. We need to be put our best foot forward here and write this section as if this is our only chance ever to convince the reader that Haskell is worth spending more time on.

I still think this PR is ready to go now, but I thought the above was worth writing out to hopefully build more alignment between everyone here on the marketing strategy. This is an important and productive discussion!

@hasufell
Copy link
Contributor

the marketing pitch that's effective to you, @hasufell (and me), versus the marketing that is effective for the broader programming community at large, are quite different

Sorry, I don't follow.

What made you come to this conclusion?

@Kleidukos
Copy link
Collaborator

This conversation thread will go nowhere until we've determined with precision what is the target audience. Only then we'll be able to move forward in a productive manner.

@malteneuss
Copy link
Contributor Author

malteneuss commented May 15, 2025

Given the Haskell Foundation's mission statement "broadening the adoption of Haskell, by supporting its ecosystem of tools, libraries, education, and research", i suggest to pick (and i picked) the broader programming community at large (including commercial users) as @aviaviavi described, and communicate not in terms of features (why should i care that Haskell is using functional programming and is advanced?) but in terms of value propositions.

@hasufell
Copy link
Contributor

why should i care that Haskell is using functional programming and is advanced?

Because your developers will deal with those facts every day?

@hasufell
Copy link
Contributor

hasufell commented May 16, 2025

Alright, I feel we're running in circles and not really getting deeper into the problem and all I get seem to be red herring arguments like "but you're already in the Haskell community, how would you know?" or "you don't want Haskell to grow!".

I've worked in a multitude of Haskell companies, including startups, banks, traditional small software shops and large tech companies. I've also had minor experience with non-tech entrepreneurs asking me for technological advice. So I want to draw on that experience when making my claims.

How do businesses decide what language to use?

This is the main question we need to answer. And we need to recognize there are different types of businesses.

Non-tech startup

Non-tech startups don't care about the technology, but about selling a product. They lean towards outsourcing the tech part and only keep the product and project management in-house.

They care about fast results and an easy way to outsource or hire cheap developers. The non-tech savy CEO will either just go with whatever the market standard is in that industry or try to get a tech-savy founder (CTO) on board, who will then make the decision.

As such, the only way I've ever seen Haskell make it into a non-tech startup is because one of the founders is a Haskell aficionado. I doubt any founder with software engineering background would be so bold to pick a language for the business they're not already proficient with. Chance of failure is already tremendous.

Tech startup

Tech startups deeply care about technology and put that at the core of their business ideology. In my opinion, tech startups already have a deeply preconceived idea of what to use, so they won't be looking for advice or go around and do extensive research.

They're all techies and are already sold on a paradigm and have years of experience. They care about language features, excellence and performance.

So why would they pick Haskell? Either they're already Haskell experts or they come from an adjacent language (e.g. Scala) and want to experiment with Haskell in production and have the confidence to do so.

Big corps (non-tech)

I think the easiest example of this are banks. They don't care about tech, it's just a means to an end. They could as well just use excel sheets for everything if that was more efficient.

They are often very hierarchical, with strict reporting and performance goals. They foremost care about commercial support, integration, reliable systems and so on. Since they have lots of resources and access to very strong talent, they don't mind developing in-house solutions or deviating from the industry standard if that gives them an edge.

So why would they pick Haskell? Because it scales? Certainly not, so does Java. I think these are rarely purely higher management decisions, but developers and ex-tech managers proposing the technology, because it has a very specific advantage. These places are risk averse, so if it's just another language that scales, then they'd rather stick with Java.

Big corps (tech)

Big tech corps already use Haskell. They drive technology and have huge budgets to experiment. They pick Haskell, because they can, but they don't have to. They have access to global talent, can drive language ecosystems or develop their own dialects/languages on a whim.

So why would they pick Haskell? I would say simply because their developers want to or it particularly fits a specific use case well. They likely have a multitude of languages in use, so Haskell has to compare well to the alternatives, especially because they have the means to develop in-depth experience and compare velocity etc.

Traditional small software shops

These places have possibly decades long software engineering experience (e.g. with older tech stacks) and are tech-savy, but conservative.

They care about maintenance, stable hiring market and robustness.

They may pick Haskell, because it's more modern than their previous tech stack and promises to provide a better development experience. These places care about their developers as much as they do about their products. They might be so bold to make a prototype in a new language as a proof of concept.

So where do the decisions to pick Haskell come from?

There are lots of nuances here, but I think on average the decision to pick Haskell comes from the "bottom" (the developers) or very tech-savy management, which will have to consider their development team anyway.

There have been lots of cases where people sneaked in Haskell into their company for smaller projects. The decision to completely jump ship isn't something that happens over night and the reasons to do so will usually be deeply technical and based as much on the development flow and experience as the "healthiness" of the language/compiler/ecosystem.

The business concerns are usually not the reason to pick a specific language over another... they are a reason to rule out certain languages. A business always wants a language that scales, has a large ecosystem, commercial support and easy to hire talent (I repeat: we are not at the forefront of those points). If some of those points are lacking, the language has to make up for it with other (technical) superior properties.

So how should we market Haskell?

We can't market Haskell as the best pick for large conservative businesses, as we simply lack the commercial support (we have what... 3 major consulting companies?). Most of its users are on the tech-savy end, because Haskell provides enough net value that those other shortcomings won't hurt them.

That means the easiest way to market Haskell is to focus on developers coming from other languages and do so aggressively. Forget about Scala, Elixir and Clojure. Haskell is the real deal. They will promote Haskell in their businesses and are part of larger tech decisions in the end, collectively or as they rise in ranks.

As the adoption increases through our sleeper agents, we may reach a point in the future where Haskell really shines in terms of commercial support. And maybe that will become its main value proposition at one point. But at the moment... it's the language itself, its technical properties and the super engaged community.

We could also discuss: who's even visiting the Haskell front page? A CEO desperately looking for a tech solution? Probably not. They'll be over at Tiobe index where we already dropped out.

Case studies of other programming language front pages

Rust

https://www.rust-lang.org/

I was deeply disappointed by the headline. It's empty words.

The "Why Rust?" section however similarly references specific language features (and tooling) just as my alternative PR does: #342

Elixir

https://elixir-lang.org/

I find the headline much better: it tells me what type of paradigm I'm dealing with, but also gives room for some bragging about scalability and maintainability.

The rest of the site very quickly goes into technical details (even with code examples) for every claim they make. I proposed this idea earlier, where we could merge the "features" and "why Haskell?" section.

Python

https://www.python.org/

The headline is short and conveys what Python truly stands out for: "work quickly" and "integration". It's not sales speak, it's the truth and easy to back up.

Above the headline are interactive code examples that (again) explain language properties, rather than vague value propositions.

Unison

https://www.unison-lang.org/

Headline (or sub-line) explains the paradigm in one sentence. The value propositions are fairly technical and quite specific.

Gleam

https://gleam.run/

I can understand the paradigm from the first look at the page. Scrolling further down gives me more technical insights.

So what should the front page provide

  1. the different paradigm of Haskell should be visible and understandable from looking at the front page at first glance without scrolling
  2. scrolling down gives me more insights about the language and development experience, with code examples or interactive repls
  3. there are links that help me dive into different properties of the language and read up more (suck the reader in)
  4. scrolling down further leads me to testimonials... but not just short sentences, but references to blog posts or talks that prove the success of Haskell in those companies (I think the Haskell Foundation could do this: ask companies to provide testimonials!)

@tomjaguarpaw
Copy link
Collaborator

all I get seem to be red herring arguments like "but you're already in the Haskell community, how would you know?"

To be clear, this is not my argument, and I have not made any claims about what you know or don't know.

My argument is that we already have in the community pretty much all of the people, you and me included amongst them, to whom our traditional marketing approaches appeal ("Haskell is pure and lazy!", "Haskell is academically rigorous!", "Haskell is theoretically advanced!"). In order to grow we need to market in a way that is not appealing to people already in the community.

@hasufell
Copy link
Contributor

Thanks, did you read the rest of my analysis? 😄

I feel you're not engaging with my arguments, to be honest.

@tomjaguarpaw
Copy link
Collaborator

Thanks, did you read the rest of my analysis? 😄

No I didn't. I read what I interpreted to be a misunderstanding of what I was saying which seemed to warrant urgent clarification, since it is the kind of thing that could cause offence.

@Kleidukos
Copy link
Collaborator

Kleidukos commented May 16, 2025

@hasufell Thanks for doing this study of other players in the space. This is very valuable work and should have been the first thing posted – not necessarily by you. There seems to be a trend that we can safely follow with a hook first, and technical details later.

@noughtmare
Copy link
Contributor

noughtmare commented May 16, 2025

So why would they pick Haskell? Because it scales?

Being able to scale is indeed not the main reason to choose Haskell, but I think the fear of Haskell failing to scale (because it is just a research language) has already caused people to avoid Haskell. Our front page should dispel such myths.

Case studies of other programming language front pages

I would recommend to also look at Swift and Go, which I consider to be better role models for Haskell. And, for the record, only the Go front page lists even one feature which is just "built-in concurrency".

Python
[..]
Above the headline are interactive code examples that (again) explain language properties, rather than vague value propositions.

Those are hardly unique features, unless you consider functions, arithmetic, and records, to be selling points of a language. Instead, the code examples in the top banner are aimed at novices!

@hasufell
Copy link
Contributor

hasufell commented May 16, 2025

Being able to scale is indeed not the main reason to choose Haskell, but I think the fear of Haskell failing to scale (because it is just a research language) has already caused people to avoid Haskell. Our front page should dispel such myths.

Incidentally, my first job at a Haskell company had massive problems with scaling exactly because of memory issues ;)

Was Haskell developed to scale? No it wasn't. But there are ways to scale it. It's the community and tech pioneers that enable this with resources, documentation and institutional knowledge.

So maybe what I want to say here is: if you fundamentally have a problem with doing a bit of pioneering work or getting your hands dirty, then Haskell might be a questionable choice.

Those are hardly unique features

Oh they don't have to be. They just have to represent the language. Python isn't very unique in terms of features, but there are reasons it has taken off.

@ninioArtillero
Copy link

I find @hasufell analysis compelling and spot on. It is a good starting point for following the discussion. How do businesses (actually) decide what language to use? I would like to hear more experience-informed answers to this question, and leverage this knowledge to find the target audience. This is needed for the "Why Haskell?" question to be answered in any meaningful sense. It is also needed for it to be effective, because if the section engages business managers who won´t care or might be disappointed the effort would be wasted or could even backfire. What if it is not that easy to scale their business? Or if their developers are not delighted to learn a new paradigm imposed on their already refined practice (I've seen some complaints before)? Or—on another angle—are not thrilled by the possibility of their developers going experimental on bleeding edge features?

As the argument stands, the target audience would be the developer—rather the non-tech entrepreneur, manager or executive board—who (ultimately) is the means to promote Haskell into a business tech stack bottom-up. Developers are indeed the bulk of the broader programming community.

This proposal pushes towards wider adoption and —in a sense— questions the status quo that makes Haskell a niche language. I have to say that I was all in for the original approach at the beginning, but in the light of the arguments put forward I agree that

Lots of what's written here is a pretty good pitch if it was on the website of a consulting company that can help you actually do it.

I think this gives a fair account of this proposal's content and pitch angle. In this context I would ask, are we to supersede Haskell's actual strengths by the business value it can bring if properly used?

@malteneuss
Copy link
Contributor Author

I don't have the time nor patience to discuss this topic to death by constantly moving the target further away. I suggest to try a Safe Enough to Try attitude.

Feel free to use any of the text in case someone else would like to drive this topic.

Second, this is a "Why Haskell" section, and not a "Why not Haskell" section -- so giving the in depth and fully balanced view of tradeoffs and caveats to every claim we make should also not be the goal here. We could certainly add a "why not" section or similar that really digs into the tradeoffs of the language! It's not misleading to highlight the benefits and values and leave the deeper and more nuanced overview for another place. We need to be put our best foot forward here and write this section as if this is our only chance ever to convince the reader that Haskell is worth spending more time on.

#338 (comment)

@malteneuss malteneuss closed this May 21, 2025
@aviaviavi
Copy link
Collaborator

I think we should apply the same logic as #337 and merge this as-is and continue the debate if we want to improve it. If we can get another committee member to approve, I think we should re-open this and merge it, and let the discussion continue.

We don't currently have a succinct set of value propositions on the website, explaining why they should care about the features Haskell offers. This is a trivial marketing blunder according to widely accepted best practices in messaging/positioning. Adding this section in its current form will very likely help, and we have tooling in place to measure its effectiveness. It's low risk to try, potentially high reward if it resonates with readers better than not having it.

@hasufell
Copy link
Contributor

I think we should apply the same logic as #337 and merge this as-is

@aviaviavi it seems odd to me when there's an alternative PR that has not been discussed in detail: #342

Sure, process wise you could just chronologically vote on each PR based on time of creation, but that risks shutting down synergies and discussions surrounding the differences. The first proposer might be overturned by the second without the ability to defend their stance, etc.

@Kleidukos
Copy link
Collaborator

@aviaviavi Yeah, I'd like us to take a proper look at #342 as well, before merging one or the other.

@tomjaguarpaw
Copy link
Collaborator

I don't have the time nor patience to discuss this topic to death by constantly moving the target further away.

I'm disappointed to hear this now, when we were just one committee member approval away from merging your PR. So be it.

It is deeply regrettable that contributions to the Haskell ecosystem around public facing resources like the website are extremely difficult to make, and can only be made by people with superhuman stamina. That's not good, but it is the way it currently is. I would like to improve the situation, but I'm not sure I can. I will try.

One way things I envisage things improving is if people are willing to expend the required amounts of energy to go through the process to completion, build consensus, build trust, build working relationships, build shared understanding, and bit by bit build velocity and momentum. I hoped the approval of your previous PR, @malteneuss, would have helped in that regard. Maybe not. Maybe my hope is in vain.

Anyway, I'm also sorry I spent a lot of time engaging in good faith with this PR, trying to help drive it forward, only to have it closed. If I had expected that to happen I wouldn't have spent my time on it at all.

I suggest to try a Safe Enough to Try attitude.

I would also support that.

@tomjaguarpaw
Copy link
Collaborator

I think we should apply the same logic as #337 and merge this as-is and continue the debate if we want to improve it.

I support this, but since the submitter has closed this issue it will have to be submitted by someone afresh. @malteneuss said he would be happy with that: "Feel free to use any of the text in case someone else would like to drive this topic."

@hasufell
Copy link
Contributor

It is deeply regrettable that contributions to the Haskell ecosystem around public facing resources like the website are extremely difficult to make, and can only be made by people with superhuman stamina.

I'm not sure I agree. The proposed change is very exciting (so I'm very thankful to @malteneuss for kicking it off), but also super invasive: we're basically deciding on a marketing strategy!

This requires discussion, careful thought and considering alternative ideas. I've so far found it a bit disappointing that my critique was met with dismissive comments that felt like my own contribution to the topic wasn't welcome.

I think it's fair to assume that such proposals will draw in lots of attention and critique, but it's vital that we remember that we all have the same goal: improving the website.

@tomjaguarpaw
Copy link
Collaborator

Due deliberation is very important, but I don't think it should be conducted in a way that causes contributors to give up their attempts to contribute saying "I don't have the time nor patience to discuss this topic to death by constantly moving the target further away.". Surely another contributor experience is possible that still maintains sufficiently high standards.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.