Haskell Foundation April Update

Haskell Foundation April Update

Technical Agenda

Text-Utf8 Proposal

Our goal is to make strings in Haskell world-class, and to start that process our Tech Agenda Group and its collaborators have identified changes to the default implementation of Text that will improve memory and computation overhead in the majority of use cases. We’re working with the Text maintainers to migrate the existing libraries to Utf8.

GHC Performance Dashboard

The dashboard is live, spurred by HF conversations and thanks to the hard work of Ben Gamari and Matthew Pickering of Well-Typed! The next steps depend on additional GHC CI resources so we can measure performance of core and other high priority libraries as well, ensuring that we’re optimizing GHC performance for real world use. Recently we have seen regressions in performance that we would like to avoid in the future with the investment in this infrastructure.

Minimal Windows Installer

Emily Pillmore, Ben Gamari, Tamar Christina, and Michael Snoyman met to work through the issues and create a plan for having as simple an installation story for the Windows platform as we can manage in the short term.

Affiliations

Clash Language

We have officially affiliated with Clash! This is a very exciting step forward for both communities, and we look forward to collaborating closely. Please read our press release for more information.

Community

Slack

We have opened our HF Slack for anyone to join. To ensure that our Slack, Discourse, and other communication channels are friendly places where everyone feels included, Simon Peyton Jones (with input from the GHC Steering Committee) created the Guidelines for Respectful Communication. Those guidelines are now a core part of the HF.

Website Refresh

Coming soon! The code is at https://github.com/haskellfoundation/haskell.foundation-redux, and we have a running version (not always up to date with the latest changes) at http://obsidian.webhop.org:9000/. We will have the new version live within a week. This update includes updated content about the Foundation, a new design, and is easier for us to update with the status of our ongoing initiatives.

Where We Store Our Stuff

GitLab

We keep internally facing documentation and projects in the Haskell GitLab, including working conventions, process documentation, Board Meeting minutes, etc.

GitHub

For projects that are more outwardly facing we use our GitHub org. This allows us to more easily accept help from volunteers.

Volunteering!

There are so many opportunities: GHC, documentation, core libraries, tools, mentoring, media production, and more. Email volunteer@haskell.foundation to let us know you want to help. We’d love to hear about

  • What kinds of projects you’re interested in.
  • How much time you can spare.
  • The skills you bring.
  • What you’d like to learn.

Sponsors!

Sponsors make the HF possible, and with their generosity we can

  • Improve GHC infrastructure, reducing CI times to improve GHC dev productivity.
  • Train moderators for a growing, inclusive community.
  • Fund a Haskell Foundation Conference.
  • Pay for crucial work that is unsuited for volunteers, to make our tools and libraries industrial strength.
  • Create professional videos, examples, educational materials, and tutorials.
  • Connect underserved communities with the resources and volunteers they need.
  • Fund Haskell Foundation scholarships for undergraduate CS majors, and PL grad students.
  • Hire full time staff, such as GHC project and release managers, and a community manager.
  • Source accurate and usable data on usage of Haskell.

Email sponsor@haskell.foundation to let us know you want to step up to make Haskell a top tier programming language.

Sponsors!!

Thank you to our current sponsors, you make the HF possible.

20 Likes

Grafana seems like a great choice for the dashboard. What is the underlying backing store for the stats?

1 Like

The backend is a postgresql database.

1 Like

This is really cool and inspiring progress. Thanks to the board & everyone involved!

It seems the ghcup team wasn’t invited to that meeting, but I’m planning since some time to work towards a windows version of ghcup. That may not address the “installer” issue directly, but it should be easy to build a windows installer around ghcup, without having to duplicate considerable amount of logic.

During the process of investigating this course, I got stuck in the abstract filepath proposal, which I consider a must for porting ghcup to windows.

I sent this proposal for review to the CLC, but haven’t heard back from them in a while.

7 Likes

I’m new here, and don’t know where my question would already have been addressed, but here it is anyway:

Apart from breaking down barriers to entry, what’s your marketing strategy?

I hope not too many of you recoil in disgust at that question.

From the founding announcement:

“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”."

Well, there’s flea-brained market-speak, but then there’s marketing, which really is an industry-focused social science, and probably more rigorous than a lot of other social sciences.

I can agree, broadly, with breaking down barriers, especially since I’m climbing over a few of them myself on a daily basis.

As for actual markets, I’m encouraged to see the linkup with Clash – in fact, I’m starting into learning Haskell in part because of what I heard about Haskell from a CS professor friend who specializes in hardware and embedded-system OSes. He’s taught it (but also OCaml) in his courses at Columbia. I don’t think functional programming is a mere side-interest of his. No, it plays directly into his work.

