Added survey results news article (WIP).
BIN
web/assets/news/images/survey/dev_os.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
BIN
web/assets/news/images/survey/do_you_use_nim.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
web/assets/news/images/survey/editors.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
web/assets/news/images/survey/nim_at_work.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
web/assets/news/images/survey/nim_found.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
BIN
web/assets/news/images/survey/nim_time.png
Normal file
|
After Width: | Height: | Size: 99 KiB |
BIN
web/assets/news/images/survey/nim_time_rust.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
web/assets/news/images/survey/nim_versions.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
web/assets/news/images/survey/planning_to_use_at_work.png
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
web/assets/news/images/survey/project_size.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
web/assets/news/images/survey/project_size_nim_rust.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
web/assets/news/images/survey/project_size_work.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
web/assets/news/images/survey/reliability.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
web/assets/news/images/survey/target_os.png
Normal file
|
After Width: | Height: | Size: 70 KiB |
BIN
web/assets/news/images/survey/upgrades_broke_things.png
Normal file
|
After Width: | Height: | Size: 70 KiB |
317
web/news/nim_community_survey_results.rst
Normal file
|
|
@ -0,0 +1,317 @@
|
||||||
|
Nim Community Survey Results
|
||||||
|
============================
|
||||||
|
|
||||||
|
.. container:: metadata
|
||||||
|
|
||||||
|
Posted by Dominik Picheta on 20/08/2016
|
||||||
|
|
||||||
|
We have recently closed the 2016 Nim Community Survey. I am happy to
|
||||||
|
say that we have received exactly 790 responses, huge thanks go to the people
|
||||||
|
that took the time to respond. We're very thankful for this very valuable
|
||||||
|
feedback.
|
||||||
|
|
||||||
|
This survey was inspired in part by the
|
||||||
|
`2016 State of Rust <https://blog.rust-lang.org/2016/06/30/State-of-Rust-Survey-2016.html>`_
|
||||||
|
survey. You will note that many of the questions were modelled after
|
||||||
|
Rust's survey. One of the reasons for doing this was to allow us to easily
|
||||||
|
compare our results against the results obtained in the Rust survey. In
|
||||||
|
addition, we of course also liked many of their questions.
|
||||||
|
|
||||||
|
Our survey ran from the 23rd of June 2016 until the 8th of August 2016. The
|
||||||
|
response numbers are impressive considering Nim's community size; at 790 they
|
||||||
|
make up just over 25% of the Rust survey's responses.
|
||||||
|
|
||||||
|
The goal of this survey was to primarily determine how our community is using
|
||||||
|
Nim, in order to better understand how we should be improving it. In particular,
|
||||||
|
we wanted to know what people feel is missing from Nim in the lead up to
|
||||||
|
version 1.0. 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.
|
||||||
|
|
||||||
|
It is my hope that we will be able to run a similar survey in a years time,
|
||||||
|
doing so should give us an idea of whether we are improving.
|
||||||
|
With these general facts in mind, let's begin looking at specific questions.
|
||||||
|
|
||||||
|
How did you find out about Nim?
|
||||||
|
-------------------------------
|
||||||
|
|
||||||
|
The rationale for the first question was simple, we wanted to know where our
|
||||||
|
respondents found out about Nim. This is an interesting question for us, as
|
||||||
|
we do occassionally get users asking us why it took so long for them to hear
|
||||||
|
about Nim. It allows us to see how effective each website is at spreading the
|
||||||
|
word about Nim.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/nim_found.png">
|
||||||
|
<img src="../assets/news/images/survey/nim_found.png" alt="How did you find out about Nim?" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
The majority of our respondents found Nim via Reddit, HackerNews or a search
|
||||||
|
engine such as Google. These results are not altogether surprising. There were
|
||||||
|
also a lot of "Other" responses, some of which were a bit more
|
||||||
|
interesting. These included multiple mentions of habrahabr.ru, Dr. Dobb's,
|
||||||
|
and lobste.rs.
|
||||||
|
|
||||||
|
Do you use Nim?
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Just like the Rust survey creators, we wanted to ensure that our survey was
|
||||||
|
open to both Nim users as well people who never used Nim. In addition to
|
||||||
|
those two groups, we have also included a third group of people: ex-Nim
|
||||||
|
users. All three are interesting, for many different reasons.
|
||||||
|
Nim users can tell us how they are using Nim and also how Nim's
|
||||||
|
tooling can improve. Ex-Nim users give us an
|
||||||
|
idea of why they stopped using Nim. Finally, respondents who never used Nim
|
||||||
|
can tell us the reasons for not adopting it.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/do_you_use_nim.png">
|
||||||
|
<img src="../assets/news/images/survey/do_you_use_nim.png" alt="Do you use Nim?" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
It's nice to see that we have such a good range of respondents. The Rust survey
|
||||||
|
had a much larger number of Rust users amongst their respondents, with
|
||||||
|
no distinction between users that never used Rust and users that stopped using
|
||||||
|
Rust.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="https://blog.rust-lang.org/images/2016-06-Survey/do_you_use_rust.png">
|
||||||
|
<img src="https://blog.rust-lang.org/images/2016-06-Survey/do_you_use_rust.png" alt="Do you use Rust?" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
Should we consider your answers to be invalid?
|
||||||
|
----------------------------------------------
|
||||||
|
|
||||||
|
This was something I thought would be interesting to have, after I saw it
|
||||||
|
being used in another survey. While it does pinpoint possibly
|
||||||
|
invalid respondents, I have opted against filtering those out. Mainly because
|
||||||
|
that would require re-creating each of the charts generated by Google Forms
|
||||||
|
manually.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/reliability.png">
|
||||||
|
<img src="../assets/news/images/survey/reliability.png" alt="Should we consider your answers to be invalid?" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
According to the responses to this question, around 94% of our responses
|
||||||
|
can be considered reliable.
|
||||||
|
|
||||||
|
Nim users
|
||||||
|
---------
|
||||||
|
|
||||||
|
The following questions were answered only by the 38.9% of our respondents
|
||||||
|
who identified themselves as Nim users.
|
||||||
|
|
||||||
|
How long have you been using Nim?
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/nim_time.png">
|
||||||
|
<img src="../assets/news/images/survey/nim_time.png" alt="How long have you been using Nim?" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
A large proportion of our Nim users were new. This is good news as it means that
|
||||||
|
our community is growing, with a large proportion of new Nim users that could
|
||||||
|
become long-term Nimians. In total, more than 35% of Nim users can be considered
|
||||||
|
new having used Nim for less than 3 months. With 18% of Nim users that can
|
||||||
|
be considered very new having used Nim for less than a month.
|
||||||
|
This could suggest that 18% of our users have only just found out about Nim in
|
||||||
|
the last week or so and have not yet got the chance to use it extensively.
|
||||||
|
|
||||||
|
The high percentages of long term Nim users are encouraging.
|
||||||
|
They suggest
|
||||||
|
that many users are continuing to use Nim after making it through the first
|
||||||
|
few months. The sharp drop at 7-9 months is interesting, but may simply be
|
||||||
|
due to the fact that there were fewer newcomers during that period, or it
|
||||||
|
could be because our respondents are more likely to estimate that they have
|
||||||
|
been using Nim for a year or half a year rather than the awkward 7-9 months.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/nim_time_rust.png">
|
||||||
|
<img src="../assets/news/images/survey/nim_time_rust.png" alt="Time using Nim and Rust" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
The results for Nim and Rust are actually remarkably similar. They both show a
|
||||||
|
drop at 7-9 months, although Rust's isn't as dramatic. Nim on the other hand
|
||||||
|
has a significantly higher percentage of new Nim users.
|
||||||
|
|
||||||
|
Do you use Nim at work?
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
An important aspect of a language's adoption is whether it is being used for
|
||||||
|
"real" work. We wanted to know how many people are using Nim in their day
|
||||||
|
jobs and under what circumstances it is used.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/nim_at_work.png">
|
||||||
|
<img src="../assets/news/images/survey/nim_at_work.png" alt="Do you use Nim at work?" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
While a vast majority of our users are not using Nim at work, more than 25%
|
||||||
|
of them are. It's encouraging to see such a high number already, even before
|
||||||
|
we have released version 1.0. In fact, this percentage is likely close to 30%,
|
||||||
|
because many of the "Other" responses mention using Nim for the likes of
|
||||||
|
internal tools or small scripts to help with the respondent's work.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="https://blog.rust-lang.org/images/2016-06-Survey/rust_at_work.png">
|
||||||
|
<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%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
Interestingly, a larger percentage of Nim users are using Nim at work than
|
||||||
|
Rust users. The sample sizes are of course vastly different, but it's still an
|
||||||
|
interesting result. Combined, nearly 1/5th of Rust users are using Rust
|
||||||
|
commercially whereas more than a quarter of Nim users are using Nim
|
||||||
|
commercially.
|
||||||
|
|
||||||
|
Approximately how large are all the Nim projects that you work on?
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Finding out how large the Nim projects worked on by Nim users are is also
|
||||||
|
very valuable.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/project_size.png">
|
||||||
|
<img src="../assets/news/images/survey/project_size.png" alt="Nim project size for all users" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
This shows us that currently Nim is primarily being used for small scripts and
|
||||||
|
applications, with nearly 60% of the projects consisting of less than 1,000
|
||||||
|
lines of code. This makes sense as many of our users are not using Nim
|
||||||
|
professionally, but are doing so in their spare time.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/project_size_work.png">
|
||||||
|
<img src="../assets/news/images/survey/project_size_work.png" alt="Nim project size for work users" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
The numbers for part-time and full-time work users of Nim tell a different
|
||||||
|
story. Over 70% of the projects written by full-time users are between 10,001
|
||||||
|
and 100,000 lines of code. Part-time users show a slightly different trend,
|
||||||
|
with many more small projects, the majority being between 1,000 and
|
||||||
|
10,000 lines of code.
|
||||||
|
|
||||||
|
Overall it's good to see that there is a few large projects out there which are
|
||||||
|
composed of more than 100,000 lines of code. We expect to see the amount of
|
||||||
|
large projects to grow with time, especially with version 1.0 on the way.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/project_size_nim_rust.png">
|
||||||
|
<img src="../assets/news/images/survey/project_size_nim_rust.png" alt="Nim project size for work users (Nim vs. Rust)" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
In comparison to Rust the proportion of project sizes for full-time users is
|
||||||
|
vastly different. This is likely due to our small sample size. Project sizes for
|
||||||
|
part-time users between Rust and Nim are somewhat similar, with differences of
|
||||||
|
around 10% for each project size.
|
||||||
|
|
||||||
|
Do you plan to try to use Nim at work?
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/planning_to_use_at_work.png">
|
||||||
|
<img src="../assets/news/images/survey/planning_to_use_at_work.png" alt="Planning to use Nim at work?" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
It's also encouraging to see that over 50% of Nim users are planning to use
|
||||||
|
Nim at work! This is slightly more than Rust's 40% and should help Nim's
|
||||||
|
adoption into even more areas.
|
||||||
|
|
||||||
|
Nim and its tools
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
In this section of the survey, we wanted to find out the tools that Nim
|
||||||
|
users are utilising when developing Nim applications.
|
||||||
|
|
||||||
|
What editor(s) do you use when writing Nim?
|
||||||
|
___________________________________________
|
||||||
|
|
||||||
|
Programmers are very specific when it comes to their editor of choice, because
|
||||||
|
of that it's good to know which editor is most popular among our community.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/editors.png">
|
||||||
|
<img src="../assets/news/images/survey/editors.png" alt="Editors used by Nim users" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
Looks like Vim is the winner with almost 30%. Followed by Sublime Text and
|
||||||
|
Visual Studio Code. Aporia, the Nim IDE, gets a respectable 15.5%. There was
|
||||||
|
also more than
|
||||||
|
17% of answers which included "Other" editors, such as: Notepad++, Geany, gedit,
|
||||||
|
and Kate.
|
||||||
|
|
||||||
|
What operating system(s) do you compile for and run your Nim projects on?
|
||||||
|
_________________________________________________________________________
|
||||||
|
|
||||||
|
This question gave us information about the most popular target operating
|
||||||
|
systems, as well as some of the more obscure ones. We have asked this question
|
||||||
|
to find out the platforms on which Nim applications run on most frequently.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/target_os.png">
|
||||||
|
<img src="../assets/news/images/survey/target_os.png" alt="Target operating systems" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
This question allowed multiple choices, so each percentage is out of the total
|
||||||
|
number of respondents for this question. For example, 80.7% of the
|
||||||
|
respondents selected "Linux" but only 26.6% selected OS X.
|
||||||
|
|
||||||
|
This makes Linux by far the most popular target for Nim applications.
|
||||||
|
Some "Other" targets included: BSD (OpenBSD, FreeBSD), iOS, Android, and
|
||||||
|
JavaScript.
|
||||||
|
It's great to see Nim being used on such a wide variety of platforms.
|
||||||
|
|
||||||
|
What operating system(s) do you develop Nim projects on?
|
||||||
|
________________________________________________________
|
||||||
|
|
||||||
|
With this question, we wanted to know what operating systems are used for
|
||||||
|
development.
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/dev_os.png">
|
||||||
|
<img src="../assets/news/images/survey/dev_os.png" alt="Development operating systems" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
This question also allowed multiple choices and ended up with very similar
|
||||||
|
results.
|
||||||
|
|
||||||
|
You can see that Linux is also the most popular developmental
|
||||||
|
platform for Nim. But it's more popular as a target platform.
|
||||||
|
|
||||||
|
Which version(s) of Nim do you use for your applications?
|
||||||
|
_________________________________________________________
|
||||||
|
|
||||||
|
.. raw::html
|
||||||
|
|
||||||
|
<a href="../assets/news/images/survey/nim_versions.png">
|
||||||
|
<img src="../assets/news/images/survey/nim_versions.png" alt="Version use" style="width:100%"/>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
At the time of this survey, version 0.14.2 was the latest stable release.
|
||||||
|
It's no wonder that it is the most commonly used release of Nim. It's good to
|
||||||
|
see that the older versions are not used as often. The high use of ``Git HEAD (devel)``
|
||||||
|
(nightly builds) isn't surprising, Nim is still evolving rapidly and our
|
||||||
|
release schedule is not regular or frequent.
|
||||||
|
|
||||||
|
Once we go past the 1.0 release, we expect to see much less use of the unstable
|
||||||
|
``devel`` branch.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||