{"id":5924,"date":"2014-06-19T09:57:09","date_gmt":"2014-06-19T07:57:09","guid":{"rendered":"http:\/\/daniel.haxx.se\/blog\/?p=5924"},"modified":"2014-06-19T09:57:09","modified_gmt":"2014-06-19T07:57:09","slug":"the-curl-and-libcurl-2014-survey","status":"publish","type":"post","link":"https:\/\/daniel.haxx.se\/blog\/2014\/06\/19\/the-curl-and-libcurl-2014-survey\/","title":{"rendered":"The curl and libcurl 2014 survey"},"content":{"rendered":"<p>Reading through the answers to the <a href=\"http:\/\/curl.haxx.se\/\">curl project<\/a>&#8216;s survey &#8220;curl and libcurl 2014&#8221; is very interesting and educational.<\/p>\n<p>After having lead and participated in this project for so long I have  my own picture of what we&#8217;re good and bad at. That&#8217;s not exactly the  same image I get when I read the survey responses. That&#8217;s of course the educating part and I really want to learn from this poll and see where to put in some efforts and attempt to improve. At the same time I&#8217;ve been working for a while to put together a roadmap for the project, and the survey will help guide us with that work as well.<\/p>\n<p>The full generated <a href=\"http:\/\/curl.haxx.se\/docs\/survey\/survey2014.html\">summary of the answers can be found on the site<\/a>, but I thought I do the extra effort here and try to extrapolate data, compare and try to get to the real story that lurks in the shadows.<\/p>\n<p>Over the almost 10 days the poll was open, we received 194 responses. I was hoping for more participation, but on the other hand I don&#8217;t think more people would&#8217;ve given a much different view. My only concern would be that I&#8217;m not sure exactly how well we reached out.<\/p>\n<p><strong>Almost all curl users use it for HTTP and HTTPS<\/strong>. Sure, we also use a lot of other protocols and in fact all supported protocols did up having at least two users according to the survey, but only a single digit percentage did not mark HTTP and HTTPS as protocols they use. The least used supported protocol <strong>gopher, is used among 1.5% of the users who responded<\/strong>.<\/p>\n<p><strong>FTPS and SFTP are basically equally much used<\/strong> and they are the 4th and 5th most used protocols. <strong>HTTP, HTTPS and FTP are clearly our most popular protocols<\/strong>.<\/p>\n<p>Only <strong>one in five<\/strong> users use curl on a single platform. All others use it on two or more, and one if four use it on four or more with an unexpectedly high 11% saying they use it on <strong>5<\/strong> or more platforms! That&#8217;s a pretty strong message to me that our multi-platform strategy is important.<\/p>\n<p>Our users have been with us for a long time. <strong>Half<\/strong> of the users have been using curl for five years or more! A fifth has been with us for 8 years or more! And yet there seems to be a healthy amount of newcomers finding us as 14% is within their first year.<\/p>\n<p>The above numbers combined, I&#8217;m not surprised but only happy to see that <strong>4 out of 5 users are also involved in other open source projects<\/strong>. curl is just one piece in a large ecosystem and I think it is good that we all participate in several projects so that we learn and cross-pollinate where possible!<\/p>\n<p>Less than half of the respondents are subscribed to a curl mailing list, and curl-library is the most popular one. This also reflects in subscriber numbers on the actual mailing lists where curl-library with its 1400+ members has almost twice as many subscribers as curl-users. One way to view this is that we are old enough, established enough and working enough so that users don&#8217;t have to subscribe to our lists to keep up. The less optimistic way to see it could be that this is because we haven&#8217;t reached out good enough or that our mailing list culture\/setup isn&#8217;t welcoming enough.<\/p>\n<p>Perhaps most surprising to me: that several persons got upset and reacted strongly to the question about how good we treat &#8220;female and other minorities&#8221; in the project. To me there&#8217;s no doubt that female contributors are a minority in the curl community and I want to learn if we&#8217;re doing our best to be inclusive and open to all possible contributors. Or at least how good\/bad people think we are doing.<\/p>\n<p><strong>29% of the respondents have contributed patches<\/strong>, meaning 56 individuals. I think that tells more about the ones who took part of the survey than it measures participation level among &#8220;regular users&#8221;.<\/p>\n<h2>Documentation<\/h2>\n<p>A big revelation for me was the question where I asked people to   identify the &#8220;worst parts&#8221; of the project. The image here below is   the look of the summary.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/curl.haxx.se\/docs\/survey\/survey2014.html\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/curl.haxx.se\/docs\/survey\/charts\/chart_013.png\" alt=\"\" width=\"345\" height=\"540\" \/><\/a><\/p>\n<p>It quite clearly identifies &#8220;documentation&#8221; as the area in most need of improvements.<\/p>\n<p>I don&#8217;t think the amount of docs is the problem. After discussing with people I think the primary issues are:<\/p>\n<ul>\n<li>Some collections of docs are just too big and hard to find in, like the curl man page and the curl_easy_setopt man pages. We need to split them up and\/or rearrange somehow to help people find the info they need. Work has started on this. I&#8217;ll follow up with details later.<\/li>\n<li>We get slightly bad &#8220;reviews&#8221; on this when people confuse the libcurl bindings&#8217; lack of docs to be our problem. Lots of libcurl bindings are not very good documented &#8211; but they are separate projects not controlled or documented by us. I don&#8217;t know what we can do to help that situation. Suggestions are very welcome!<\/li>\n<li>We don&#8217;t have much step-by-step tutorials on how to get started and how to knit things together. We mostly provide reference manuals. I will appreciate help with improving this!<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-64  aligncenter\" title=\"cURL\" src=\"http:\/\/daniel.haxx.se\/blog\/wp-content\/uploads\/2007\/09\/curl-keywords300.jpg\" alt=\"cURL\" width=\"300\" height=\"110\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Reading through the answers to the curl project&#8216;s survey &#8220;curl and libcurl 2014&#8221; is very interesting and educational. After having lead and participated in this project for so long I have my own picture of what we&#8217;re good and bad at. That&#8217;s not exactly the same image I get when I read the survey responses. &hellip; <a href=\"https:\/\/daniel.haxx.se\/blog\/2014\/06\/19\/the-curl-and-libcurl-2014-survey\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">The curl and libcurl 2014 survey<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,6],"tags":[33,19,386],"class_list":["post-5924","post","type-post","status-publish","format-standard","hentry","category-curl","category-floss","tag-curl-and-libcurl","tag-open-source","tag-survey"],"_links":{"self":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/posts\/5924","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/comments?post=5924"}],"version-history":[{"count":39,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/posts\/5924\/revisions"}],"predecessor-version":[{"id":6008,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/posts\/5924\/revisions\/6008"}],"wp:attachment":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/media?parent=5924"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/categories?post=5924"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/tags?post=5924"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}