Perl tutorial at U Penn on Tuesday 2 September

Discussion in 'Perl Misc' started by Mark Jason Dominus, Aug 26, 2003.

  1. This year I wrote three new tutorial classes for conferences, but I
    only gave two of them in practice sessions at Penn in the spring.
    I've given the new one several times now, so I don't need the
    practice, but I thought it would be fun to give it in Philadelphia
    anyway.

    As usual, I am asking for a (voluntary) donation of $10. If this
    covers my expenses for the class, I will contribute 30% of the surplus
    to the EFF, a non-profit legal action group devoted to defending
    digital rights. (See http://www.eff.org/ for details.) University of
    Pennsylvania students, faculty, and staff are exempt from this request.

    The tutorial is titled:

    "How do I delete a line from a file?"
    Strategies for Lightweight Databases


    WHEN


    Tuesday, September 2.

    The tutorial will start around 6:30 PM and will last until about
    10:00, including a 30-minute break in the middle.

    WHAT

    Here is the brochure description:

    Many programs need cheap, convenient access to small amounts
    of data. There are two commonly used solutions: Flat text
    files and DBM files. This class will look at these in
    detail. Whether you're looking for a good solution for storage
    of your own data, or you have to deal with data stored in one
    of these formats by another program, this class will equip you
    with valuable tools for solving your problems.

    In the first section, we'll look at techniques for managing
    flat text databases and the systems programming that underlies
    these. We'll examine the tradeoffs of variable
    vs. fixed-length records and sorted vs. unsorted files. In the
    second section, we'll take a detailed look at Tie::File, a new
    standard module that provides easy access to text databases.

    The third section will be an overview of Perl's 'DBM' feature,
    including a comparison of the standard DBM modules. We'll see
    several extremely useful but little-known features of DB_File,
    the only one of these standard modules that doesn't have
    serious defects.

    Here's an outline:



    Text Files
    Rotating log file; deleting a user
    Copy the File
    -i.bak
    Using -i inside a program
    Problems with -i
    Atomicity issues
    Essential problem with files; fundamental operations; seeking
    Sorted files
    In-place modification of records
    Overwriting records
    Bytes vs. positions
    Gappy Files
    Fixed-length records
    Numeric indices
    Case study: lastlog
    Indexing
    Void fields
    Generic text indices
    Packed offsets
    Tie::File
    Tie::File Examples
    delete_user revisited
    uppercase_username revisited
    Rotating log file revisited
    Most important thing to know about Tie::File
    Indexing with Tie::File
    Tie::File Internals
    Caching
    Record modification
    Immediate vs. Deferred Writing
    Autodeferring
    Miscellaneous Features
    DBM
    Common DBM Implementations
    What DBM Does
    Small DBMs: ODBM, NDBM, and SDBM
    GDBM
    DB_File
    Indexing revisited
    Ordered hashes
    Partial matching
    Sequential access
    Multiple values
    Filters
    BerkeleyDB


    WHARNING

    This is NOT an introductory class; it assumes that you have some
    familiarity with Perl's basic features.

    WHERE

    The classes will be held in Wu-Chen auditorium on the first floor of
    the new Melvin and Claire Levine Hall at the University of
    Pennsylvania. Levine Hall is located at 3330 Walnut Street in
    Philadelphia.

    For directions to the University, see

    http://www.facilities.upenn.edu/visitUs/

    A map is available at:

    http://www.facilities.upenn.edu/mapsBldgs/view_map.php3?id=407


    WHO

    My usual bio says:

    Mark-Jason Dominus has been programming in Perl since 1992. He
    is the author of the 'Memoize', 'Text::Template', and
    'Tie::File' modules, the author of the 'perlreftut' man page,
    and an occasional contributor to the Perl core. He won the
    2001 Larry Wall award for Practical Utility.

    For more details about me, see

    http://perl.plover.com/yak/aboutme.html

    For more details about classes I teach, see

    http://perl.plover.com/yak/

    For more details about this class, see

    http://perl.plover.com/yak/lightweight-db/

    WHOW

    We have plenty of space, but please make an advance reservation so
    that I know how many handouts to bring. To reserve, please send an
    email message to:



    Please do circulate this notice to any people or mailing lists that
    you think might want to see it.

    My grateful thanks go to Helen Anderson and Chip Buchholtz of the
    University of Pennsylvania School of Engineering and Applied Science
    for providing the space and AV equipment for these classes, and to
    JoDe Hendrick for setting it up.

    WHUH?

    Questions? Send me email.



    [ Note: This message was posted with 'Distribution: phl'. If you
    received it, it is because your news administrator has chosen to
    receive articles that are specifically marked as being of interest
    to the Philadelphia local area. ]
    Mark Jason Dominus, Aug 26, 2003
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Mike C. Fletcher
    Replies:
    0
    Views:
    304
    Mike C. Fletcher
    Jul 28, 2003
  2. Peter Hansen
    Replies:
    0
    Views:
    282
    Peter Hansen
    Oct 21, 2003
  3. David Goodger
    Replies:
    0
    Views:
    241
    David Goodger
    Sep 11, 2007
  4. Matt Pattison
    Replies:
    0
    Views:
    75
    Matt Pattison
    Sep 26, 2006
  5. Mark Jason Dominus

    Perl tutorial at U Penn on Friday 4 June

    Mark Jason Dominus, Jun 2, 2004, in forum: Perl Misc
    Replies:
    2
    Views:
    80
    Mark Jason Dominus
    Jun 3, 2004
Loading...

Share This Page