[dev] Agora Code and Idea Donation
Stephan Hohmann
webmaster at dasourcerer.net
Wed Jul 14 00:51:18 UTC 2010
Hello there,
I'm stuck with a half-finished forum software weighing around 13,000 lines of
code. Since the original dev team has split up, I see no point in
continuing development on my own. However, I believe some of the
features might be
interesting for Agora or even Horde itself:
o XSL/T Based Template Engine
We have started with Smarty as our template engine but soon ran
into problems
when we decided we wanted XHTML as output format. It is quite basic at the
moment and given the decisions regarding XHTML vs. HTML in H4 I do not know
if it'll fit in... However, it's great for generating RSS and Atom.
o HTTP Caching
In an effort to keep server loads as well as traffic costs low, we've
experimented with HTTP/1.0's Last-Modified and HTTP/1.1's ETag a lot and
gained some experiences regarding HTTP level caching.
o Linkbacks
Finding out how a thread is linked is quite interesting but
usually requires
logfile analysis. We wanted a more active approach and keep track
of incoming
referrers by the forum software itself. In addition to this, we wanted to
allow linkbacks via the pingback XMLRPC call as well (and possibly
trackbacks
as used by Wordpress). This could be interesting for other modules serving
community content as well (mostly Wicked and Ansel).
I had some good ideas to eliminate spam and noise. But there's nothing in
code yet...
o Meaningful URLs
Apart from being pretty, we wanted our URLs to express "is-a," "has-a" or
subset relations. A nice sideffect: This allows for hackable URLs. I.e.
you could take away the last segment of a URL (up to the last "/") and
move up in the logical structure. E.g. /help would point to the
general help
while /help/text would be the help page regarding text formatting.
We used a Chain of Responsibility to achieve this. But I'm certain
Horde_Routes can do the same.
o Statistics
People really love statistics. Generating a list of the most popular forums
and threads as well as an average on the amount of posts/h is
quite easy and
draws some attention, making it a nice-to-have.
I also had some ideas on how to link some existing modules into Agora:
o Ansel
Ansel could be used to manage forum avatars as well as provide a one-click
hosting solution for images.
o Scry
Threads with attached polls are a hardly used, yet often requested feature.
o Trean
For larger forums, it might be an idea to let users bookmark their
favourite
threads. It might be better to let Agore handle this. But since Trean is
already there...
o Folks
Usernames could be linked to profile pages in Folks.
Personalized statistics on a user's activity in Agora might be another
nice-to-have.
I could start working on this approx. by the end of the week, so let
me know if
you're interested.
Have fun,
Stephan
More information about the dev
mailing list