Around 570 people answered the survey, which is a great number I didn’t expect. Thanks again to Massimo for his help on this.
I have a lot of work to read all the open question answers, and all the comments that goes with the “other” answer, but I wanted to publish the results of the closed questions before the summit.
I don’t want to comment the results yet. I will after I have studied all answers, so it’ll be a little while 😉
Who are you ?
Professional developer using Python exclusively. |
|
283 |
Professional developer using Python unable to use Python “at work”. |
|
34 |
Professional developer using Python sometimes. |
|
196 |
Hobbyist using Python. |
|
116 |
Where are you located ?
USA |
|
212 |
Western Europe |
|
268 |
Eastern Europe |
|
42 |
Asia |
|
18 |
Africa |
|
9 |
Other |
|
70 |
If you are a web programmer, what is the framework you use the most ?
Pylons |
|
55 |
TG 2 |
|
14 |
TG 1 |
|
15 |
Django |
|
184 |
Zope (including Plone) |
|
137 |
Other |
|
207 |
How do you organize your application code most of the time ?
I put everything in one package |
|
171 |
I create several packages and use a tool like zc.buildout or Paver to distribute the whole application |
|
137 |
I create several packages and use a main package or script to launch the application |
|
198 |
I use my own mechanism for aggregating packages into a single install. |
|
67 |
For libraries you don’t distribute publicly, do you you create a setup.py script ?
What is the main tool or combination of tools you are using to package and distribute your Python application ?
None |
|
80 |
setuptools |
|
150 |
distutils |
|
127 |
zc.buildout and distutils |
|
10 |
zc.buildout and setuptools |
|
107 |
Paver and setuptools |
|
9 |
Paver and Distutils |
|
3 |
Other |
|
64 |
How do you install a package that does not provide a standalone installer (but provides a standard setup.py script) most of the time ?
I use easy_install |
|
241 |
I download it and manually run the python setup.py install command |
|
139 |
I use pip |
|
34 |
I move files around and create symlinks manually. |
|
7 |
I use the packaging tool provided in my system (apt, yum, etc) |
|
81 |
Other |
|
33 |
How do you remove a package ?
manually, by removing the directory and fixing the .pth files |
|
275 |
I use one virtualenv per application, so the main python is never polluted, and only remove entire environments. |
|
154 |
using the packaging tool (apt, yum, etc) |
|
178 |
I don’t know / I fail at uninstallation |
|
79 |
I change PYTHONPATH to include a directory of the packages used by my application, then remove just that directory |
|
31 |
Other |
|
10 |
How do you manage using more than one version of a library on a system ?
I don’t use multiple versions of a library |
|
217 |
I use virtualenv |
|
203 |
I use Setuptools’ multi-version features |
|
46 |
I build fresh Python interpreter from source for each project |
|
16 |
I use zc.buildout |
|
109 |
I set sys.path in my scripts |
|
48 |
I set PYTHONPATH to select particular libraries |
|
49 |
Other |
|
23 |
Do you work with setuptools’ namespace packages ?
Has PyPI become mandatory in your everyday work (if you use zc.buildout for example) ?
If you previously answered Yes, did you set up an alternative solution (mirror, cache..) in case PyPI is down ?
Do you register your packages on PyPI ?
Do you upload your package on PyPI ?
If you previously answered No, how do you distribute your packages ?
One my own website, using simple links |
|
139 |
One my own website, using a PyPI-like server |
|
50 |
On a forge, like sourceforge |
|
|
N/A |
|
251 |
Other |
|
56 |
Nice job on your PyPI talk. I definitely learned some ideas for future reference.
[…] summit (notes from Ted about it). Tarek Ziade did a survey recently of what folks were using, and posted his results, which were interesting. zc.buildout and virtualenv got some attention from multiple folks. I think […]