Jorey Bump wrote:
Hi, Jim:

Jim Gallacher wrote:
The following page has been changed by JoreyBump:

------------------------------------------------------------------------------ Let's begin at the beginning. Here is the most minimal request handler possible:
  + {{{
    def handler(req):
        return 0
+ }}}

This is my first use of moinmoin, so I saved more frequently than necessary. I've already improved the page and discovered the preview button. :)

I'm a moinmoin newbie myself. Everything I know about it I learned while sipping my morning coffee today. :)

FYI, you can get python syntax highlighting by starting your code block with {{{#!python

Thanks for the tip.

The syntax highlighting with line number will be nice to have when explaining code. I was certainly pleased when I stumbled upon it.

Also I would avoid using "return 0". I know you want it to be the most minimal handler possible, but I think it's better to encourage good coding habits by using "return apache.OK". It will then be more logical when users move on to more sophisticated handlers, perhaps in other phases, where the handler may be returning something other than 0.

I've explained this in the final draft, and moved on to using apache.OK in the next example. This handler is obviously meant to do nothing, but to the uninitiated, the mod_python voodoo is quite thick. We take it for granted, but I think a novice will appreciate that the return code should be an integer (after all, that's what the debugger complains about if there's a related error).

One of the things we're up against is that I suspect a good chunk of our audience has no Python experience whatsoever, and they come to mod_python investigating alternatives to other web application development languages, like PHP. We can't assume they'll have many Python (or Apache) skills at all, so we should take the opportunity to ease them into basic concepts upfront (without dumbing it down, of course).

I suspect that many new mod_python users are familiar with python but have been forced to use PHP in the past and are desperate to return to the sanity of python. :)

The lack of Apache knowledge is the bigger challenge. People don't immediately grok the power of mod_python because the concept of different processing phases in apache is completely foreign. If we can crack that nut I think mod_python could become much more popular.

You could argue that it would be silly for a novice to start out by writing a custom handler, but the mailing list indicates that it happens all of the time.

Even if someone has some mod_python experience writing a custom handler for the first time can be a bit daunting, so I like your idea of starting with something very simple and building from there.


Reply via email to