I've been wanting to write this article for a long time, but
never really had the time to do it right. So rather than say
this is going to be a how-to, I'm hoping that this article
will be the seed of discussion about how to build great, scalable
Certainly over the past 2-3 years, my web development skills have
changed dramatically. I look back at the source code for Geocrawler
and can't believe I wrote that. The source code for PHPBuilder is
also far from exemplary, as it's really just a hodge-podge of
various GPL'd software packages cobbled together.
SourceForge was really the
first serious app I helped write as an experienced PHP developer and
I think it shows to an extent in the end result. The code is pretty
much broken up into decent libraries and sensible function calls.
The database structure is very clean. The various subsections of
the site are generally not dependent on the other parts of the site.
But it's not perfect. If I had it to do again, I would try to
make more of a point of keeping the HTML layer more clearly
separated from the database layer, either through objects or
a cleaner function library.