e026_survey_results.rst 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700
  1. Nim Community Survey Results
  2. ============================
  3. .. container:: metadata
  4. Posted by Dominik Picheta on 3 September 2016
  5. We have recently closed the 2016 Nim Community Survey. I am happy to
  6. say that we have received exactly 790 responses, huge thanks go to the people
  7. that took the time to respond. We're incredibly thankful for this very valuable
  8. feedback.
  9. This survey was inspired in part by the
  10. `2016 State of Rust <https://blog.rust-lang.org/2016/06/30/State-of-Rust-Survey-2016.html>`_
  11. survey. You will note that many of the questions were modelled after
  12. Rust's survey. One of the reasons for doing this was to allow us to easily
  13. compare our results against the results obtained in the Rust survey. In
  14. addition, we of course also liked many of their questions.
  15. Our survey ran from the 23rd of June 2016 until the 8th of August 2016. The
  16. response numbers are impressive considering Nim's community size; at 790 they
  17. make up just over 25% of the Rust survey's responses.
  18. The goal of this survey was to primarily determine how our community is using
  19. Nim, in order to better understand how we should be improving it. In particular,
  20. we wanted to know what people feel is missing from Nim in the lead up to
  21. version 1.0. We have also asked our respondents about how well the Nim tools
  22. worked, the challenges of adopting Nim, the resources that they used to learn
  23. Nim and more.
  24. It is my hope that we will be able to run a similar survey in a years time,
  25. doing so should give us an idea of whether we are improving.
  26. With these general facts in mind, let's begin looking at specific questions.
  27. How did you find out about Nim?
  28. -------------------------------
  29. The rationale for the first question was simple, we wanted to know where our
  30. respondents found out about Nim. This is an interesting question for us, as
  31. we do occassionally get users asking us why it took so long for them to hear
  32. about Nim. It allows us to see how effective each website is at spreading the
  33. word about Nim.
  34. .. raw::html
  35. <a href="../assets/news/images/survey/nim_found.png">
  36. <img src="../assets/news/images/survey/nim_found.png" alt="How did you find out about Nim?" style="width:100%"/>
  37. </a>
  38. The majority of our respondents found Nim via Reddit, HackerNews or a search
  39. engine such as Google. These results are not altogether surprising. There were
  40. also a lot of "Other" responses, some of which were a bit more
  41. interesting. These included multiple mentions of habrahabr.ru, Dr. Dobb's,
  42. and lobste.rs.
  43. Do you use Nim?
  44. ---------------
  45. Just like the Rust survey creators, we wanted to ensure that our survey was
  46. open to both Nim users as well people who never used Nim. In addition to
  47. those two groups, we have also included a third group of people: ex-Nim
  48. users. All three are interesting, for many different reasons.
  49. Nim users can tell us how they are using Nim and also how Nim's
  50. tooling can improve. Ex-Nim users give us an
  51. idea of why they stopped using Nim. Finally, respondents who never used Nim
  52. can tell us the reasons for not adopting it.
  53. .. raw::html
  54. <a href="../assets/news/images/survey/do_you_use_nim.png">
  55. <img src="../assets/news/images/survey/do_you_use_nim.png" alt="Do you use Nim?" style="width:100%"/>
  56. </a>
  57. It's nice to see that we have such a good range of respondents. The Rust survey
  58. had a much larger number of Rust users amongst their respondents, with
  59. no distinction between users that never used Rust and users that stopped using
  60. Rust.
  61. Should we consider your answers to be invalid?
  62. ----------------------------------------------
  63. This was something I thought would be interesting to have, after I saw it
  64. being used in another survey. While it does pinpoint possibly
  65. invalid respondents, I have opted against filtering those out. Mainly because
  66. that would require re-creating each of the charts generated by Google Forms
  67. manually.
  68. .. raw::html
  69. <a href="../assets/news/images/survey/reliability.png">
  70. <img src="../assets/news/images/survey/reliability.png" alt="Should we consider your answers to be invalid?" style="width:100%"/>
  71. </a>
  72. According to the responses to this question, around 94% of our responses
  73. can be considered reliable.
  74. Nim users
  75. ---------
  76. The following questions were answered only by the 38.9% of our respondents
  77. who identified themselves as Nim users.
  78. How long have you been using Nim?
  79. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  80. .. raw::html
  81. <a href="../assets/news/images/survey/nim_time.png">
  82. <img src="../assets/news/images/survey/nim_time.png" alt="How long have you been using Nim?" style="width:100%"/>
  83. </a>
  84. A large proportion of our Nim users were new. This is good news as it means that
  85. our community is growing, with a large proportion of new Nim users that could
  86. become long-term Nimians. In total, more than 35% of Nim users can be considered
  87. new having used Nim for less than 3 months. With 18% of Nim users that can
  88. be considered very new having used Nim for less than a month.
  89. This could suggest that 18% of our users have only just found out about Nim in
  90. the last week or so and have not yet got the chance to use it extensively.
  91. The high percentages of long term Nim users are encouraging.
  92. They suggest
  93. that many users are continuing to use Nim after making it through the first
  94. few months. The sharp drop at 7-9 months is interesting, but may simply be
  95. due to the fact that there were fewer newcomers during that period, or it
  96. could be because our respondents are more likely to estimate that they have
  97. been using Nim for a year or half a year rather than the awkward 7-9 months.
  98. .. raw::html
  99. <a href="../assets/news/images/survey/nim_time_rust.png">
  100. <img src="../assets/news/images/survey/nim_time_rust.png" alt="Time using Nim and Rust" style="width:100%"/>
  101. </a>
  102. The results for Nim and Rust are actually remarkably similar. They both show a
  103. drop at 7-9 months, although Rust's isn't as dramatic. Nim on the other hand
  104. has a significantly higher percentage of new Nim users.
  105. Do you use Nim at work?
  106. ~~~~~~~~~~~~~~~~~~~~~~~
  107. An important aspect of a language's adoption is whether it is being used for
  108. "real" work. We wanted to know how many people are using Nim in their day
  109. jobs and under what circumstances it is used.
  110. .. raw::html
  111. <a href="../assets/news/images/survey/nim_at_work.png">
  112. <img src="../assets/news/images/survey/nim_at_work.png" alt="Do you use Nim at work?" style="width:100%"/>
  113. </a>
  114. While a vast majority of our users are not using Nim at work, more than 25%
  115. of them are. It's encouraging to see such a high number already, even before
  116. we have released version 1.0. In fact, this percentage is likely close to 30%,
  117. because many of the "Other" responses mention using Nim for the likes of
  118. internal tools or small scripts to help with the respondent's work.
  119. .. raw::html
  120. <a href="https://blog.rust-lang.org/images/2016-06-Survey/rust_at_work.png">
  121. <img src="https://blog.rust-lang.org/images/2016-06-Survey/rust_at_work.png" alt="Do you use Rust at work?" style="width:100%"/>
  122. </a>
  123. Interestingly, a larger percentage of Nim users are using Nim at work than
  124. Rust users. The sample sizes are of course vastly different, but it's still an
  125. interesting result. Combined, nearly 1/5th of Rust users are using Rust
  126. commercially whereas more than a quarter of Nim users are using Nim
  127. commercially.
  128. Approximately how large are all the Nim projects that you work on?
  129. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  130. Finding out how large the Nim projects worked on by Nim users are is also
  131. very valuable.
  132. .. raw::html
  133. <a href="../assets/news/images/survey/project_size.png">
  134. <img src="../assets/news/images/survey/project_size.png" alt="Nim project size for all users" style="width:100%"/>
  135. </a>
  136. This shows us that currently Nim is primarily being used for small scripts and
  137. applications, with nearly 60% of the projects consisting of less than 1,000
  138. lines of code. This makes sense as many of our users are not using Nim
  139. professionally, but are doing so in their spare time.
  140. .. raw::html
  141. <a href="../assets/news/images/survey/project_size_work.png">
  142. <img src="../assets/news/images/survey/project_size_work.png" alt="Nim project size for work users" style="width:100%"/>
  143. </a>
  144. The numbers for part-time and full-time work users of Nim tell a different
  145. story. Over 70% of the projects written by full-time users are between 10,001
  146. and 100,000 lines of code. Part-time users show a slightly different trend,
  147. with many more small projects, the majority being between 1,000 and
  148. 10,000 lines of code.
  149. Overall it's good to see that there is a few large projects out there which are
  150. composed of more than 100,000 lines of code. We expect to see the amount of
  151. large projects to grow with time, especially with version 1.0 on the way.
  152. .. raw::html
  153. <a href="../assets/news/images/survey/project_size_nim_rust.png">
  154. <img src="../assets/news/images/survey/project_size_nim_rust.png" alt="Nim project size for work users (Nim vs. Rust)" style="width:100%"/>
  155. </a>
  156. In comparison to Rust the proportion of project sizes for full-time users is
  157. vastly different. This is likely due to our small sample size. Project sizes for
  158. part-time users between Rust and Nim are somewhat similar, with differences of
  159. around 10% for each project size.
  160. Do you plan to try to use Nim at work?
  161. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  162. .. raw::html
  163. <a href="../assets/news/images/survey/planning_to_use_at_work.png">
  164. <img src="../assets/news/images/survey/planning_to_use_at_work.png" alt="Planning to use Nim at work?" style="width:100%"/>
  165. </a>
  166. It's also encouraging to see that over 50% of Nim users are planning to use
  167. Nim at work! This is slightly more than Rust's 40% and should help Nim's
  168. adoption into even more areas.
  169. Nim and its tools
  170. ~~~~~~~~~~~~~~~~~
  171. In this section of the survey, we wanted to find out the tools that Nim
  172. users are utilising when developing Nim applications.
  173. What editor(s) do you use when writing Nim?
  174. ___________________________________________
  175. Programmers are very specific when it comes to their editor of choice, because
  176. of that it's good to know which editor is most popular among our community.
  177. .. raw::html
  178. <a href="../assets/news/images/survey/editors.png">
  179. <img src="../assets/news/images/survey/editors.png" alt="Editors used by Nim users" style="width:100%"/>
  180. </a>
  181. Looks like Vim is the winner with almost 30%. Followed by Sublime Text and
  182. Emacs. Aporia, the Nim IDE, gets a respectable 15.5%. There was
  183. also more than
  184. 17% of answers which included "Other" editors, such as: Notepad++, Geany, gedit,
  185. and Kate.
  186. What operating system(s) do you compile for and run your Nim projects on?
  187. _________________________________________________________________________
  188. This question gave us information about the most popular target operating
  189. systems, as well as some of the more obscure ones. We have asked this question
  190. to find out the platforms on which Nim applications run on most frequently.
  191. .. raw::html
  192. <a href="../assets/news/images/survey/target_os.png">
  193. <img src="../assets/news/images/survey/target_os.png" alt="Target operating systems" style="width:100%"/>
  194. </a>
  195. This question allowed multiple choices, so each percentage is out of the total
  196. number of respondents for this question. For example, 80.7% of the
  197. respondents selected "Linux" but only 26.6% selected OS X.
  198. This makes Linux by far the most popular target for Nim applications.
  199. Some "Other" targets included: BSD (OpenBSD, FreeBSD), iOS, Android, and
  200. JavaScript.
  201. It's great to see Nim being used on such a wide variety of platforms.
  202. What operating system(s) do you develop Nim projects on?
  203. ________________________________________________________
  204. With this question, we wanted to know what operating systems are used for
  205. development.
  206. .. raw::html
  207. <a href="../assets/news/images/survey/dev_os.png">
  208. <img src="../assets/news/images/survey/dev_os.png" alt="Development operating systems" style="width:100%"/>
  209. </a>
  210. This question also allowed multiple choices and ended up with very similar
  211. results.
  212. You can see that Linux is also the most popular developmental
  213. platform for Nim. But it's more popular as a target platform.
  214. Which version(s) of Nim do you use for your applications?
  215. _________________________________________________________
  216. .. raw::html
  217. <a href="../assets/news/images/survey/nim_versions.png">
  218. <img src="../assets/news/images/survey/nim_versions.png" alt="Version use" style="width:100%"/>
  219. </a>
  220. At the time of this survey, version 0.14.2 was the latest stable release.
  221. It's no wonder that it is the most commonly used release of Nim. It's good to
  222. see that the older versions are not used as often. The high use of ``Git HEAD (devel)``
  223. (nightly builds) isn't surprising, Nim is still evolving rapidly and our
  224. release schedule is not regular or frequent.
  225. Once we go past the 1.0 release, we expect to see much less use of the unstable
  226. ``devel`` branch.
  227. Has upgrading to a new version of the Nim compiler broken your code?
  228. ____________________________________________________________________
  229. .. raw::html
  230. <a href="../assets/news/images/survey/breakage.png">
  231. <img src="../assets/news/images/survey/breakage.png" alt="Breakage" style="width:100%"/>
  232. </a>
  233. Despite the unstable nature of Nim in the lead up to version 1.0, whenever
  234. we make breaking changes we do our best to deprecate things and ensure that
  235. old code continues to work for our users. Of course sometimes this is not
  236. possible and other times it is simply easier to add a breaking change.
  237. This question was asked to determine how much our user base is affected by
  238. breaking changes between Nim versions. We decided to have three possible
  239. answers for this question in order to give us an idea how frequent the
  240. breakage was.
  241. It's incredible to see that over 50% of our users have not experienced any
  242. breakage after upgrading. We expect this number to increase significantly
  243. after version 1.0 is released. Of the users that did experience breakage,
  244. over 80% of them said that it was a rare occurrence.
  245. In comparison to Rust, our results show that there was a higher percentage of
  246. users experiencing breakage as a result of an upgrade. This is to be expected,
  247. because Nim is still in its pre-1.0 period, whereas Rust 1.0 has been released
  248. over a year ago now.
  249. Unfortunately while we are still in this pre-1.0 period, releases will likely
  250. introduce breaking changes as we refine certain aspects of Nim such as its
  251. standard library, so the number of users experiencing breaking changes may
  252. increase.
  253. If so, how much work did it take to fix it?
  254. ___________________________________________
  255. .. raw::html
  256. <a href="../assets/news/images/survey/difficulty_fixing_breakage.png">
  257. <img src="../assets/news/images/survey/difficulty_fixing_breakage.png" alt="difficulty fixing breakage" style="width:100%"/>
  258. </a>
  259. Thankfully most of the breakage experienced by Nim users was very easy to fix.
  260. If you used Nimble, do you like it?
  261. ___________________________________
  262. .. raw::html
  263. <a href="../assets/news/images/survey/nimble_opinion.png">
  264. <img src="../assets/news/images/survey/nimble_opinion.png" alt="Do you like Nimble?" style="width:100%"/>
  265. </a>
  266. Nimble is the Nim package manager, a tool that is very important in Nim's
  267. ecosystem as it allows developers to easily install dependencies for their
  268. software.
  269. The majority of respondents rated it as a 4, showing us that the majority does
  270. like Nimble. With over 55% rating it a 4 or 5. This percentage isn't as
  271. overwhelming as the 94.1% of users that rated Cargo a 4 or 5 in the Rust
  272. survey. Based on these results I think that we definitely need to do a
  273. better job with Nimble.
  274. In our next survey, it might be a good idea to ask more questions about Nimble
  275. to determine how exactly it can be improved.
  276. What aspects of Nim do you find most appealing?
  277. _______________________________________________
  278. .. raw::html
  279. <a href="../assets/news/images/survey/nim_appeal.png">
  280. <img src="../assets/news/images/survey/nim_appeal.png" alt="What aspects of Nim do you find most appealing?" style="width:100%"/>
  281. </a>
  282. We were interested to know the features of Nim that appeal most to our users.
  283. More than 80% of our respondents selected "Execution Speed" as one of the
  284. features that appeal to them. With "Development Speed" and "Readability"
  285. tying for second place and "Metaprogramming" at third place.
  286. The options given to our respondents are rather predictable,
  287. they do show us which of these features have the highest appeal though.
  288. What's more interesting are the "Other" answers.
  289. By far the most popular "Other" answer was related to Nim's compilation to C.
  290. Many users mentioned that they like how easy it is to interface with C
  291. libraries and the great portability that compiling to C offers.
  292. What aspects of Nim do you find most displeasing?
  293. _________________________________________________
  294. .. raw::html
  295. <a href="../assets/news/images/survey/nim_displeasing.png">
  296. <img src="../assets/news/images/survey/nim_displeasing.png" alt="What aspects of Nim do you find most displeasing?" style="width:100%"/>
  297. </a>
  298. It was only natural to ask this question. The results are almost perfectly
  299. opposite to the previous question's answers, with almost 50% of respondents
  300. selecting "Debugging Tools"
  301. as the most displeasing aspect of Nim. With "Documentation" and "Testing Tools"
  302. in second and third place respectively. There is also a much larger number of
  303. "Other" answers to this question.
  304. The "Other" answers for this question vary a lot. Here is a selection of
  305. them, ordered by frequency:
  306. * Small community size.
  307. * Lack of in-depth tutorials.
  308. * Quality of error messages.
  309. * Forward declarations and no cyclic imports.
  310. * Bugs in the standard library.
  311. * No good IDE.
  312. * No REPL.
  313. * No major version.
  314. * Bugs in the compiler.
  315. * Lack of libraries.
  316. * Difficulty installing on Windows.
  317. * Non-intuitive semantics of various constructs.
  318. * Lack of immutable collections.
  319. * Async/await not being production ready.
  320. * Lack of shared collections for threads.
  321. * No Haxe target.
  322. * Memory safety.
  323. We hope that we can improve these things with time. Many of these issues are
  324. already being worked on, including the removal of the need for forward
  325. declarations. Some of these issues like our small community size are difficult
  326. to fix, but we will nonetheless do our best.
  327. Previous Nim users
  328. ~~~~~~~~~~~~~~~~~~
  329. For users that have used Nim before but decided against using it, we asked just
  330. one specific question. The proportion of our respondents that answered it
  331. was 24%.
  332. Why did you stop using Nim?
  333. ___________________________
  334. .. raw::html
  335. <a href="../assets/news/images/survey/ex_nim.png">
  336. <img src="../assets/news/images/survey/ex_nim.png" alt="I stopped using Nim because..." style="width:100%"/>
  337. </a>
  338. Again, this question got a lot of "Other" answers. Apart from that, the
  339. most popular reason for leaving Nim is that it is not stable. Followed by the
  340. a lack of needed libraries and packages and the instability of the
  341. standard library.
  342. * Lack of IDE support.
  343. * Style insensitive.
  344. * Documentation.
  345. * Dislike the syntax.
  346. * Community is too small.
  347. * Missing language features (for example RAII).
  348. * No opportunities to use it at work.
  349. * Messy standard library.
  350. The first item, "Lack of IDE support", was mentioned by multiple respondents.
  351. In the future we should look into ensuring that major IDEs have plugins which
  352. enable easy Nim development.
  353. Based on some of the "Other" answers, it seems that many of the respondents
  354. have not used Nim for very long, for example many respondents complained about
  355. installation issues which they would have run into before getting a chance to
  356. use Nim. Because of this I would consider them not
  357. ex-Nim users but developers that have not had a chance to try Nim fully.
  358. Next time we should also ask how long the respondent has used Nim for to get a
  359. better idea of whether they had a chance to use Nim for extended periods of
  360. time.
  361. Non-Nim users
  362. ~~~~~~~~~~~~~
  363. We also wanted to know the reasons why developers decided against using Nim.
  364. Why do you not use Nim?
  365. _______________________
  366. .. raw::html
  367. <a href="../assets/news/images/survey/non_user.png">
  368. <img src="../assets/news/images/survey/non_user.png" alt="I don't use Nim because..." style="width:100%"/>
  369. </a>
  370. The most common reason that people have for not using Nim is that it is
  371. not yet ready for production. Thankfully this will improve with time.
  372. IDE support is also a prominent factor just as we've seen in previous results.
  373. There is also a lot of "Other" answers, let's have a look at a selection of
  374. them. Some of the most prominent ones, in order of frequency, include:
  375. * No time to use/learn it
  376. * Syntax
  377. * Documentation is incomplete
  378. * Garbage Collection
  379. * Prefer functional paradigm
  380. * Small community
  381. * Style insensitivity/Case insensitivity
  382. One respondent made a very good suggestion: they said that the
  383. "Do you use Nim?" question should have included "No, but I intend to" as
  384. an answer. Definitely something we will do in the next survey. Indeed, many
  385. respondents mentioned that they were planning on trying out Nim but that they
  386. just have no time to do so, this is very encouraging!
  387. Learning Resources
  388. ~~~~~~~~~~~~~~~~~~
  389. We wanted to get an idea of how Nim users are learning Nim. Every respondent
  390. answered this question, no matter what they answered for the "Do you use Nim?"
  391. question.
  392. Which learning resources, if any, did you use to learn Nim?
  393. ___________________________________________________________
  394. .. raw::html
  395. <a href="../assets/news/images/survey/learning_resources.png">
  396. <img src="../assets/news/images/survey/learning_resources.png" alt="learning resources" style="width:100%"/>
  397. </a>
  398. The idea behind this question was to understand which learning resources
  399. were most popular among our user base. The
  400. `Nim tutorial <http://nim-lang.org/docs/tut1.html>`_ is by far the most
  401. popular. In previous questions, we saw respondents mentioning that the Nim
  402. tutorial does not go into enough detail about Nim. Thanks to this information
  403. we can come to the conclusion that the tutorial needs to be improved
  404. significantly to make sure that it gives our users the necessary information
  405. to use Nim effectively.
  406. Indeed, many users also use the
  407. `Nim manual <http://nim-lang.org/docs/manual.html>`_ to learn Nim.
  408. This manual has been
  409. written as a specification and so is not ideal for teaching Nim. Many of
  410. the concepts in the Nim manual need to be explained in a lot more detail in
  411. the Nim tutorial.
  412. Of course, it's exciting to see our respondents using other materials to learn
  413. Nim. In particular I am excited to see that over 15% of the respondents have
  414. used
  415. `Nim in Action <https://manning.com/books/nim-in-action?a_aid=niminaction&a_bid=78a27e81>`_
  416. to learn Nim. I expect that more and more users will pick up the book after it
  417. is fully published.
  418. Nim in Action
  419. _____________
  420. As the author of
  421. `Nim in Action <https://manning.com/books/nim-in-action?a_aid=niminaction&a_bid=78a27e81>`_,
  422. I wanted to get some statistics surrounding
  423. my book. With this in mind, I have created some questions relating to it.
  424. Have you read Nim in Action?
  425. ____________________________
  426. .. raw::html
  427. <a href="../assets/news/images/survey/book.png">
  428. <img src="../assets/news/images/survey/book.png" alt="Have you read Nim in Action?" style="width:100%"/>
  429. </a>
  430. It's good to see that over 50% of respondents have read the book or are at least
  431. planning to read it. Keep in mind that this question was answered by all
  432. respondents, not just Nim users.
  433. .. container:: standout
  434. Are you interested in purchasing a copy of
  435. `Nim in Action <https://manning.com/books/nim-in-action?a_aid=niminaction&a_bid=78a27e81>`_?
  436. If so, you can use code ``wm090416lt`` to get 50% off the printed book today only!
  437. If you purchase it now you will get access to an early access copy of
  438. Nim in Action in eBook form and will be able to take part in the development
  439. of this book.
  440. Did you enjoy Nim in Action?
  441. ____________________________
  442. .. raw::html
  443. <a href="../assets/news/images/survey/book_opinion.png">
  444. <img src="../assets/news/images/survey/book_opinion.png" alt="Did you enjoy Nim in Action?" style="width:100%"/>
  445. </a>
  446. Of the people that read Nim in Action it's nice to see that almost 70% have
  447. enjoyed it.
  448. Nim's future
  449. ~~~~~~~~~~~~
  450. What improvements are needed before Nim v1.0 can be released?
  451. _____________________________________________________________
  452. We were interested to know what our users believe is needed before
  453. Nim version 1.0 can be released.
  454. .. raw::html
  455. <a href="../assets/news/images/survey/10_needs.png">
  456. <img src="../assets/news/images/survey/10_needs.png" alt="What is needed before 1.0 can be released?" style="width:100%"/>
  457. </a>
  458. It appears that the standard library is the biggest concern. With more than half
  459. of all respondents selecting "The standard library needs to reviewed and
  460. any problems with it fixed". This is in fact something we are already planning
  461. to address, so it's good to see that the majority agrees with us.
  462. A large proportion of users also believes that the language is great as-is
  463. and that we should focus on stabilising the compiler. This somewhat contradicts
  464. the majority. But perhaps most of them thought that "The language" excludes the
  465. standard library.
  466. For this question, we decided to give our respondents a dedicated place to
  467. give general feedback about what they feel is needed before v1.0 can be
  468. released. We received over 200 responses to that. Many of these responses
  469. reflect what we have already seen: that the documentation needs to improve,
  470. that we need a good Nim IDE, stability for experimental features such as
  471. concepts, the standard library needs to be cleaned up.
  472. Unfortunately many respondents used this question to say what needs to be fixed
  473. in Nim in general, not what is definitely necessary before 1.0 can be released.
  474. Community demographics
  475. ~~~~~~~~~~~~~~~~~~~~~~
  476. What domain do you work in currently?
  477. _____________________________________
  478. .. raw::html
  479. <a href="../assets/news/images/survey/domains.png">
  480. <img src="../assets/news/images/survey/domains.png" alt="Work domains" style="width:100%"/>
  481. </a>
  482. Nim users are working in a wide variety of domains. It is encouraging to see
  483. people from so many different backgrounds taking part in this survey.
  484. What programming languages are you most comfortable with?
  485. _________________________________________________________
  486. .. raw::html
  487. <a href="../assets/news/images/survey/languages.png">
  488. <img src="../assets/news/images/survey/languages.png" alt="Programming languages" style="width:100%"/>
  489. </a>
  490. Python and C are the top two programming languages that our respondents are
  491. most comfortable with. This is not altogether surprising.
  492. Last words
  493. ~~~~~~~~~~
  494. At the end of the survey we gave our respondents a chance to speak their mind
  495. about anything they wish, with a simple question: "Anything else you'd like
  496. to tell us?"
  497. There was a lot of great feedback given in this question from people who
  498. obviously really care deeply about Nim. There is too much to outline here,
  499. but rest assurred that we will take it all into account and do our best to
  500. act on it.
  501. In addition to feedback, we were also overwhelmed by the amount of positive
  502. comments in the answers to this
  503. question. There was a lot of support from the community thanking us for our
  504. work and determination.
  505. I'll let some quotes speak for themselves:
  506. .. raw::html
  507. <blockquote>You rock, seriously.</blockquote>
  508. <blockquote>Nim rocks! Keep it up! Thank you very much!</blockquote>
  509. <blockquote>You've made great progress on the language without any corporate backing, that is amazing. I wish Nim becomes one of the top used languages in a few years.</blockquote>
  510. <blockquote>Nim is elegant and wonderful! Keep at it!</blockquote>
  511. Our community is truly brilliant. We thank each and every one of you for
  512. filling out this survey and hope that you will help us tackle some of the
  513. challenges that face Nim.
  514. This survey was a good place to give us feedback, but please don't wait for
  515. the next one. We are always looking to hear more from you and we hope that you
  516. will participate in discussions relating to this survey as well the future
  517. of Nim.
  518. Thanks for reading, and have a good day!