http://groups.google.com/group/django-users/browse_frm/thread/4216a81f857a1bad?hl=en
With mod_wsgi now also being listed on their deployment page, albeit
in the 'See Also' section:
http://docs.djangoproject.com/en/dev/howto/deployment/
am finally seeing some direct referrer traffic from Django
documentation site where previously never did.
May be time to refresh the integration guide for Django to make it
easier to follow. :-)
Graham
Here's a couple of things you can do to make the docs more newbie friendly:
1) Include a hello world example at the end of the
QuickInstallationGuide wiki so there is *one* document that will take
the average user to hello world.
2) Point people to the QuickInstallation guide from the
InstallationGuide because it will catch the newbie's eye.
3) Possibly add some information about embed vs daemon mode in
QuickInstallationGuide
The problem with InstallationInstructions is that it doesn't actually
get you through a working example. So if you look at the
IntegrationWithDjango it first points you to InstallationInstructions.
What to do *after* you have the mod_wsgi.so module in place are
what trip up the newbies -- the configuration and the script. The
install process on most systems will (hopefully soon) be very easy
since a package is available.
The average newbie will go through the QuickInstallation with a hello
world and then look at the "Integration with XYZ" wiki to get more
information about writing the specific WSGI script for their
application.
The other piece of the puzzle that should be more clear is daemon mode
vs embed mode, which to choose, etc. This could be explained a bit in
QuickInstallationGuide as well, it shouldn't hurt. If it's possible
to get someone up and running with 90% of what they need in one doc I
would go for it just for newbie friendly value?
I find the original README is organized quite well for newbies. It
goes through a very basic installation/configuration all in one
document with a hello world at the end. But it does not cover install
via packages, but nonetheless may be be the original
QuickInstallationGuide?
http://modwsgi.googlecode.com/svn/tags/mod_wsgi-2.3/README
--
Milan
That is what the QuickConfigurationGuide will be.
Note that the QuickInstallationGuide was just a cut and paste, with
few changes, out of the README file from the source code. Problem is
that people who install from binary packages never see the README and
also probably then don't read it via the link of the web site either
as probably regard it as then being irrelevant.
At the end of that same README file is the simple hello world example
suggested for first time setup. The QuickConfigurationGuide will just
be a cut and paste of that, with a bit more information cut and paste
from ConfigurationGuidelines.
> 2) Point people to the QuickInstallation guide from the
> InstallationGuide because it will catch the newbie's eye.
It isn't referenced yet as QuickInstallationGuide was only done last
week and link from 'Compilation Instructions', ie., the README, has
the same information.
Once QuickConfigurationGuide done, will clean up what references what.
> 3) Possibly add some information about embed vs daemon mode in
> QuickInstallationGuide
Want to do a whole document by itself on that:
http://code.google.com/p/modwsgi/issues/detail?id=61
Also perhaps want to add an InstallationGuidelines document which goes
into a lot more detail about choices which need to be made at
installation time such as prefork vs worker mode of Apache. This would
reference for further detail existing ProcessesAndThreading document.
The InstallationInstructions page may actually vanish in its current
form and turn into more of a documentation front page which would
replace the default wiki link on site which currently just shows list
of available documents.
> The problem with InstallationInstructions is that it doesn't actually
> get you through a working example. So if you look at the
> IntegrationWithDjango it first points you to InstallationInstructions.
> What to do *after* you have the mod_wsgi.so module in place are
> what trip up the newbies -- the configuration and the script. The
> install process on most systems will (hopefully soon) be very easy
> since a package is available.
If compiling from source code and 'Compilation Instructions' were
followed then it does take you through to working example. In early
days there were no binary packages except for Debian packages done by
Bernd that were in experimental stream. Now that it is getting into
the main package streams, do agree that how documentation presents
need to be refreshed.
> The average newbie will go through the QuickInstallation with a hello
> world and then look at the "Integration with XYZ" wiki to get more
> information about writing the specific WSGI script for their
> application.
>
> The other piece of the puzzle that should be more clear is daemon mode
> vs embed mode, which to choose, etc. This could be explained a bit in
> QuickInstallationGuide as well, it shouldn't hurt. If it's possible
> to get someone up and running with 90% of what they need in one doc I
> would go for it just for newbie friendly value?
>
> I find the original README is organized quite well for newbies. It
> goes through a very basic installation/configuration all in one
> document with a hello world at the end. But it does not cover install
> via packages, but nonetheless may be be the original
> QuickInstallationGuide?
> http://modwsgi.googlecode.com/svn/tags/mod_wsgi-2.3/README
Okay, so you do know about README. :-)
I don't want to be putting stuff in there about specific Linux
packaging systems as there are too many. As per previous discussion
want separate InstallationOnDebian, InstallataionOnUbuntu etc,
documents for that, but for those I am very much dependent on others
as I don't really have any idea what is required.
The prior thread where started all this discussion about documentation is at:
http://groups.google.com/group/modwsgi/browse_frm/thread/2f3a30655bd47755?hl=en#
At the moment though I get about one session a week where can work on
this stuff and if baby decides otherwise may not even get that. :-(
Graham
I see.
>
>> 2) Point people to the QuickInstallation guide from the
>> InstallationGuide because it will catch the newbie's eye.
>
> It isn't referenced yet as QuickInstallationGuide was only done last
> week and link from 'Compilation Instructions', ie., the README, has
> the same information.
>
> Once QuickConfigurationGuide done, will clean up what references what.
>
Ok, makes sense.
>> 3) Possibly add some information about embed vs daemon mode in
>> QuickInstallationGuide
>
> Want to do a whole document by itself on that:
>
> http://code.google.com/p/modwsgi/issues/detail?id=61
>
> Also perhaps want to add an InstallationGuidelines document which goes
> into a lot more detail about choices which need to be made at
> installation time such as prefork vs worker mode of Apache. This would
> reference for further detail existing ProcessesAndThreading document.
>
> The InstallationInstructions page may actually vanish in its current
> form and turn into more of a documentation front page which would
> replace the default wiki link on site which currently just shows list
> of available documents.
That sounds great.
>
>> The problem with InstallationInstructions is that it doesn't actually
>> get you through a working example. So if you look at the
>> IntegrationWithDjango it first points you to InstallationInstructions.
>> What to do *after* you have the mod_wsgi.so module in place are
>> what trip up the newbies -- the configuration and the script. The
>> install process on most systems will (hopefully soon) be very easy
>> since a package is available.
>
> If compiling from source code and 'Compilation Instructions' were
> followed then it does take you through to working example. In early
> days there were no binary packages except for Debian packages done by
> Bernd that were in experimental stream. Now that it is getting into
> the main package streams, do agree that how documentation presents
> need to be refreshed.
I see ...
>
>> The average newbie will go through the QuickInstallation with a hello
>> world and then look at the "Integration with XYZ" wiki to get more
>> information about writing the specific WSGI script for their
>> application.
>>
>> The other piece of the puzzle that should be more clear is daemon mode
>> vs embed mode, which to choose, etc. This could be explained a bit in
>> QuickInstallationGuide as well, it shouldn't hurt. If it's possible
>> to get someone up and running with 90% of what they need in one doc I
>> would go for it just for newbie friendly value?
>>
>> I find the original README is organized quite well for newbies. It
>> goes through a very basic installation/configuration all in one
>> document with a hello world at the end. But it does not cover install
>> via packages, but nonetheless may be be the original
>> QuickInstallationGuide?
>> http://modwsgi.googlecode.com/svn/tags/mod_wsgi-2.3/README
>
> Okay, so you do know about README. :-)
>
> I don't want to be putting stuff in there about specific Linux
> packaging systems as there are too many. As per previous discussion
> want separate InstallationOnDebian, InstallataionOnUbuntu etc,
> documents for that, but for those I am very much dependent on others
> as I don't really have any idea what is required.
>
> The prior thread where started all this discussion about documentation is at:
>
> http://groups.google.com/group/modwsgi/browse_frm/thread/2f3a30655bd47755?hl=en#
>
But this doesn't address the newbie-friendlyness points, which I think
this thread addresses better.
> At the moment though I get about one session a week where can work on
> this stuff and if baby decides otherwise may not even get that. :-(
>
Thanks again, hope this helps.
--
Milan
Yeah, it keeps me from slacking off and loosing focus. For example,
would much prefer to work out how to get mod_wsgi trunk working on
Python 3.0 again. Have at least got it compiling again with Python
3.0b3, but crashes in various places. First release candidate for
Python 3.0 was supposed to be about now, but been delayed a bit.
Graham
Maybe you should consider including sample configuration files with
the source package, change the Makefile so that it will install the
sample configuration files in /usr/share/doc/mod_wsgi/config_examples
or something? The README can also be installed in a similar fashion.
Other projects do this, so why not mod_wsgi? Already sent some example
configs in a ZIP archive a few days back.
> At the end of that same README file is the simple hello world example
> suggested for first time setup. The QuickConfigurationGuide will just
> be a cut and paste of that, with a bit more information cut and paste
> from ConfigurationGuidelines.
Sure, but we all know noobs will always do the opposite of what that
file's name says ;-)
...
> I don't want to be putting stuff in there about specific Linux
> packaging systems as there are too many. As per previous discussion
> want separate InstallationOnDebian, InstallataionOnUbuntu etc,
> documents for that, but for those I am very much dependent on others
> as I don't really have any idea what is required.
Ubuntu and Debian are pretty much covered as there are already
packages available on the official repositories. However the official
packages are outdated. It's pretty easy to build your own packages
from source and install them. Personally, I make it a habit of using
the package management system for the distribution I am working on and
never install anything directly from source unless absolutely
necessary.
$ sudo apt-get build-dep libapache2-mod-wsgi
$ sudo apt-get install devscripts fakeroot
$ mkdir localpkg
$ cd localpkg
$ apt-get source libapache2-mod-wsgi
Download the latest 2.x tarball. Put it in localpkg.
Change to the mod_wsgi directory for the *old* version that comes with Ubuntu.
$ cd ~/localpkg/mod-wsgi-1.3
Create an updated build directory using the latest 2.x tarball.
$ uupdate mod_wsgi-2.3.tar.gz
$ cd ../mod-wsgi-2.3
$ dpkg-buildpackage -uc -us -rfakeroot
You should end up with installable .deb packages in the directory
above mod-wsgi-2.3. Note though that this will build mod_wsgi against
a threaded Apache2 server (aka worker MPM). If you prefer prefork, you
need to replace the dependencies stated in the debian/control file for
the package.
For CentOS or RedHat ES I had to build and install Python and mod_wsgi
directly from source. This is mainly because we prefered to use Python
2.5 instead of 2.4 which comes as the default.
> The prior thread where started all this discussion about documentation is at:
>
> http://groups.google.com/group/modwsgi/browse_frm/thread/2f3a30655bd47755?hl=en#
>
> At the moment though I get about one session a week where can work on
> this stuff and if baby decides otherwise may not even get that. :-(
Heheh. Wait till yours gets to the "toddler" stage :-)
--
Best Regards,
Nimrod A. Abing
W http://arsenic.ph/
W http://preownedcar.com/
W http://preownedbike.com/
W http://abing.gotdns.com/
How are you planning on handling Unicode<-->HTTP header and
Unicode<->entity-body conversions? Will you automatically decode/encode
headers to ISO-8859-1? Are you going to use the charset parameter of the
Content-Type to encode the entity body?
- Brian
Changes based on discussion in WEB-SIG and recorded at:
http://www.wsgi.org/wsgi/Amendments_1.0
Whether I have got it right and what was defined is right remains to
be seen and probably will not be known until someone tries it with a
serious application.
Graham