The state of Haskell 2018 survey
Take 2
It is sad and annoying that I have to rewrite this entire post because someone deliberately tried to derail the “state of Haskell 2018 survey”. I also now understand why many of the previous results were surprising to me! The corrected results are less so, here is a short review:
- a good proportion of developers give Haskell a fair go before giving up
- the lack of Haskell jobs seem to be a big factor for not using Haskell more. I think it comes down to us, “senior developers” or developers of any influence to change this: talk to CTOs, help beginners, promote existing successes, raise other obstacles (“hard to learn”, “bad tooling”, “missing documentation/libraries”)
- a good proportion of Haskellers are hobbyists. This should send to messages to employers. There are more Haskellers around than you think and they would probably love to shine with Haskell professionally
- the other languages used by Haskellers are very mainstream languages. I think this suggests that people using Haskell have a broad and varied experience of “the industry” and came to Haskell to expand their skillset
- Command-line apps are the main type of applications developed using Haskell, followed closely by “Web (API)” which I take is “microservices”. This is not surprising to me but I have also seen a bunch of successful Rust CLI applications lately and I wonder if that order could change in the future
- Stack is the main method to install GHC, and remains the most used tool to build projects. It is hard to deny that Stack fixed some pain points for the community
- Upgrading GHC can break your code but people stay relatively up to date and appreciate a frequent release schedule of the compiler. This is encouraging but this also could be the sign of the lack of old, established projects where management is reluctant to evolve the platform because of the migration risk
- The long list of favoured language extensions with > 100 votes almost corresponds to my own list (with
OverloadedStrings
being at the top as expected). I am only puzzled byApplicativeDo
being ranked so high andNoImplicitPrelude
so low. In my opinion this calls for a new standard but there’s a lack of resources to work on this and it is not a show stopper which should explain only the moderate interest in a new standard - Emacs and vi come on top of the editors for Haskell. I’ve never been a user of any so I’m happy to see VSCode rank at the third place. The experience is not stellar but I am confident that it will improve
- On the testing front I was glad to see Hedgehog having a non-negligible amount of backers. Hedgehog is a recent testing library and I think that combined with
tasty
(and a bit ofregistry
) it makes a nice combination - Many people seem to be struggling on how to use this fantastic language and want more posts on “best practices/architecture/patterns”. On one hand I was expecting people to long for more “expert” articles but on the other hand I am not surprised at all! I have the strong opinion that building large applications in Haskell is difficult, in particular because there are no first-class modules. I created a library to address those difficulties. Brian Goetz, of Java fame, is now trying to push this idea that we need FP and modules and I think that building Haskell applications around carefully crafted modules will help everyone
- The “feelings” section of the survey is really tilted on the “happy side” and the biggest dissatisfaction comes again from the documentation and lack of “best practices”
- Where do Haskell developer live made me smile. It turns out that Haskell is big in the US and UK, ok, but then in France and Australia of which I’m a citizen and Germany where I currently live! Maybe that’s why I was destined to use Haskell :-).
- We can also debunk the myth that “Haskell is for academics”, most Haskell developers have a Bachelor’s or Master’s degree (even if there’s also a non-negligible number of doctorates)
Last thanks
Thanks to @taylorfausak for creating this survey and collecting the results. I hope that we will get an even larger sample next year so that this survey becomes even more representative of what’s going on in the Haskell community. And an ironic thanks to the person who tried to skew the results for teaching me a lesson on trusting the data too blindly :-).