Re: Friends-of-GNOME database [Re: Modifying GNOME-About to count users]



On อ., 2005-07-12 at 15:44 -0400, Owen Taylor wrote:
> On Tue, 2005-07-12 at 21:47 +1000, Jeff Waugh wrote:
> > <quote who="Tim Ney, GNOME Foundation">
> > 
> > > Following up on the discussion about counting GNOME users and running a db
> > > of Friends of GNOME (FOG) - [gnome-infrastructure added here.]  Any system
> > > that can import comma or tab delimited data might work for managing the
> > > FOG information - names, contact info, comments, donation amount and
> > > date(s) and would be a good starting point.
> > > 
> > > Does it make sense to use mysql since that is already on a gnome server?
> > > Anyone from gnome-infrastructure team interested in working on such a
> > > project?
> > 
> > We need more than just the database server, we need an application to manage
> > it. Data in CSV format will be simple to massage once we've determined the
> > correct application to use - it's very likely that it'll be Drupal with the
> > CivicSpace modules.
> 
> I think two somewhat different things have gotten conflated here.
> I'm not sure I've completely followed all the threads of the 
> "GNOME-About" discussion, but it seems to have evolved from a discussion
> of some sort of automated ping to a way to allow users to register
> with GNOME.
> 

I haven't followed that discussion (GNOME-About). However, I am aware of
a requirement for a system to get the list of Foundation members into a
database. I must've either confused it with, or missed some seperate
requirement for getting the Friends of GNOME members into a database
too.

> But for the GNOME foundation we need something different - we need to
> track the people that we "do business" with...
> 
>  - Friends of GNOME contributors
>  - Event attendees (GUADEC, GNOME summit, and so forth)
> 
> This would include things like:
> 
>  - email addresses
>  - whether they've opted in to receive GNOME updates
>  - when available, snail mail addresses
>  - contribution history
>  - event attendance history
> 
> There is obviously care that has to be taken here to protect privacy
> concerns ... we should not release information about individuals to
> anybody or send unsolicited email, for example, but having this
> information available is important to a lot of things that the 
> foundation does:
> 
>  - Gathering statistics to allow planning future events 
>   
>  - Keeping in contact with past Friends of GNOME contributors to
>    let them know what GNOME has been up to (and thus, why they
>    should donate again)
> 

Sounds like the beginnings of a new requirements specification to me :)
It doesn't sound like a very generic 

> While I don't know much about Drupal, it doesn't seem very related to
> this sort of "customer database". My guess is that the appropriate
> technology is simply a custom-written PHP frontend to a MySQL 
> database.
> 

I don't know much about Drupal either, but writing this as a custom PHP
frontend really shouldn't be too difficult. I've been working on a PHP
frontend for our LDAP database, and plan to include some pages to
maintain some of our mysql tables (e.g. the mirrors list). It didn't
take me long to write so far and it shouldn't take me too long to finish
it off and test it.

> If we password protect the web interface at the HTTP level, then 
> a lot of the security concerns with custom-written PHP code go away.
> 

Well some. My suggestion is to just use of the LDAP 'userPassword'
attribute and use existing (normal) LDAP authentication mechanisms (at
least for now). HTTP basic auth over an unsecure connection would
obviously leave a lot to be desired, but if the site was served securely
(https), nothing will be sent plaintext over the wire, right?

Basically, the system as I've written it so far isn't anything special
or exciting. It just authenticates the user via LDAP, then uses LDAP to
figure out which groups the user is in and display relevant options. For
example, users in the sysadmin group will be able to set up new CVS
accounts and maintain users SSH keys etc, manage the mirrors database
and so on. Users in the 'membership' group could be given access to
maintain the foundation members (of FoG members) databases. It uses XSLT
stylesheets to present itself with the same style as the other GNOME
sites. It's nothing big or complex, but it should fit the basic
requirements of the gnome-sysadmin group and shouldn't be too hard to
maintain or extend to fit the requirements of other GNOME-related
groups. I'll try (really hard, I promise) to get some kind of preview
version of what I've got so far up running against some obfuscated test
data at some point. Hopefully this weekend.

However, if Drupal or whatever else fits the bill, just go for it.

--
Ross




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