The thing is, writing for mod_perl well requires understanding of some other things, like memory management and the Apache process model. CGI is much more forgiving of sloppy code as well. Writing for mod_perl usually means using strict, writing modules, etc.