[prev] [thread] [next] [Date index for 2004/11/30]
Hi all, Simon Cozens is including a chapter on POOP in _Advanced Programming Perl, 2nd edition_, an O'Reilly book. As he is busy with a new direction in his life, I have agreed to co-ordinate gathering material and code for possible inclusion in the chapter from authors and users of POOP frameworks. The challenge is: Implement classes to drive this schema (minimally remodelling as you feel appropriate): http://www.class-dbi.com/cgi-bin/wiki/index.cgi?ERD And produce a test script to do the following things: 1. create a new database object of each type in the schema 2. print IDs of the objects inserted 3. fetch a record by ID 4. fetch an artist record by name (exact match) 5. fetch an artist record with a search term (globbing / LIKE / etc) 6. fetch CD records by matching on a partial *artist's* name, using a cursor if possible. 7. fetch unique CD records by matching on a partial artist's *or* partial CD name, using a cursor if possible. 8. update a record or two 9. delete some records And a couple of maintenance scripts: 1. re-org the database (clean up IDs and/or garbage collect) - may load entire database into core and write result to a second database if required. May make arbitrary decisions about what constitutes the sane starting points, for example leaving behind artists with no CDs. 2. migrate the database to a second version of the schema, that supports two types of CDs - multi-artist and single artist, allowing artist associations on each track or a single artist per CD. again, may do a complete load and write result to a second database if required. Ideally the test script should still work after migrating to the new version of the schema, but if not, submit a modified script. If you feel there is some other important data management task or use case that your framework performs well or enables gracefully, that I have overlooked, then discuss it NOW (do NOT continue to cross-post; use the poop-group list!) so that we can add it to the list as early as possible. Entries must be released under the Open Publication License (if necessary, in addition to any other license). You may use the following licence text: Copyright 2004, Alan B'Stard. All rights reserved. This code is free software; you may use it and/or redistribute it under the same ; terms as Perl itself, or under the terms of the Open Documentation License, available at http://www.opencontent.org/openpub/ Please feel free to post the entries to the most relevant SINGLE mailing list (in case it is still not clear DO NOT CROSS-POST HUGE AMOUNTS OF CODE OR DISCUSSION OR YOU WILL BE PUBLICLY HUMILIATED!). I will be collecting the entries and getting them to work on a test server. Those keen are welcome to login accounts on that server that will have access to test instances of mysql/MyISAM & InnoDB, and Pg; other databases will be made available according to interest and people to set them up. Please advise me if you are posting to a list not in the To: or Cc: of this message. Solving all problems will greatly enhance the reader's experience. While the material isn't just being copied straight into the book, it is excellent worked research. All code submitted by the publication deadline will be available via the oreilly.com page for the book. Unfortunately deadlines are tight so get your entries in as soon as possible! The results will probably go up on the poop.sourceforge.net site as well (Dave?), so late submissions are better than never - though they won't end up entombed in the history of the book ;). Simon has already started the entry for Class::DBI, although I'd appreciate it if someone with a bit more CDBI experience than myself could spare some time to work on the remaining scripts or review my solutions. I will be happy to work on the entry for Tangram, though I'd like to hear something from you folk @state51 as you've dealt quite a bit in this problem space ;-). Maybe you could provide us with a nice large-ish sample subset of your record database that I can munge into shape and put on the public server ? Pixie and Class::Persist are getting entries whether they like it or not, but I couldn't find a mailing list for you Fotango folk. I'd also appreciate it if someone with Pixie experience could provide an elegant solution to the indexing and text search problems so their entries can be complete. I'm also very keen to get submissions from Alzabo and SPOPS/ESPOPS experts. -- Sam Vilain, sam /\T vilain |><>T net, PGP key ID: 0x05B52F13 (include my PGP key ID in personal replies to avoid spam filtering) ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/ _______________________________________________ Poop-group mailing list Poop-group@xxxxx.xxxxxxxxxxx.xxx https://lists.sourceforge.net/lists/listinfo/poop-group
[Poop-group] [announce] The Object Persistathon!
|
Generated at 12:00 on 04 Dec 2004 by mariachi v0.52