1. 32

I am super excited to announce this survey! It is inspired by Rust’s recent surveys and Johan Tibell’s state of Haskell surveys from a few years ago. The goal of this survey is to better understand how Haskell users feel about the language, ecosystem, and community. So please, if you’re a Haskell user: Take 10 minutes and fill out the survey. Thanks!

  1.  

  2. 15

    I was disappointed that there were no demographic questions - that’s a vital area which the Rust survey creators put a lot of work into. I expect it was due to the survey creators not seeing it as important enough to justify the effort of doing it right, which I know is considerable. I understand that decision, but it’s frustrating, because it’s very important to some of us.

    1. 16

      I agree that demographics are important! I definitely want to include them in next year’s survey. This is the first survey I’ve ever published. I didn’t want to get the demographic questions wrong or otherwise mishandle them. That’s why I decided to focus on the technical questions. The survey was developed in the open (see this issue); next year’s will be too. I would be delighted to have you help out with the demographic questions.

      1. 13

        Just copy ours :).

        Jest aside, we’re cool with anyone taking these questions like all our other open source output.

        Also, there’s a huge problem currently: most languages don’t run these kinds of surveys and then many don’t share a common core. It’s hard to read a lot from them.

        In case of Rust, we’re in the lucky position to actually have run two of them, so we can at least put this year’s number in relationship to last year’s.

        But for the rest? Are we doing better then language X? Worse? Only gut feeling.

        I don’t see this as a competition, there’s rarely been a structured approach to mapping communities.

        In any case, if you’d like to exchange experiences, please feel free to contact community-team@rust-lang.org

        1. 8

          I’m happy to hear that! And I’m also happy to be contacted to comment on concrete proposals, when next year’s survey is at that stage; I don’t have the bandwidth to be involved more than that.

          I suspect the team that did the Rust survey will also be happy to advise about these topics. I know they’ve talked about it a bunch here on lobste.rs, and those old discussions are still in the archives somewhere.

        2. -2

          You mean the part about “underrepresented groups” or whatever on the Rust survey? Why do you think that is important?

          One of my favorite things about the Haskell community is that everyone is too busy doing actual technically impressive stuff to worry about e.g. how many gay people happen to be using it.

          To be blunt, I think that sort of thinking (obsessing over whether an organic community follows one’s arbitrarily constructed ideals for what it should look like) is a cancerous mind-suck that detracts from actually productive work.

          To be a little more blunt, I think the fact that Haskell has a reputation as being extremely technical has actually helped the community a great deal, at least just by virtue of the fact that it scares away people who are primarily involved in software as a means to push some political agenda.

          Late edit: feel free to respond instead of just downvoting, would be happy to be wrong here.

          1. 33

            This is downvoted already, I’ll bite anyways. First of all, I think your comment shows that you have no idea what we are doing there.

            Gathering demographics questions is much more then what you narrow it down to. It’s telling that the only thing you can come up with is “how many gay people happen to be using it”? It’s also: where do people live, would they want to travel to a conference, etc… It cuts out the guesswork. You know what? When you measure, you also sometimes find out that things are just okay. No need to do something. Great! Sometimes, you find something odd. Then you might want to investigate. It’s a community survey. We want to know about people, not about technology. But social groups are also a thing to check.

            The Rust community also does production user surveys, which are die-hard technical and very detailed, usually specific in certain areas like embedded and or gaming. We seek out users willing to do that and set up meetings to figure out the issues.

            To be blunt, I think that sort of thinking (obsessing over whether an organic community follows one’s arbitrarily constructed ideals for what it should look like) is a cancerous mind-suck that detracts from actually productive work.

            To be blunt too: It’s shit that you call my work “not productive”. Here’s a thing: I don’t want to contribute to rustc or Servo. Why? I code all day, I don’t want to code at night. I’m happy that other people want to. I still want to contribute to FOSS. In the last 5 years, I’ve set up 2 foundations, 11 conferences and managed around 250000 Euros to run all these things. I signed leases that could have bankrupted me. I managed to find ways to run 2-days conferences that cost 100EUR and still cover all expenses of speakers, attendees and those that cannot pay 100 Euros. I love that work. People are indeed very fair about this. Those that have more give, those that don’t, don’t. And I want everyone to benefit from that. My whole work revolves around the question “Who’s not here, and why?”. It’s my hack. Nothing of that is fundamentally special, other people could have done it.

            And you know what? We measure. We don’t go out “hey, please do X because I think it works”. No, we go “hey, we did X and metric Y improved”.

            It’s also amazing how many people just need a “have you considered programming might be something for you?” and then just head of and learn it. But the question needs to be asked a couple of times.

            It’s shitty to go on an concern troll around people doing precisely that to better do “productive work”.

            There’s no way to get me to work on other things without paying me. And you know what I like about the Rust community? They don’t concern troll me. They go: cool, if that’s what you want to do, please do it for us. It’s not like I bind a lot of resources. Community work works best if you don’t have many cycles. We align on a goal and then we do a lot of footwork.

            Sure, there are cases where issues arise and social work becomes focus, but that’s fine. Interestingly, the work of community workers is often to talk about issues before they come a trashfire, go to reddit and subsequently to 4chan.

            There’s also the “fixed cake” fallacy at work here: The belief that if we expand our community beyond a certain group, another group has to take the impact. That isn’t the case. The cake is not fixed. The market for programming languages is growing in absolute terms, also our communities are growing in absolute terms. These are effect to be appreciated and taken into consideration.

            Different folk need to be addressed in different fashion and thats fine. These surveys give us a bearing in where we want to invest our time or where things just work.

            If you absolutely want to talk in programming terms, we’re profiling our work. I find it amazing that there is so much pushback when we actually check on our successes.

            It’s shitty of people to devalue that work. A work, which has to be said, is more often done by women and people of color in many communities. Many of which are masters of it.

            There’s two options here: I do this work within a community or I don’t. It’s as simple as that. No “more productive” trolling.

            I structured work on these issues is still “cancerous mind-suck” for you, then go ahead. But say it to my face when you meet me.

            To be a little more blunt, I think the fact that Haskell has a reputation as being extremely technical has actually helped the community a great deal, at least just by virtue of the fact that it scares away people who are primarily involved in software as a means to push some political agenda.

            I just leave this here:

            So I just met Simon Peyton Jones (creator of Haskell) and chatted with him for a bit. Asked him his thoughts on Rust and he said he thinks it seems exciting and he was jealous of the great community we have. Just thought I would let you guys know :)

            (From: https://www.reddit.com/r/rust/comments/5yo24a/meta_rust_jealousy/)

            This was, by the way, the best compliment I ever saw, I respect Simon very much.

            We have an awesome many people primarily interested in software working in the Rust community. But they don’t throw the community workers under the bus like you do. That’s why I run a 6-monthly Rust conference and not a 6-monthly Haskell conference.

            I love Haskell, but there’s reasons I’m not active there. Still, for anyone that wants to learn techniques and procedures, by all means get in touch.

            Communities don’t happen at random. They work through network effects and feedback and these can be moderated and improved.

            Finally, to be very blunt: you just cost me 45 minutes of community work, which I’d have preferred to fill with something productive.

            But I also think it’s worth putting it out for others to read.

            EDIT: I’d also like to state that I know quite some people in the Haskell community caring very deeply about this. haskell-cafe is still one of my inspirations for a cool space to make. But that space is intentional, not organic.

            1. 10

              Thank you very much for writing this. It will serve as a great resource the next time I spot a similar comment in the wild.

              1. 4

                Found this thread late, but wanted to say thanks @skade for the consistently insightful commentary on community here, and for you work in the Rust community. I don’t work with Rust much, but on the occasions when I’m working on community-building, the Rust community is one of the first places I go to for examples of how to do it well.

                1. 1

                  Thanks for responding.

                  It’s telling that the only thing you can come up with is “how many gay people happen to be using it”?

                  That’s the only demo data you put on https://blog.rust-lang.org/2017/09/05/Rust-2017-Survey-Results.html

                  Please, tell me how you thought that was “telling”.

                  But social groups are also a thing to check.

                  Check and… what?

                  The Rust community also does production user surveys,

                  Do you see me objecting to those?

                  To be blunt too: It’s shit that you call my work “not productive”.

                  Sorry you feel that way. I think a lot of things aren’t productive, including some things I do, so you shouldn’t take it personally.

                  In the last 5 years, I’ve set up 2 foundations…

                  Cool, but you don’t need to justify your relevance because I called one of your interests into question.

                  It’s shitty to go on an concern troll around people doing precisely that to better do “productive work”.

                  Actually, I wouldn’t say anything if I just thought you were just wasting your own time; further than that, I think obsessing over demos is actively counterproductive. The utility to the community is negative, not zero.

                  There’s also the “fixed cake” fallacy at work here: The belief that if we expand our community beyond a certain group, another group has to take the impact.

                  It’s not so much “taking the cake” as “ruining the cake”. If you “expand your community” to include demo-obsessed identity politicians, the community is going to become actively worse.

                  A work, which has to be said, is more often done by women and people of color in many communities.

                  Why did you feel this comment was relevant to the conversation? I have several hypotheses, but I’d prefer not to assume your motivations.

                  I structured work on these issues is still “cancerous mind-suck” for you, then go ahead. But say it to my face when you meet me.

                  Sure. I don’t have an aversion to arguing about the social costs of different activities in person any more than I do online.

                  That’s why I run a 6-monthly Rust conference and not a 6-monthly Haskell conference.

                  Right, that’s what I said earlier; something about Haskell pushes away people with demographic planning aspirations, which I like a lot.

                  Communities don’t happen at random… these can be moderated and improved.

                  This is just fundamentally untrue; most of the best communities are more or less spontaneous. Many communities I love (such as lobsters) are good precisely because they’re minimally moderated.

                  haskell-cafe is still one of my inspirations for a cool space to make. But that space is intentional, not organic.

                  The list is, afaik, unmoderated, and the Haskell IRC (one of the best chats on freenode) is also totally unmoderated. Your example is evidence against your claims.

                  1. 6

                    Communities don’t happen at random. They work through network effects and feedback and these can be moderated and improved.

                    This is just fundamentally untrue; most of the best communities are more or less spontaneous. Many communities I love (such as lobsters) are good precisely because they’re minimally moderated.

                    This is false for Lobsters, both historically and currently.

                    Speaking historically, you cut out the key phrase “network effects” from the quote. The Lobsters of early 2014 was a very different, nearly empty place. The current state of Barnacles is quite similar: low activity by any metric you care to measure (traffic, stories posted, comments, votes, etc.) and a negligible sense of community. Online communities start as failures and have to overcome the chicken-and-egg problem that it’s a waste of an individual’s time to participate until quite a lot of other people are already participating.

                    And on an ongoing basis, Lobsters requires daily attention to moderation and maintenance. Most of it is design, small edits, comments, and private messages. The rare, exciting things like deleted comments and banned users are the tip of an iceberg. It’s all the small, constant attention that keeps the positive feedback loops working to power a successful community instead of killing it. This is also true of Haskell-cafe.

                    The theme I take from your comments seems to be that the work you are unaware of doesn’t exist and, if it does, it must be worthless. I don’t understand that dismissive cynicism well enough to respond meaningfully to it, so all I can do is point out these surface-level inaccuracies.

                    1. 2

                      Lobsters requires daily attention to moderation and maintenance.

                      I seem to recall jcs saying that he never deleted anything if he could avoid it, and indeed that seemed to be the case. It seems that you are now taking a somewhat more active stance, but historically lobsters has had very little/none of what I would call active moderation.

                      Most of it is design, small edits, comments, and private messages… This is also true of Haskell-cafe.

                      SPJ sending out an email about being nice isn’t community moderation or management. Neither is general site maintenance. I’m not sure how you would conclude that I disagreed with any of these things unless we’re using very different definitions for a number of words.

                      The theme I take from your comments seems to be that the work you are unaware of doesn’t exist

                      I’m aware of all the examples you gave; they just aren’t the kind of obsessive, inorganic micromanagement I was objecting to.

                    2. 4

                      That’s the only demo data you put on https://blog.rust-lang.org/2017/09/05/Rust-2017-Survey-Results.html

                      I don’t get it. That page contains a bar chart with all sorts of demographic categories on it, just above “Diversity and inclusiveness continue to be vital goals for the Rust project at all levels.”

                      1. -2

                        Me:

                        e.g. how many gay people happen to be using it.

                        Guy who responded to me:

                        where do people live, would they want to travel to a conference, etc…

                        What kind of demo data do you see them sharing on that page? I’m not really sure what you’re confused about; you seem to be agreeing with me.

                        1. 7

                          The blog post is an editorialised overview, the 2016 one covers that. https://blog.rust-lang.org/2016/06/30/State-of-Rust-Survey-2016.html#survey-demographics

                          There have not been notable changes, so it wasn’t mentioned again.

                      2. 4

                        As the person who started the Haskell IRC channel and as an active moderator of said channel, moderation happens often. There’s a team of motivated users on the #haskell-ops IRC channel and we have to step in more than I’d prefer.

                        Good communities require much work and regular feedback.

                2. 8

                  This survey is also for Haskell NON users! It asks if you tried and gave up, and why.

                  I like teaching Haskell (one hour earlier today at lunch, another hour scheduled after work), so I’d like to hear any negative feedback about starting with Haskell that I could hopefully improve.

                  Also, I’m glad this survey links to the GHC extensions, I learned several new things!

                  1. 3

                    Personally I find the competition from OCaml and F# to be very strong. Unlike Haskell they are impure, but they offer many of the same benefits. I also find they have a much better learning curve coming from an imperative background.

                    I’m not so sure that laziness by default is an attractive feature in a language. I’d rather use a strict language, and opt into laziness when I need it.