gforge-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fwd: Re: [Gforge-devel] Architecture, LGPL]


From: Tim Perdue
Subject: [Fwd: Re: [Gforge-devel] Architecture, LGPL]
Date: Mon, 10 Feb 2003 08:17:33 -0600
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.3b) Gecko/20030108

This was meant to be copied to gforge-devel.

-------- Original Message --------
Subject: Re: [Gforge-devel] Architecture, LGPL
Date: Sun, 09 Feb 2003 22:52:22 -0600
From: Tim Perdue <address@hidden>
To: Ryan T. Sammartino <address@hidden>
References: <address@hidden>

Thanks for the constructive thoughts.

I've spent a fair bit of today looking at the code for phpgroupware, and
I think they have a lot of good ideas that we should look to borrowing
for a 4.0 release.  They seem to have a pretty clean architecture that
easily allows people to hook in and create new applications (calendar,
address book, etc).

I have been thinking about this too - I do believe there is a need for
people to hook up proprietary stuff. When I first saw the bugopolis
server, I was uncomfortable with the notion of people making money off
my code, but it's inevitable. That's what happens when you give it away.

A clean well architected LGPLed core with a well documented API would
allow anyone to write addons under the license of their choosing.
"Core" gforge would know about projects and now much else.  Everything
else (trackers, document managers, whatever) would talk through the API
to hook in at the appropriate places, like phpgroupware applications
do.

I have pondered re-releasing all my stuff in /common/ as LGPL. Almost
100% of that code is mine, except for a small amount recently added by
Reinhard Spisser and the tracker code.

However, with the emotions and attack-dog nature of certain groups, I
have put that on hold for a bit.

In order to LGPL that stuff, there are a few core files which need work
- mainly utils.php, as that is almost 100% VA Linux still. User.class,
Group.class, BaseLanguage as well.... Layout.class has also been
modified by 3rd parties since I released it...

I also think we can learn something from phpgroupware's setup...
basically, the first time you connect, there is a web-based setup
routine that sets up the database, configures the connection, creates
the equivalent of "local.inc", etc.  Pretty slick.  The only thing I had
to do at the command-line was "createdb phpgroupware" and "createuser
phpgroupware".

My reporting module has a nifty architecture too - it creates all its
tables from an admin page, and rebuilds all the data back to the
beginning from that same page.

If you have more ideas from PHPGW, let me know. I think there's a lot we
can do from the site-wide admin perspective, and I really want to see
great scheduling and calendaring software.

Anyways, just some random thoughts while I recover from the flu and a
badly bruised ankle.  Hint:  never turn your skates to the outside while
attempting to block a shot.

My parents tried to put me on ice skates on frozen lakes here in Iowa,
and I never could get the hang of it. If it involves anything remotely
athletic, I tend to suck at it.

Tim






reply via email to

[Prev in Thread] Current Thread [Next in Thread]