But marketing isn’t about being all things to all possible “customers.” Marketing strategy is about priorities. Who might “buy” Haskell – paying in “transaction cost” (i.e., learning it) and in “opportunity cost” (i.e., how they might have profitably invested time and energy otherwise, regardless of whether their measure of “profit” is money or publications)?

Among those who might “buy”, how can you categorize them?

And how might you prioritize the potential-customer categories strategically, which is to say, how focusing on one or two would help you reach other demographic categories more easily – or at least ensure survival in the “marketplace” for programming languages?

Let me propose a marketing strategy, more as an example of how to think than as a recommendation. I’ll start with the following observations:

– Haskell user community: significantly academic
– pandoc is a Haskell success story
– academia is publish-or-perish
– Unix/C (a “worse-is-better” technology) probably got saved by document formatting – nroff, troff, and then the contract with the U.S. patent office; but it started because the group wanted their papers to look good
– as pandoc demonstrates, there are a number of math formatting languages out there
– Haskell isn’t bad in numerics performance (only about a factor of 3 worse than C on the n-body problem, and better than some Fortrans
– There are several packages/extensions for units-consistency checking in numerics already written in Haskell
– numerical analysis is math too, and a lot of numerics require good parallelism, where Haskell is reasonably strong

Pardon the Rorschach blot here, but I think I see something of an opportunity: tools that both aid in formatting documents with math in them, but that also help to check that math and the code implementing it, e.g., for units consistency.

For lack of such tools for comparison of mathematical notation with code representation, the first interplanetary mission for NASA came to grief:

For lack of tools for units-consistency checking, a probe destined for Mars instead crashed into Mars:

I realize the math-heads of the Haskell community will be pretty far afield from nuts-and-bolts numerics. (One of these days, fully retired, I might circle back and find out what “polymorphic blame calculus” means.) But there is considerable overlap of interest. Make the document look good. Make sure the computation is correct. There’s also considerable geographic proximity: the college campus.

I know from that milieu that physical-science and engineering types can fall deeply into their computers and the languages used to program them. In a chemistry research group I worked in, at U.C. Berkeley, one PhD candidate I knew who was ordinarily engaged in quantum-mechanical simulation coded a page-layout program in 6809 assembly language (the only language available for the fancy Tektronix storage tube display used for plotting orbital), and just so he wouldn’t have to keep crossing the U.C. Berkeley campus for his troff output – he could use the Selectric-style typeball typewriter in the lab, after hotwiring the Tektronix graphics terminal to the printer. Good enough for chemistry work. And his dissertation did come out looking nice.

In short:

– position Haskell where it can bleed interest into academia wherever complex calculation is done, by interfacing with mathematical-typesetting format tools
– provide the most basic correctness-checking tools for calculations (and that’s units-consistency)
– speed up Haskell on numerics

I’m not sure the exact point to start, IF this became the strategy. It could be providing a units-consistency checker feature for pandoc, for all I know.

In any case, I offer this marketing scenario not so much as a direction to take as to how to think about directions to take. I know it’s tempting to look at industry, and especially where it’s booming. As Sutton’s Law says, look at the obvious thing first. (Named for Willie Sutton, who, asked why he robbed banks, replied, “That’s where the money is.”)

But remember that Apple positioned the Mac in academia first, because the Mac was . . . good at formatting papers. A frontal assault on the IBM PC would have meant competing on price. But by developing mindshare and skills among young people who’d graduate into the job market, after both working with and playing with their Macs, Apple was smart. What turned the Mac into a respectable business machine was the deal with Microsoft to port Office to the Mac. Would there ever have been such a deal if there hadn’t already been plenty of primed young Mac users, ready for it, in their first jobs after college, sitting in front of IBM PCs thinking, “I wish I didn’t have to work with this clunker”?

2 Likes

Seems like volunteer mail address is not usable.

We’re writing to let you know that the group you tried to contact (volunteer) may not exist, or you may not have permission to post messages to the group. A few more details on why you weren’t able to post:

  • You might have spelled or formatted the group name incorrectly.
  • The owner of the group may have removed this group.
  • You may need to join the group before receiving permission to post.
  • This group may not be open to posting.

If you have questions related to this or any other Google Group, visit the Help Center

@jozanek thank you! I’m looking into it.

Hi @Yakushima,

We are in the process of kicking off a marketing task group, thank you for your feedback. If you’re interested in being a part of the task group, please let me know!

Fixed it! Thank you for letting us know.

Tasks without strategy can be a formula for spinning your wheels. Strategy comes out of history: what has worked, and why. I wouldn’t join a marketing task group. I would join a marketing strategy group.

1 Like