…I could be mistaken, but this may very well be a first: a programming language with its own (virtual) help desk! A single point of contact where new and old dissatisfied thoughts and feelings can then be reported instead of (re)appearing here, there, and everywhere else - a reasonable separation of concerns. Future visitors can then periodically look at helpdesk.haskell.org to see how well (or poorly) Haskell is faring: convenient!
There is a simple metric here: job market. When I started writing Haskell commercially back in 2015, getting a Haskell job was considered a special luck, a rare opportunity. Nowadays not a day passes by without another recruiter dropping me a message. The job market has grown tenfold at least. If this is not “thriving”, I don’t know what is.
Is using the language, and wants to continue to do so
Is using the language, but is thinking of abandoning it
Is not using the language, but is thinking of starting to do so
Does not want to use the language
I am in the third category. I like Haskell, but find it difficult - not helped by poor quality documentation, some of which is out-of-date and hence very frustrating and misleading, whilst other documentation is so dry and lacking in useful examples that it might as well not exist. I do programming for a living, as a transport engineer, and use a lot of languages already - in decreasing order, VBA, C#, PowerShell, Python, Julia. Most of our data is in Excel format, so VBA naturally fits the bill, and if coded carefully is fast enough for simple work. We do Windows programming in Visual Studio, which is very easy to use, whilst C# is fast enough for most of the hardcore maths that we do. Julia is a new language which I am starting to use for data processing.
There is a temptation to start a lot of new languages, but the limitations are 1) spreading yourself too thin, 2) what other engineers can handle. This is precisely the problem that Google faced, and they dealt with it by ruthlessly limiting the languages that can be used in house. Bringing a new language to our business is all well and good, but difficult to justify - and rightly so, I feel.
One thing that is very good about Haskell is that I feel it is a friendly community. Most programmers are friendly, but some languages get a reputation for attracting more than their fair share of unpleasant idiots - I’m chiefly looking at you, Common Lisp.
Those who never use the language and actively go out to discredit/discourage the language.
Met so many in the wild… honestly this is perhaps one of the major contributing factors in me thinking haskell’s dying. The worrying thought that they might be mostly right.
…would new arrivals to Haskell really see us as being “friendly” upon seeing comments like that?
I have no doubt from your comments that you had a less-than-ideal experience with (some in) the Common Lisp community. Guess what? There are some new to Haskell who would say similar things about its community (I’m reasonably sure there are people out there who still think of me as being “annoying” or “clueless” - or worse). Will labelling another community as having “a [bad] reputation” help to improve ours?
…you mean like what the combined Lisp/Scheme community have had to endure for decades? If they can keep on going, we can too!!!
Absolutely correct. Sometimes we have to remind each other of those past mistakes, but we should do so sparingly (e.g. when we fear it might happen again) and less so as part of an argument.
The stack vs cabal thing by now feels like someone not getting over their ex partner.
Oh, it would be great to have! The kind I met pretended they have gone through haskell, though. To be fair, many of those would not tolerate 10 hour learning for a concept. (I wonder how they manage in programming scene)
I doubt that they would judge Haskell’s community from the bad experience that someone had with the Common Lisp community. Ironically, the bad experiences were on Stack Overflow - a regulated environment, somewhat unlike Reddit - where you try to give advice, just to have it chucked back in your face. I don’t care if someone agrees with me or not, but I do care about good manners, and respect for expertise.
If a reference to Stack Overflow, some people have no idea how to ask questions, and no inclination to read the help pages either…
Seems like nobody mentioned it in this thread, but I believe the pandemic might have contributed a lot to the general lack of enthusiasm in the Haskell community, since it has killed enthusiasm all around the place. I think the general state of depression that came with the pandemic was particularly bad for a community like that of Haskell since it’s mostly driven by volunteer work.
I, for one, have been putting off cleaning up and open sourcing a lot of the code we’ve been building and improving at $WORK, and I haven’t found the time nor the energy to have fun with Haskell like I used to, because I barely have enough of either to take care of $WORK and all the people I care about around me, most of whom are fighting pandemic-induced depression while I suffer the same myself.
I want to second @enobayram’s point. A few months ago, I got very annoyed at Haskell, frustrated with the way the tools were working, frustrated with my collaborations, and frustrated with the community. Then, I got a notification that my newly coughing, sniffling daughter – having just spent a day with her >80-year-old grandparents – was actually negative for Covid. Suddenly, Haskell was much more delightful – the language and its ecosystem spontaneously improved concurrently. The change in my work attitude was remarkable, and I had no inkling that my earlier negativity toward Haskell had anything to do with Covid.
Upshot: We humans can be poor at assigning an emotional state to a cause. Perhaps some of us are so frustrated with events we cannot control that we channel that toward something we might have a hope of controlling (e.g. Haskell). This is not rational. But it might nevertheless be very widespread.
I really agree with this sentiment. Over the last month or so I’ve been trying to make a more concerted effort to meet more people now that Covid is not preventing me and others from meeting up. But I’m finding it really hard to meet new people in the Bay (where I moved at the start of Covid and so met no one), and I have very little way to meet potential Haskell partnerships…
Anyway something that would help me feel more connected with the Haskell world would be in-person meetups. Online just doesn’t hit the same as a half-day hackathon
When I think about it, I don’t think of it as specific to Haskell. I mostly wonder if haskell / scala (fp) / clojure / f# / elixir / fp-ts / ocaml are shrinking or not growing fast enough.
I worked in haskell for two years doing basic application development, a few years back. Both of the environments were somewhat complicated and they weren’t shepherded by a very experienced haskeller, so I went through some stress in each circumstance. I was pleased to get away from haskell after going through that stress. I always check back every six months or so, to see if haskell tooling, ecosystem, etc is growing or starting to converge more, but I generally feel less enthusiastic about carrying the haskell flag at work and trying to evangelize for it. Right now, I have been leaning towards ruby or python, to have access to a large ecosystem for web application development. I am trying to avoid typescript because I constantly hear complaints about node ecosystem quality. I am also neutral about golang.
Here are some things that would peak my interest in haskell in the future:
If there is steady growth in the web application ecosystem, and most of the existing libraries keep pace with the features offered in ruby or python web ecosystem
If people in haskell, scala, f#, clojure somehow joined forces or figured out a way to share effort between the communities. Then it would feel like the combined ecosystems from those groups would have a chance of some day catching up with the size of the bigger players like ruby’s ecosystem.
If the alternative preludes and the core libraries converge towards one integrated approach
If the documentation and tutorials are very thorough for each library and each library presents a gradual path for haskell beginners to haskell experts to make use of the library without having to read the source code or understand all the advanced aspects of haskell to start being productive
These are all random wish list items, but if people are looking for feedback, that’s my feedback!
Update: After more reflection, I think putting energy towards or making working groups to facilitate collaboration between Haskell community and fp-ts, phoenix, and elm, would yield more Haskell commercial programmers over time. There is a natural progression from getting exposed to those to wanting more purity and power.
None of what was said above really refutes my rather modest message. You folks here are building your own echo chamber — seeing the good signs, averting your eyes from all else. Haskell is not thriving, it has a niche on the market but far smaller than it was thought to deserve, and there are no signs of taking over any additional markets.
Let me walk through your counter-arguments stepwise.
So far as it is an honest expression of the thoughts and feelings of the people that rehearse said grievances, it is by definition not a lie. No one owes you to «get over it» and feel good.
Dear Tom, I know you stand by Haskell day and night, and truly I have read the message that you quote not once and not twice, but many times, before writing my own. But you are wrong in your use of the word «thrive».
3 : to progress toward or realize a goal despite or because of circumstances
Has Haskell realized any of its goals? Well, maybe some. Hardly many. Manifestly, there is no vigorous growth. You are seeing what you want to see, not what there is.
What are you talking about? I consider «thriving» as «thriving», there is a specific meaning to this word. Yes, Rust is clearly thriving, Python is clearly thriving, and about Haskell we cannot say either that it is dying or thriving. We need to be more nuanced.
No, it is not absolutely correct. If anything absolute, it is absolutely wrong, as I explain above. Your framing of other people’s expressions as, I suppose, a humiliating stereotype specific to your culture, does not make your position any stronger in a reasoned conversation, but rather makes it clear you have no real argument.
The «stack vs cabal thing» is a tragic fault that has not been accounted for. The lesson has not been learned. The uncomfortable truth has been swept under the carpet.
Dear Andrew, indeed you are especially lucky (intellectual, educated, energetic, free to pursue your desires) to have found yourself a rare opportunity that now leads to your receiving all those messages.
And what you see as «thriving» is better called «commercialization». If there is tenfold more money on the Haskell job market than back then, I should think there would be proportionally more growth. Where is that growth? Something does not align.
I know many of you folks here as talented software engineers with extensive and splendid open source contributions. But we are not talking Software Engineering here. We are talking History, Sociology, Philosophy, Marketing. We should be twice careful and make the best effort to account for all sides of the question. I have no interest in persuading any of you — I do not have any point other than the trivial «the graph is flat» in the first place — but I am appalled by how eagerly you take far sides. Look at where you are, look at where the world is, and beware of generalizing your very special(yes you are special, you are not average) experience — this is awfully bad science.
I shall pose you all a question though.
Haskell was driven by a vision, a dream. The vision has faded. What is Haskell driven by now?
Well, to be honest I do think there should be better balance of haskell employers vs employees. Haskell is famous as hard to get hired, which could be attributed to lack of hires compared to applicants. To resolve the problem, either we should have more hires or less applicants. Perhaps both is happening here.
Also, I don’t think commercialization of programming language is bad. In the end, the world is based on capitalism. Commerce matters here.
I am simply yet to see more haskell job opportunities, but that could be due to my peculiar location. Over here, even C# jobs are dying, and JS/Python is taking some share of Java while other languages are nonexistent. (US is called “arena of languages”) I guess over here, Go is becoming popular just because Google invented it (DUH). So… there’s that.
Btw, did haskell have a (rather unified) vision? What was it, and how was it lost?