Stackoverflow survey: affection and disaffection

The Stackoverflow developer survey results are out. This only surveys people who use Stackoverflow and decide to take the time to take the survey; it is not a survey of all programmers or even all SO users. I nevertheless find parts of it a little bit interesting. One part I found somewhat interesting was this section on “loved” and “dreaded” languages,


and in particular comparison of OCaml with other functional languages, especially F#, since it’s the widely-used language that is most similar to OCaml.

It’s not surprising that F# is more “loved” than OCaml if, as I believe, there are more F# users than OCaml users. You have to use a language to love it.

What’s more interesting is the ratings for “dreaded”, which “means that a high percentage of developers who are currently using the technology express no interest in continuing to do so.” OCaml is listed in the middle of the “dreaded” list, while F# doesn’t make it onto that list. I don’t know why there would be that difference, though I could generate speculative answers. One question is how many people there are who are using OCaml who didn’t choose to use it. If the number is small, then it’s easy to get a high percentage just by chance.

(Interestingly, F# makes it on to the “most wanted” list, which means that it is a “language that developers who do not yet use it most often say they want to learn.” In this case, it seems likely that F# makes it onto the list while OCaml doesn’t simply because there is a natural path from C# to F# without a lot of competing languages, and there are many C# users. If you’re a C# programmer and want to explore functional programming, F# would be a natural language to consider. Traditional OCaml draws from various user communities, I assume, but it doesn’t allow you to build directly on what you were doing in the other language (unless it’s C, I guess), unlike F# with C#. Of course JSOO and Bucklescript provide a natural path from Javascript and other Javascript-based languages, but there’s a lot of competition in that space, with competing functional languages. So I think the fact that F# is listed as wanted while OCaml isn’t is a function of differences in the two anguages or their libraries or communities. It’s just a matter of relationships between languages and communities.)

1 Like

I would rather not take such surveys serious. Surveys and statistics in general are hard and require a sophisticated interpretation. Many SO visitors are students, OCaml is quite widespread in education and unfortunately, unlike F#, is not so widespread in industry. I would expect it to be not loved on SO. PHP is a more loved language btw.

1 Like

I think the student aspect is the key here. Students almost never like the language they’re learning as they’re learning it, and being forced to learn OCaml for a course, after learning some imperative languages, must seem quite dreadful. Most of these students won’t come back to work in OCaml later on, so they won’t have the satisfaction of using a language they’re already familiar with.

6 Likes

Good point–that makes a lot of sense.

At my university there is a course in which students spend a few weeks each on different languages with different paradigms. I don’t know how common that is, but if you’re thrown into a foreign (metaphorically speaking) language just for a few weeks and that’s your only experience of it, that would make it even more difficult to appreciate the language. My guess is that there would be cases in which the professor dislikes some of the languages that are taught, but the curriculum requires a course that surveys the paradigms, so s/he teaches them anyway.

1 Like