What was the project that made you feel skilled in Python?

Discussion in 'Python' started by Ned Batchelder, May 19, 2013.

  1. Hi all, I'm trying to come up with more project ideas for intermediate
    learners, somewhat along the lines of
    http://bit.ly/intermediate-python-projects .

    So here's a question for people who remember coming up from beginner: as
    you moved from exercises like those in Learn Python the Hard Way, up to
    your own self-guided work on small projects, what project were you
    working on that made you feel independent and skilled? What program
    first felt like your own work rather than an exercise the teacher had
    assigned?

    I don't want anything too large, but big enough that there's room for
    design, and multiple approaches, etc.

    Thanks in advance!

    --Ned.
    Ned Batchelder, May 19, 2013
    #1
    1. Advertising

  2. Ned Batchelder

    Roy Smith Guest

    In article <>,
    Ned Batchelder <> wrote:

    > So here's a question for people who remember coming up from beginner: as
    > you moved from exercises like those in Learn Python the Hard Way, up to
    > your own self-guided work on small projects, what project were you
    > working on that made you feel independent and skilled? What program
    > first felt like your own work rather than an exercise the teacher had
    > assigned?


    IIRC, my first production python projects were a bunch of file parsers.
    We had a bunch of text file formats that we worked with often. I wrote
    some state-machine based parsers which slurped them up and gave back the
    contents in some useful data structure.

    Many of the files were big, so I added an option to write out a pickled
    version of the data. The parsing code could then check to see if there
    was a pickle file that was newer than the text version and read that
    instead. Big win for speed.

    Then, of course, a bunch of utilities which used this data to do useful
    things. I remember one of the utilities that turned out to be really
    popular was a smart data file differ. You feed it two files and it
    would tell you how they differed (in a way that was more useful than a
    plain text-based diff).
    Roy Smith, May 19, 2013
    #2
    1. Advertising

  3. Ned Batchelder

    Neil Cerutti Guest

    On 2013-05-19, Ned Batchelder <> wrote:
    > Hi all, I'm trying to come up with more project ideas for
    > intermediate learners, somewhat along the lines of
    > http://bit.ly/intermediate-python-projects .
    >
    > So here's a question for people who remember coming up from
    > beginner: as you moved from exercises like those in Learn
    > Python the Hard Way, up to your own self-guided work on small
    > projects, what project were you working on that made you feel
    > independent and skilled? What program first felt like your own
    > work rather than an exercise the teacher had assigned?
    >
    > I don't want anything too large, but big enough that there's
    > room for design, and multiple approaches, etc.


    I wrote a library supporting fixed length field tabular data
    files. It supports reading specifications for such data files
    using configparser for maximum verbosity, plus a few other
    shorthand specification formats for brevity. Due to the nature of
    my work I need this library in virtually all my other projects,
    so I consider it a personal success and found it interesting to
    build.

    Similar packages on PYPI made many different design decisions
    from the ones I did, so it seems like fruitful design discussion
    points could arise.

    For example, two major design goals in the beginning where: 1.
    Ape the interface of the csv module as much as possible. 2.
    Support type declarations.

    The former was a big success. I've had instances were switching
    from csv to a fixed file required changing one line, and of
    course if a person were learning the library their knowledge of
    reader, writer, DictReader and DictWriter would help.

    The latter design goal was a failure. Most published fixed-length
    data file specifications include data types, so it seemed
    natural. But after trying to write programs using an early
    version I ended up removing all traces of that functionality.

    One advantage of this idea as a project for an intermediate
    programmer is that the implementation is not complicated; most of
    the fun is in the design.

    --
    Neil Cerutti
    Neil Cerutti, May 20, 2013
    #3
    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. Chris Angelico
    Replies:
    0
    Views:
    1,021
    Chris Angelico
    May 19, 2013
  2. Demian Brecht
    Replies:
    0
    Views:
    105
    Demian Brecht
    May 20, 2013
  3. Thomas Murphy
    Replies:
    0
    Views:
    89
    Thomas Murphy
    May 20, 2013
  4. Terry Jan Reedy
    Replies:
    0
    Views:
    88
    Terry Jan Reedy
    May 20, 2013
  5. Chris Angelico
    Replies:
    0
    Views:
    84
    Chris Angelico
    May 22, 2013
Loading...

Share This Page