Loading ...
Sorry, an error occurred while loading the content.

Fw: Perl tutorial at U Penn on Tuesday 2 September

Expand Messages
  • James E Keenan
    ... From: Mark Dominus To: Sent: Tuesday, August 26, 2003 2:48 PM Subject: Perl tutorial at U Penn on Tuesday
    Message 1 of 2 , Aug 26, 2003
    • 0 Attachment
      ----- Original Message -----
      From: "Mark Dominus" <mjd-lists-nypm+@...>
      To: <ny@...>
      Sent: Tuesday, August 26, 2003 2:48 PM
      Subject: Perl tutorial at U Penn on Tuesday 2 September


      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.)

      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:

      mjd-tpc-practice-lwdb+@...

      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.
    • Kenneth Dombrowski
      Is anybody driving out to philly to see mjd who wants another body to split gas costs with? __________________________________ Do you Yahoo!? Yahoo!
      Message 2 of 2 , Sep 2, 2003
      • 0 Attachment
        Is anybody driving out to philly to see mjd who wants another body to
        split gas costs with?





        __________________________________
        Do you Yahoo!?
        Yahoo! SiteBuilder - Free, easy-to-use web site design software
        http://sitebuilder.yahoo.com
      Your message has been successfully submitted and would be delivered to recipients shortly.