, and we wanted to see how accepted v1.0 is in our community. We have also asked our respondents about how well the Nim tools worked, the challenges of adopting Nim, the resources that they used to learn Nim and more.
Do you use Nim?
Based on the answer to this question, the respondents were divided in two groups and they’ve received separate set of questions.
Approximately 2/3 of the respondents use Nim (
About a half ( %) respondents are new Nim users – they’ve started using Nim in the last 6 months. We have 45% of experienced users (between 6 months and 2 years), and 23% of Nim veterans (more than 2 years of Nim experience). An average Nim user would be a software developer from Europe. Besides Europe, our users mostly come from North America, Asia, and South America, with a couple of users from Australia and Africa. Three quarter of our users are either software developers, students or scientists. We have users from all age groups and with programming experience varying between 1 and years, proving that Nim can be used both by beginners and the experienced programmers. Things that people like about Nim the most are: performance / speed ( (%), ease of use ( (%), syntax (% ), self-contained binaries ( (%), open source code ( (%), macros and meta-programming ( (%). [non-nilable types] The most used editor, expectedly, is VS Code, which is used by % of Nim users. In the second place is Vim / Neovim, followed by Emacs and Sublime Text. (Note that this is a multiple answer question, and some respondends use more than one editor) Nim versions With version 1.0 released only three months before this survey, we were afraid that we might not get the realistic picture about what Nim version is used the most, because people might have not yet caught up with the latest version. [non-nilable types] In the end it seems we didn’t have to worry: the large majority of users are using the latest stable version (1.0. x). There are people who use multiple Nim version, but at least one of them is either 1.0.x or the latest devel version. We can partially attribute this to the mostly painless upgrade process:
Nim is mostly used for writing command-line programs and automation / scripts, followed by data processing, libraries, web services, and GUI . Also, some people use it for game development. (Unfortunately, it wasn’t offered as a choice in the survey, people wrote it down in the ‘other’ field) The large majority of Nim users are targeting Linux, followed by Windows and macOS. Most frequent “smaller” targets are JavaScript, Android, web assembly, embedded, and iOS.
About 1/3 of Nim users use it at work, either exclusively (6.6%) or from time to time (. 1%). Of people who don’t use Nim at work, 1/3 can’t use it because their company does not allow it . Of the remaining 2/3 people who are allowed to use Nim at work, the large majority plan to use it in .
People mention stability, better tooling, more 3rd party libraries, having to mature, and better documentation as the main fields where Nim has to improve to be more accepted in their companies. Learning Nim
People find Nim easy to learn, with only 3% of respondents feeling that learning Nim is hard or very hard. Almost all of them have read the official tutorials, about half of them have read “Nim by Example” and / or “Nim in Action” book. Rosetta code examples are also a popular choice as a learning resource, followed by “Nim Basics”, “Nim Notes”, and “Nim Days”. If anyone would like to create some more learning materials for Nim (which is very high on the community priority list, see below under “ Nim in and beyond ”section), the most wanted fields are code examples and written tutorials. Nim community and contributions There is an equal amount of people who are regular contributors (they contributed in the past and will continue to do so in the future) and people who have no plans of contribute. The most interesting stat is that, compared to the current contributors, there are three times more people who haven’t contributed to Nim so far but plan to do that in the future. We’re looking forward to this:)The most frequent reasons given for not contributing (yet) are: lack of time and lack of skill / experience. We’ve asked you how satisfied you are with the Nim tooling:
/ 40 .png “>
fixing compiler bugs: According to the votes, this should be our first priority; 75% find it very important, with only 24% of votes for ok or low priority. more learning materials and documentation improvements: though in 01575879 we improved the documentation of the most used standard library modules, the users not only think there is room for more improvement, but they also think that this should be one of our topident. Similar results are seen for learning materials, where we mostly lean on the community content – for this to improve we need your involvement – people want to see more written tutorials and code examples.
fixing standard library bugs and larger standard library: Fixing bugs in the existing standard library modules is a higher priority than expanding the standard library. (New features)
When it comes to the proposed new features, it is expected to see less enthusiasm than for improving the existing situation (fixing bugs, improving documentation) as most people, except a few regulars on our community channels, are not properly informed about them and / or they might not know that they could also benefit from them.
/ 31 .png “> which, in our opinion, should make Nim both faster and more memory efficient, and as such it might become “one memory management to rule them all”. But at the time the survey was created, the work on it has just started and the benefits of it were unknown to the most of our users.
(last words) Thank you to each and every one of you who took the time to answer this survey. Your time is precious and we are deeply thankful that you used it to share your feedback. Please remember that you do not need to wait for a survey in order to give us feedback, of course you’re more than welcome to wait if you wish, but ideally share your feedback with us immediately. We can be found in various different places, see (the community page) for links and instructions on how to get in touch.
GIPHY App Key not set. Please check settings