>people usually come in happily willing to accept the most draconian and inflexible of standards, because at least it gives them a starting point and an opportunity to avoid gratuitous differences in code.
... not to mention an opportunity to avoid wasting time reinventing tedious and trivial wheels when they could instead be devoting effort to thinking about how their application could do things that are interesting (and/or that somebody might actually want to pay for)
I'm not for a moment suggesting that things like Webkit or SQLObject are tedious and trivial to write - but let's face it, once somebody has done the world the service of writing them, that should be it. I want to spend more time thinking about what do I want in my database, what interesting things do I want to with my data and show to the world, than how I'm going to go about the tedious mechanics of shovelling it into and out of an RDBMS and a web server.
> ... not to mention an opportunity to avoid wasting time reinventing tedious and trivial wheels when they could instead be devoting effort to thinking about how their application could do things that are interesting (and/or that somebody might actually want to pay for)
That is supposed to be the benefit for any 'framework', and for successful ones with actual users ( sqrt(n) > # of framework developers) it works to some extent. The diversity of approaches to building web applications that is so visible in the python world may be due to the ease with which ideas can be dressed out in python, and the social incentives for being a framework developer. Other languages have the same diversity of approach but don't see it as being as much of a problem.
I wonder if the 'web applications are engineering projects' metaphor is a good map for the problem space. There may be others that would give us better mental tools for dealing with different classes of projects, perhaps 'web application styles are like literary forms'; we all know the difference between a short story, a sonnet and a sales pitch, and what situations each is appropriate for, and that some forms are more structured than others, and can make better use of predefined components.# larry price