[horde] babel?

Chuck Hagenbuch chuck at horde.org
Fri Oct 27 07:25:35 PDT 2000


Quoting Michael Hoennig <michael at hoennig.de>:

> Is anybody currently working on babel? Just because I've an urgent need
> of a forum system and I would like to have a talk about some ideas of
> how such a program should work - and how it could fit into Horde.

I am nominally - it's something I want working sooner rather than later, and I'm
in the midst of re-architecting it a bit and converting it over to PEAR. So now
is a good time to make design changes. =)

> Babel's approach seems to be article storage in a database, that would
> not be my way - I prefer a static solution. Probably even both can be
> done in one project. Chucks suggestion for this, creating the static
> pages on request, does not make so much sense in a forum, I guess,
> because virtuall all new articles will be requested very soon anyway.

I think that you really want to have messages stored in a database or other
dynamic store somewhere, to enable searching, generating other forms of content,
decent locking on updates, rebuilding static pages with a new template easily,
etc.

I agree that Babel should at least have an option to generate static pages and
serve that up by default. Here are my arguments for generating on demand:

1. You make sure that you don't do unnecessary work. When the page is updated,
and needs to be viewed, you regenerate it.

2. It makes it easier to check for things like a changed configuration
(template, whatever) and regenerate those pages, also. If you generated on post,
and you wanted to change the look of the whole site, you'd need a seperate
method to regenerate everything, and you'd have to do it all at once, instead of
having old articles converted as they were viewed.

3. It seems easier to ensure that you don't munge things. If you're generating
on view, and you manage to get two simultaneous requests, well, you generate the
same page twice, and maybe one overwrites the other - no big deal. And even if
one gets and old copy and misses an update, then the page will be regenerated
the next time it's viewed in order to be correct. If you generate on post, you
have to be much more careful about locking files when outputting to make sure
you don't miss anything. At least, that's how it seems to me - I could have this
wrong in my head, though.

It does mean you need a small wrapper to do the checking, but I think the
overhead from that is pretty minimal.

Thoughts? I'd definitely be interested in seeing this ball rolling.

-chuck

--
Charles Hagenbuch, <chuck at horde.org>
Many states consider gambling so immoral that they not only prohibit private
gambling organizations, they thoughtfully provide their own.




More information about the horde mailing list