When a Perl programmer and a web content engineer are engaged to be married, geeky things are bound to happen...

Marla and I have been living together for years, so we don't need the typical items people register for when they get married (ie dishes, sheets, etc.) We had a hard time finding one store that has the random assortment of things we want to register for, and we found that most online centralized registry services are too restrictive as to what stores and items are available. (If someone can find what we want on sale for half off, why should we force them to buy it for full price at the only place it's available on one registry?)

So, the obvious (to us, anyway) solution was to build our own gift list tracking website. I was meaning to find an excuse to play with HTML::Mason anyway...

We put together a website using Perl, Apache, mod_perl, CGI, and HTML::Mason, with a Mysql (via DBI) backend. The administrative half of the site allows us to enter information about which items we are interested in, and links to or notes about stores that carry the appropriate items. The user side displays a list of gift suggestions, with quantities wanted, quantity already purchased by someone, and buttons to let people tell us they've bought one of the items.

For security (through obscurity) reasons, I'm not going to post the URL here. I Know There Are No Malicious Monks out there... but I wouldn't want any of those evil web-crawling spammers to go to our site and mark everything as "purchased," or something.

Disclaimer: We hate wedding registries too. But when given a choice between registering for gifts, or getting a lot of things we won't use in 5 years (let alone 20), we both prefer providing gift suggestions. Our goal is to maintain a gift suggestion list for the purposes of reducing waste (by reducing the probability we'll get something useless to us), not to promote excessive consumerism or to appear greedy.

Alan and Marla

Update: We have already developed this. It's only in "hobby" state, not anything worth distributing. Do people want to see source, or the web page itself? I could make it available if you're interested.

I'm not sure what the best way to post multi-page HTML::Mason scripts and Mysql table descriptions though... it seemed a bit excessive.

Replies are listed 'Best First'.
RE: Geek registry
by ivory (Pilgrim) on Jul 29, 2000 at 02:56 UTC
    You know...many (most) great and profitable companies are built because people couldn't find what they needed and decided to make it themselves. I think you'll find a lot of demand for this, if you want to put it out for other people to use. Just think: A lot of people are waiting longer to get married and they have already amassed most of the traditional wedding gifts. I don't know anyone who doesn't already have a toaster/serving platters, etc (although cool new ones might be nice). Anyway, it sounds like what you've done is to create a totally personalizable girt registry, and that's really cool! --Ivory
RE: Geek registry
by redmist (Deacon) on Jul 29, 2000 at 09:37 UTC
    I would definitely want to see the source for this project. In fact, I am in agreement with ivory that this could be a very valuable thing. Perhaps even a project on SourceForge.

    And ferrency, remember that the most excessive things in life are the most fun. Please email me the source if you don't post it...thanks.

    redmist
    redmist.dyndns.org
    redmist@users.sourceforge.net
(kudra: birthday gifts too!) RE: Geek registry
by kudra (Vicar) on Jul 29, 2000 at 15:09 UTC
    I'd like to see this too. Perhaps you could bundle it up in a tarfile and then just post where we could download the file?

    I'm not getting married, but every year around my birthday I end up having my mother coordinate my 'want list' so that I don't get 10 copies of the same book.

RE: Geek registry
by sinan (Sexton) on Jul 30, 2000 at 19:51 UTC
    Ferrency, I really would love to see the code!!!

    I am using MySQL myself, (for rather serious and boring purposes) but I never used it with Perl. I really would like to know how you handled the interface between Mysql & Perl.

    BTW, I agree that this might be the beginning of a new business. If I were you, I would work on that.
    2nd BTW, what is HTML::Mason?
      DBI is a glue module which provides a Database Interface to a variety of SQL databases (Oracle, Mysql, Sybase, etc) through a unified API. That's what I used for the Mysql calls.

      HTML::Mason is a module which (among other things) lets you insert arbitrary perl code inside .html documents. This is in contrast to "normal" CGI perl programs, which typically look like a lot of Perl code with a little bit of html stuck in. (I liken HTML::Mason to PHP, but with Perl instead of PHP's scripting language).

      I plan to make this code available in some form somewhere soon, since so many people are interested in it. I haven't decided out exactly where or how yet, though. I'll post an update to this thread when I make the code available.

      Alan

giftlist code online...
by ferrency (Deacon) on Aug 01, 2000 at 22:09 UTC
    Hello again!

    I've packaged up the Geek Registry code into a little .tgz called giftlist. You can find it on my new open source web page. Enjoy! And give me feedback. I didn't warrant this a big enough project to start a Source Forge project.

    Alan

RE: Geek registry
by eLore (Hermit) on Jul 28, 2000 at 23:37 UTC
    Should you develop such a thing, I (for one) would love to see it!!
RE: Geek registry
by Buckaroo Buddha (Scribe) on Aug 10, 2000 at 23:09 UTC

    a ++ because it's not only a good idea (great post) but
    it saves me having to go out and buy you a wedding gift ;^)
    congratulations!

RE: Geek registry
by Anonymous Monk on Aug 01, 2000 at 14:35 UTC
    I don't want to sound pompous, but why don't you just accept whatever gifts people want to give you, and then hand off the stuff you don't want/need to some worthy charity? I'm sure Oxfam pr Save The Children could use whatever you offer. This not only saves all the effort, but also has the side benefit of allowing you to feel good about yourselves for a bit.
      When people visit, they are sometimes hurt if they don't see their gift in use. When you say "I gave it away," they won't all be happy to hear it. Being honest about what you want--be it something for yourself or a donation to a charity--prevents the accumulation of junk. Can Oxfam really use 20 espresso makers and a dozen clocks, or might it be better served by a donation which allows it to purchase whatever supplies are needed? Also, he wouldn't be limited in his choice of charities if he requested donations. And why is it wrong for him to request things he wants, which he intends to purchase anyway? That has the end result of one item being purchased instead of two (less packaging waste, etc).

      -kudra, who prefers donations in her name go to EFF, ACLU or NOW

      If going to an event where bringing a gift is traditional and/or expected, many people will appreciate being able to see what gifts are most desired and also what gifts have already been selected by someone else. Buying a gift can be quite a challenge and the assistance in choosing one is welcomed by some people in some situations.

      If you already know what you'd like to give as a gift (perhaps because you know the person(s) especially well), then don't look at the registry. I really doubt the recipient is going to be upset that you didn't buy a gift from "the list".

      The point of a registry is not to claim that these are the only things that you'd appreciate as gifts, but to help people choose a gift that they know will be appreciated if they want that help.

      And I doubt Oxfam or Save The Children wants a toaster or a fondue set. Unless the gift came with a receipt (unlikely), they aren't going to be able to get much (if any) money for it -- especially subtracting the time required.

      The thought just makes me giggle. "Hungry children all over the world have plenty of bread, but are forced to toast it over clumsy camp fires, often burning it. But you can help. We have plenty of gasoline and generators for them, but we desperately need more electric toasters. Please send your generous donation today!". Sorry, I couldn't resist.