Recently, the Nikola team asked the community about the Python versions used to run Nikola. We received a total of 138 responses. The survey results are as follows:
Most users already are on Python 3
Two thirds (66%) of Nikola users are already on Python 3. Some users run both versions concurrently (for example, on different operating systems)
#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .title{font-family:"monospace";font-size:16px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .legends .legend text{font-family:"monospace";font-size:14px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis text{font-family:"monospace";font-size:10px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis text.major{font-family:"monospace";font-size:10px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .series text{font-family:"monospace";font-size:8px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .tooltip text{font-family:"monospace";font-size:16px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf text.no_data{font-size:64px} #chart-95668c69-5fb8-43a6-9c72-695927f32bbf{background-color:#f0f0f0}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf path,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf rect,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf circle{-webkit-transition:250ms ease-in;-moz-transition:250ms ease-in;transition:250ms ease-in}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .graph > .background{fill:#f0f0f0}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .plot > .background{fill:#f8f8f8}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .graph{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf text.no_data{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .title{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .legends .legend text{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .legends .legend:hover text{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis .line{stroke:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis .guide.line{stroke:rgba(0,0,0,0.6)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis .major.line{stroke:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis text.major{stroke:rgba(0,0,0,0.9);fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.y .guides:hover .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .line-graph .axis.x .guides:hover .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .stackedline-graph .axis.x .guides:hover .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .xy-graph .axis.x .guides:hover .guide.line{stroke:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis .guides:hover text{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .reactive{fill-opacity:.5}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .reactive.active,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .active .reactive{fill-opacity:.9}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .series{stroke-width:1.0;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:0,0}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .series text{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .tooltip rect{fill:#f8f8f8;stroke:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .tooltip text{fill:rgba(0,0,0,0.9)}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .map-element{fill:rgba(0,0,0,0.9);stroke:rgba(0,0,0,0.6) !important;opacity:.9;stroke-width:3;-webkit-transition:250ms;-moz-transition:250ms;-o-transition:250ms;transition:250ms}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .map-element:hover{opacity:1;stroke-width:10}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-0,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-0 a:visited{stroke:#00b2f0;fill:#00b2f0}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-1,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-1 a:visited{stroke:#43d9be;fill:#43d9be}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-2,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-2 a:visited{stroke:#0662ab;fill:#0662ab}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-3,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-3 a:visited{stroke:#00668a;fill:#00668a}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-4,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-4 a:visited{stroke:#98eadb;fill:#98eadb}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-5,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-5 a:visited{stroke:#97d959;fill:#97d959}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-6,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-6 a:visited{stroke:#033861;fill:#033861}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-7,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-7 a:visited{stroke:#ffd541;fill:#ffd541}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-8,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-8 a:visited{stroke:#7dcf30;fill:#7dcf30}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-9,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-9 a:visited{stroke:#3ecdff;fill:#3ecdff}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-10,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-10 a:visited{stroke:#daaa00;fill:#daaa00}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-11,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-11 a:visited{stroke:#00b2f0;fill:#00b2f0}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-12,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-12 a:visited{stroke:#43d9be;fill:#43d9be}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-13,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-13 a:visited{stroke:#0662ab;fill:#0662ab}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-14,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-14 a:visited{stroke:#00668a;fill:#00668a}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-15,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .color-15 a:visited{stroke:#98eadb;fill:#98eadb} #chart-95668c69-5fb8-43a6-9c72-695927f32bbf text.no_data{text-anchor:middle}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .guide.line{fill-opacity:0}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .centered{text-anchor:middle}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .title{text-anchor:middle}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .legends .legend text{fill-opacity:1}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.x text{text-anchor:middle}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.x:not(.web) text[transform]{text-anchor:start}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.y text{text-anchor:end}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.y2 text{text-anchor:start}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.y .logarithmic text:not(.major),#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.y2 .logarithmic text:not(.major){font-size:50%}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis .guide.line{stroke-dasharray:4,4}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis .major.guide.line{stroke-dasharray:6,6}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis text.major{stroke-width:0.5px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .horizontal .axis.y .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .horizontal .axis.y2 .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .vertical .axis.x .guide.line{opacity:0}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .horizontal .axis.always_show .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .vertical .axis.always_show .guide.line{opacity:1 !important}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.y .guides:hover .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.y2 .guides:hover .guide.line,#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis.x .guides:hover .guide.line{opacity:1}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .axis .guides:hover text{opacity:1}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .nofill{fill:none}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .subtle-fill{fill-opacity:.2}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .dot{stroke-width:1px;fill-opacity:1}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .dot.active{stroke-width:5px}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .series text{stroke:none}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .series text.active{opacity:1}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .tooltip rect{fill-opacity:0.8}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .tooltip text{fill-opacity:1}#chart-95668c69-5fb8-43a6-9c72-695927f32bbf .tooltip text tspan.label{fill-opacity:.8}Python 2 and 3 users33.33%414.2529522647003206.9249999999999852.90%240.91185929789873365.1589326452046313.77%259.8359410719378157.91524364838745Python 2 and 3 usersPython 2 onlyPython 3 onlyPython 2 and 3A diverse selection of operating systems
The most popular operating system is Ubuntu (with 54 users), followed by Debian and Mac OS X (37 users each). There were also 27 Windows users taking part in the survey. This was a multiple–choice question — there were 211 data points in total)
There are multiple operating system versions listed in the second (optional) question about operating systems, ranging from Debian 6 squeeze (oldstable) to the newest versions
#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .title{font-family:"monospace";font-size:16px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .legends .legend text{font-family:"monospace";font-size:14px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis text{font-family:"monospace";font-size:10px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis text.major{font-family:"monospace";font-size:10px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .series text{font-family:"monospace";font-size:8px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .tooltip text{font-family:"monospace";font-size:16px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 text.no_data{font-size:64px} #chart-62a04e69-0307-413b-9d4f-e544dac8cff3{background-color:#f0f0f0}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 path,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 rect,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 circle{-webkit-transition:250ms ease-in;-moz-transition:250ms ease-in;transition:250ms ease-in}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .graph > .background{fill:#f0f0f0}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .plot > .background{fill:#f8f8f8}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .graph{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 text.no_data{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .title{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .legends .legend text{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .legends .legend:hover text{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis .line{stroke:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis .guide.line{stroke:rgba(0,0,0,0.6)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis .major.line{stroke:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis text.major{stroke:rgba(0,0,0,0.9);fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.y .guides:hover .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .line-graph .axis.x .guides:hover .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .stackedline-graph .axis.x .guides:hover .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .xy-graph .axis.x .guides:hover .guide.line{stroke:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis .guides:hover text{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .reactive{fill-opacity:.5}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .reactive.active,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .active .reactive{fill-opacity:.9}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .series{stroke-width:1.0;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:0,0}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .series text{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .tooltip rect{fill:#f8f8f8;stroke:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .tooltip text{fill:rgba(0,0,0,0.9)}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .map-element{fill:rgba(0,0,0,0.9);stroke:rgba(0,0,0,0.6) !important;opacity:.9;stroke-width:3;-webkit-transition:250ms;-moz-transition:250ms;-o-transition:250ms;transition:250ms}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .map-element:hover{opacity:1;stroke-width:10}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-0,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-0 a:visited{stroke:#00b2f0;fill:#00b2f0}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-1,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-1 a:visited{stroke:#43d9be;fill:#43d9be}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-2,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-2 a:visited{stroke:#0662ab;fill:#0662ab}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-3,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-3 a:visited{stroke:#00668a;fill:#00668a}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-4,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-4 a:visited{stroke:#98eadb;fill:#98eadb}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-5,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-5 a:visited{stroke:#97d959;fill:#97d959}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-6,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-6 a:visited{stroke:#033861;fill:#033861}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-7,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-7 a:visited{stroke:#ffd541;fill:#ffd541}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-8,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-8 a:visited{stroke:#7dcf30;fill:#7dcf30}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-9,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-9 a:visited{stroke:#3ecdff;fill:#3ecdff}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-10,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-10 a:visited{stroke:#daaa00;fill:#daaa00}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-11,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-11 a:visited{stroke:#00b2f0;fill:#00b2f0}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-12,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-12 a:visited{stroke:#43d9be;fill:#43d9be}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-13,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-13 a:visited{stroke:#0662ab;fill:#0662ab}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-14,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-14 a:visited{stroke:#00668a;fill:#00668a}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-15,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .color-15 a:visited{stroke:#98eadb;fill:#98eadb} #chart-62a04e69-0307-413b-9d4f-e544dac8cff3 text.no_data{text-anchor:middle}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .guide.line{fill-opacity:0}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .centered{text-anchor:middle}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .title{text-anchor:middle}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .legends .legend text{fill-opacity:1}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.x text{text-anchor:middle}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.x:not(.web) text[transform]{text-anchor:start}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.y text{text-anchor:end}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.y2 text{text-anchor:start}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.y .logarithmic text:not(.major),#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.y2 .logarithmic text:not(.major){font-size:50%}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis .guide.line{stroke-dasharray:4,4}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis .major.guide.line{stroke-dasharray:6,6}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis text.major{stroke-width:0.5px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .horizontal .axis.y .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .horizontal .axis.y2 .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .vertical .axis.x .guide.line{opacity:0}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .horizontal .axis.always_show .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .vertical .axis.always_show .guide.line{opacity:1 !important}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.y .guides:hover .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.y2 .guides:hover .guide.line,#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis.x .guides:hover .guide.line{opacity:1}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .axis .guides:hover text{opacity:1}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .nofill{fill:none}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .subtle-fill{fill-opacity:.2}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .dot{stroke-width:1px;fill-opacity:1}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .dot.active{stroke-width:5px}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .series text{stroke:none}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .series text.active{opacity:1}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .tooltip rect{fill-opacity:0.8}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .tooltip text{fill-opacity:1}#chart-62a04e69-0307-413b-9d4f-e544dac8cff3 .tooltip text tspan.label{fill-opacity:.8}Operating systems used by survey participants0.010.020.030.040.050.05466.72435897435896267.0000000000000637108.6653846153846347.8226495726496537150.60641025641021347.8226495726496527192.54743589743583395.3653846153846420234.48846153846148428.64529914529929276.4294871794872480.942307692307748318.3705128205128485.696581196581237360.3115384615384490.450854700854733402.25256410256407509.467948717948733444.1935897435897509.467948717948732486.13461538461536514.22222222222234528.075641025641504.71367521367523Operating systems used by survey participantsUbuntuDebianMac OS XWindowsArch LinuxBSDLinux MintFedoraRedHat/CentOSopenSUSEGentooOtherSwitching is not a problem for the community
Out of all the participants, only 10 (7.25%) said that they would not install a Python 3 interpreter, even if Nikola were to require one. More than 76% of our users have a Python 3 interpreter installed already.
#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .title{font-family:"monospace";font-size:16px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .legends .legend text{font-family:"monospace";font-size:14px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis text{font-family:"monospace";font-size:10px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis text.major{font-family:"monospace";font-size:10px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .series text{font-family:"monospace";font-size:8px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .tooltip text{font-family:"monospace";font-size:16px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e text.no_data{font-size:64px} #chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e{background-color:#f0f0f0}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e path,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e rect,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e circle{-webkit-transition:250ms ease-in;-moz-transition:250ms ease-in;transition:250ms ease-in}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .graph > .background{fill:#f0f0f0}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .plot > .background{fill:#f8f8f8}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .graph{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e text.no_data{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .title{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .legends .legend text{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .legends .legend:hover text{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis .line{stroke:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis .guide.line{stroke:rgba(0,0,0,0.6)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis .major.line{stroke:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis text.major{stroke:rgba(0,0,0,0.9);fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.y .guides:hover .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .line-graph .axis.x .guides:hover .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .stackedline-graph .axis.x .guides:hover .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .xy-graph .axis.x .guides:hover .guide.line{stroke:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis .guides:hover text{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .reactive{fill-opacity:.5}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .reactive.active,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .active .reactive{fill-opacity:.9}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .series{stroke-width:1.0;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:0,0}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .series text{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .tooltip rect{fill:#f8f8f8;stroke:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .tooltip text{fill:rgba(0,0,0,0.9)}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .map-element{fill:rgba(0,0,0,0.9);stroke:rgba(0,0,0,0.6) !important;opacity:.9;stroke-width:3;-webkit-transition:250ms;-moz-transition:250ms;-o-transition:250ms;transition:250ms}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .map-element:hover{opacity:1;stroke-width:10}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-0,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-0 a:visited{stroke:#00b2f0;fill:#00b2f0}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-1,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-1 a:visited{stroke:#43d9be;fill:#43d9be}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-2,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-2 a:visited{stroke:#0662ab;fill:#0662ab}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-3,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-3 a:visited{stroke:#00668a;fill:#00668a}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-4,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-4 a:visited{stroke:#98eadb;fill:#98eadb}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-5,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-5 a:visited{stroke:#97d959;fill:#97d959}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-6,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-6 a:visited{stroke:#033861;fill:#033861}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-7,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-7 a:visited{stroke:#ffd541;fill:#ffd541}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-8,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-8 a:visited{stroke:#7dcf30;fill:#7dcf30}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-9,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-9 a:visited{stroke:#3ecdff;fill:#3ecdff}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-10,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-10 a:visited{stroke:#daaa00;fill:#daaa00}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-11,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-11 a:visited{stroke:#00b2f0;fill:#00b2f0}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-12,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-12 a:visited{stroke:#43d9be;fill:#43d9be}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-13,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-13 a:visited{stroke:#0662ab;fill:#0662ab}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-14,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-14 a:visited{stroke:#00668a;fill:#00668a}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-15,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .color-15 a:visited{stroke:#98eadb;fill:#98eadb} #chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e text.no_data{text-anchor:middle}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .guide.line{fill-opacity:0}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .centered{text-anchor:middle}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .title{text-anchor:middle}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .legends .legend text{fill-opacity:1}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.x text{text-anchor:middle}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.x:not(.web) text[transform]{text-anchor:start}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.y text{text-anchor:end}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.y2 text{text-anchor:start}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.y .logarithmic text:not(.major),#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.y2 .logarithmic text:not(.major){font-size:50%}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis .guide.line{stroke-dasharray:4,4}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis .major.guide.line{stroke-dasharray:6,6}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis text.major{stroke-width:0.5px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .horizontal .axis.y .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .horizontal .axis.y2 .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .vertical .axis.x .guide.line{opacity:0}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .horizontal .axis.always_show .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .vertical .axis.always_show .guide.line{opacity:1 !important}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.y .guides:hover .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.y2 .guides:hover .guide.line,#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis.x .guides:hover .guide.line{opacity:1}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .axis .guides:hover text{opacity:1}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .nofill{fill:none}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .subtle-fill{fill-opacity:.2}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .dot{stroke-width:1px;fill-opacity:1}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .dot.active{stroke-width:5px}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .series text{stroke:none}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .series text.active{opacity:1}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .tooltip rect{fill-opacity:0.8}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .tooltip text{fill-opacity:1}#chart-ffbd028e-2529-46ac-ad7c-f2d651c98d7e .tooltip text tspan.label{fill-opacity:.8}Python 3 interpreter usage76.81%385.9886753816475356.653969854599415.94%207.84106735479537197.711859297898747.25%278.8833009245565149.9499802167815Python 3 interpreter usageHave a Python …Have a Python 3 interpreterCan install Py…Can install Python 3 if requiredRefuse to inst…Refuse to install Python 3Comments, concerns and suggestions
After answering the four survey questions, users could leave comments. Many of them were positive and commended the decision. Some participants even claimed that they do not like Python 2.x and it might even deter them from contributing. Many participants asked us to kill 2.7 and to go forward with Python 3.
There were, however, a few participants that had concerns about our decision. A few users cited the inability to migrate due to having existing Python 2-only software. For most people, this is not a problem — Python 2 and 3 can coexist on one machine, with separate packages and binaries. Those users would be just use Nikola with Python 3.x, and their legacy software with 2.7 — and it would work without any problems. The only people who could have a problem are those using 2.7–only code in plugins.
Some users also suggested bundling an interpreter with Nikola (this is done by eg. Dropbox). We believe that this is not a good thing to do. Bundling an interpreter is a lot of work, and Dropbox does this because they want to protect their code (not applicable in an open–source project) and because they have a large non-technical user base (who is scared by black terminal windows used by h4x0rz). However, there is a partial solution: if you prefer, you can use a Docker image that runs Nikola under Arch Linux, created by Rob Brewer (and which has been blessed by the Nikola team).
Yet another suggestion was to make Nikola available via Homebrew or MacPorts. While there is no package for Nikola available in those repositories, our Getting Started Guide recommends using Homebrew, MacPorts or Fink with virtualenv and pip on OS X, by providing install instructions for those three repositories (using Python 3). If you want a package for one of those systems, you can always contribute your own (if this is possible in those communities) — the Nikola community will be happy to use it.
There were also concerns about the ARM architecture. We have had reports of users running Nikola on ARM–based devices (including one survey participant) — just keep in mind that it is really slow on SD cards (which is the main storage device of Raspberry Pi).
The future of Python 2.7 in Nikola
Taking the results of this survey into consideration, the Nikola developers decided that Python 2.7 support will be dropped in Nikola v8.0.0. This version will be released in early 2016. Before that date, we will migrate all our remaining infrastructure to Python 3.x. The next version of Nikola, v7.7.2, will be released on 2015-10-03 and will display a warning if the user is running Python 2.7. We might keep the compatibility hacks after v8.0.0, but we will not officially support using Python 2.7 with Nikola.
Switching to Python 3.x
If you are running Nikola with Python 2.7, you should switch to Python 3.x soon. Doing so is simple and is a one–time process. You should follow the Getting Started Guide for more information, or read the instructions below:
Windows
- Install Python 3.5 from the official website (python.org)
- Install virtualenv using py -m pip install virtualenv
- Create a virtualenv and activate it (for more information, read virtualenv documentation)
- Install lxml and Pillow wheels from Christoph Gohlke’s website (using pip install c:\paths\to\the\two\files.whl)
- Install Nikola using pip install "Nikola[extras]"
Mac OS X
Follow the “Installing on OS X” section of the Getting Started Guide to install Nikola and Python from Homebrew, MacPorts or Fink.
Linux
To install Nikola using Python 3.x on Linux, you should first identify your installation method.
If you use a distribution package (eg. python-nikola from Arch Linux’s AUR, or Fedora’s packages), you should look for the Python 3 version of those packages. If those are not available, you should install Nikola manually and report a bug with your distribution.
If you installed Nikola manually, we recommend creating a virtualenv for it. Please follow the instructions in the Getting Started Guide (you might need to see the troubleshooting hints and adjust them for your OS/Python 3 package name)
(Note that Nikola requires Python 3.3 or newer; if you are running a really old distribution, it might not be available.)
Migrating a site
You can use your existing Nikola site with Python 3, without any special modifications to the code. However, you will likely receive this error when you run nikola build for the first time:
doit.dependency.DatabaseException: Dependencies file in '.doit.db' seems to use an old format or is corrupted. To fix the issue you can just remove the database file(s) and a new one will be generated.
In case you do, you can just remove the mentioned .doit.db file and run nikola build again. Note that this will lead to rebuilding your site from scratch — but this is a one–time process, and the next rebuild should be an incremental one.
PS. you can also see the results on the Google Forms results summary page. If you want to do your own data analysis, we can share the raw data (.csv) — contact me (Chris Warrick) if you would like to get access. The charts in this post were generated courtesy of pygal, using the :chart: directive, which is built into Nikola.