[Zope] User Profiles?
Hadar Pedhazur
hadar@verticality.com
Sat, 13 Mar 1999 10:11:11 -0500
Jeff> I am working on a web site for a local outdoors
Jeff> group. They have about 1,000 members and are
Jeff> growing fast, but their web site needs help. I had
Jeff> lunch with their leader today, and strongly
Jeff> advocated the use of Zope to redo their entire web
Jeff> site. He loved my ideas, and gave me the go ahead
Jeff> on the site.
Cool. Sounds like a very good fit for Zope.
Jeff> Now, my first question (I'm sure I'll have many)
Jeff> to the group is: How do I create user profiles?
Jeff> Each user of the system needs to have specific
Jeff> information associated with them including: full
Jeff> name, address, telephone numbers, a picture (gif
Jeff> or jpeg, easily uploadable by the user), their
Jeff> interests, a history of the events they've
Jeff> sponsored and/or attended, a buddy list (basically
Jeff> just a collection of other member ids), and so on.
There are many ways to do this, as you might imagine given
that Zope is a fully programmable environment. One such way
was done by Andy Smith (cc'ed on this reply) in building an
"alumni community site" for our (Andy and my) old
department. The site is http://www.ged.org. Unfortunately,
you won't be able to see much, as it's a password protected
site for members (there are two public pages). However, on
one of the public pages, you will note that it was the
intention all along to publish the source to the site for
the Zope Community at large.
As functional as the site is already, I think Andy had some
very cool extensions in mind before opening it up to the
public. Still, he can easily ship you the GEDUserFolder that
he built to keep track of everyone's contact info (easily
extendible to all of the fields you have in mind). As a user
of the site, I can assure you that it's a breeze to use!
Perhaps, this will also be incentive enough for Andy to
polish off some of his other goodies and release them :-)
Jeff> I have downloaded the UserDb product, and figure I
Jeff> might be able to extend it to support the extra
Jeff> columns I require. However, a big part of me wants
Jeff> to keep as much of this in Zope as I can. I like
Jeff> the idea of the objectstore, and don't necessarily
Jeff> like having to fudge SQL tables every time I add
Jeff> or remove an attribute from the profiles (not that
Jeff> I will be doing that, necessarily).
Andy's stuff above is all kept in the Zope DB :-)
Jeff> What do those with a higher Zope Zen Rating than I
Jeff> suggest in this situation? I'm also going to be
Jeff> making an Events Calendar, which is connected up
Jeff> with all the User information (who's running the
Jeff> event, who's signed up to attend, etc.). Is all of
Jeff> this something that Tabula would be good for? If
Jeff> so, who do I have to sleep with to get it? :^)
Tablua, what's that? Just kidding, it's now called Z Tables
:-). For the moment, we are actively selling (without
actively promoting) Z Tables. While you get the source, it
is _not_ an Open Source product. The license does not permit
redistribution of any kind, and does not permit derivative
works, etc. It does, however, permit you to use it to
operate any kind of website, including a publicly accessible
one, etc... The price is dirt cheap for the functionality
(IMHO). The license also has a clause that specifically
permits Digital Creations to eventually release Z Tables as
Open Source(tm). Meaning, when we're ready to release it,
don't be mad that you paid for it when others get it for
free... This is important, because it is our intention that
over time, the vast majority of our stuff will be Open
Source!
So, why do we charge now? A few reasons:
1) The docs are really weak. Rather than get beat up in
public for it, we have a license clause that forces you
to acknowledge that the docs are weak, and that you need
to be able to read source to really understand the full
power.
2) Support. Everything that we put out there causes a
certain amount of extra work. The more sophisticated the
code, the more work. Z Tables is _hot_, so if it were out
there in its current form, everyone would want to use it
(trust me on this one!), so it would become a support
burden for us. Pay us for the product, and it's worth our
while to support you!
3) Before putting out something to the world, we really want
to make sure it's been beat up. It may sound strange that
we would charge people to help us turn something into a
polished product, but it's already powerful enough to
solve real problems, so motivated users are our best bet
to help us achieve our goals for a more general release.
See some earlier posts from people who have recently gotten
Z Tables! For example, check out a recent
"performance-oriented" post by Theodore Patrick of
Indigo Networks!!!
Jeff> I am willing to write up a case study,
Jeff> testimonial, contribute any code I write back to
Jeff> the community, etc., whatever is requested. I just
Jeff> want to do a good job for these guys, making
Jeff> myself and Zope look good in the process.
Wonderful.
Jeff> HELP! *grin*
I hope this helped at least a little...
Jeff> Jeff K. Hoffman
Hadar