software engineering foundations?

Discussion in 'Python' started by skip@pobox.com, Jul 22, 2008.

  1. Guest

    Sorry for the off-topic-ish post. My son (a fairly junior sysadmin type)
    mentioned to me today that he was looking for online courses for Perl. (I
    don't hold that against him. Perl is still a lingua franca in the sysadmin
    realm.) In my work I have from time-to-time had to pick up and maintain
    scripts (generally shell/Python stuff) which non-professional programmers
    have written. It's never what you would call a "pleasant" task.

    There are software construction skills which are entirely distinct from the
    language in which you are programming. We can tout object-oriented,
    structured programming, test-driven development or other software
    engineering techniques, but there is a body of knowledge out there which is
    orthogonal to the language in which the code is written. People who are not
    professional programmers often lack those skills and their code shows it.

    Are there any good online resources for this "software structure" axis?
    Googling for "object oriented programming tutorial" yields a bunch of stuff,
    much of it language-specific. I'm trying to find something a bit more
    general than that though.

    I Googled for "software engineering tutorial" as well. Most of the early
    hits were either inaccessible (ACM subscription only) or contents-like stuff
    (conference announcements, for example). Number eight on the list was this
    rather promising page:

    http://www.cmcrossroads.com/bradapp/links/swe-links.html

    It was last updated over 10 years ago. I find it hard to believe that
    so little has changed in that time that some other page with more recent
    references hasn't percolated to the top of Google's page rank! After all,
    the Web has grown just a tad in that timeframe.

    I have a sneaking suspicion that what I'm looking for is out there, but that
    I'm not asking Google in the right manner. Any and all pointers/suggestions
    cheerfully accepted.

    Thx,

    --
    Skip Montanaro - - http://www.webfast.com/~skip/
    ------
    ELON MUSK: If fuel cells were good, don't think you'd see them somewhere,
    like maybe in a laptop or a cell phone or a $200 million military satellite
    maybe? And yet, where do you see them?
    SPENCER MICHELS: You don't.
    ELON MUSK: Exactly.
     
    , Jul 22, 2008
    #1
    1. Advertising

  2. Paddy Guest

    On Jul 22, 7:52 pm, wrote:
    > Sorry for the off-topic-ish post.  My son (a fairly junior sysadmin type)
    > mentioned to me today that he was looking for online courses for Perl.  (I
    > don't hold that against him.  Perl is still a lingua franca in the sysadmin
    > realm.)  In my work I have from time-to-time had to pick up and maintain
    > scripts (generally shell/Python stuff) which non-professional programmers
    > have written.  It's never what you would call a "pleasant" task.
    >
    > There are software construction skills which are entirely distinct from the
    > language in which you are programming.  We can tout object-oriented,
    > structured programming, test-driven development or other software
    > engineering techniques, but there is a body of knowledge out there which is
    > orthogonal to the language in which the code is written.  People who are not
    > professional programmers often lack those skills and their code shows it.
    >
    > Are there any good online resources for this "software structure" axis?
    > Googling for "object oriented programming tutorial" yields a bunch of stuff,
    > much of it language-specific.  I'm trying to find something a bit more
    > general than that though.
    >
    > I Googled for "software engineering tutorial" as well.  Most of the early
    > hits were either inaccessible (ACM subscription only) or contents-like stuff
    > (conference announcements, for example).  Number eight on the list was this
    > rather promising page:
    >
    >    http://www.cmcrossroads.com/bradapp/links/swe-links.html
    >
    > It was last updated over 10 years ago.  I find it hard to believe that
    > so little has changed in that time that some other page with more recent
    > references hasn't percolated to the top of Google's page rank!  After all,
    > the Web has grown just a tad in that timeframe.
    >
    > I have a sneaking suspicion that what I'm looking for is out there, but that
    > I'm not asking Google in the right manner.  Any and all pointers/suggestions
    > cheerfully accepted.
    >
    > Thx,
    >
    > --
    > Skip Montanaro - -http://www.webfast.com/~skip/
    > ------
    > ELON MUSK: If fuel cells were good, don't think you'd see them somewhere,
    > like maybe in a laptop or a cell phone or a $200 million military satellite
    > maybe?  And yet, where do you see them?
    > SPENCER MICHELS: You don't.
    > ELON MUSK: Exactly.


    Is this the kind of thing you are after?
    http://www.swc.scipy.org/

    "Software Carpentry"

    Overview

    Many scientists and engineers spend much of their lives programming,
    but only a handful have ever been taught how to do this well. As a
    result, they spend their time wrestling with software, instead of
    doing research, but have no idea how reliable or efficient their
    programs are.

    This course is an intensive introduction to basic software development
    practices for scientists and engineers that can reduce the time they
    spend programming by 20-25%. All of the material is open source: it
    may be used freely by anyone for educational or commercial purposes,
    and research groups in academia and industry are actively encouraged
    to adapt it to their needs.


    - Paddy.
     
    Paddy, Jul 22, 2008
    #2
    1. Advertising

  3. Paddy wrote:

    > This course is an intensive introduction to basic software development
    > practices for scientists and engineers that can reduce the time they
    > spend programming by 20-25%.


    Judging from the table of contents and a quick sampling of a few
    lectures, that's mostly about programming (with a strong Python
    flavour), and the material about the engineering process is pretty
    simplistic, I'd say. On the other hand, the bibliography does have the
    following to say about the book I recommended:

    In short, it is everything I wished someone had told me before
    I started my first full-time programming job.

    so I guess it's not all that bad ;-)

    </F>
     
    Fredrik Lundh, Jul 22, 2008
    #3
  4. Aahz Guest

    In article <>,
    <> wrote:
    >
    >There are software construction skills which are entirely distinct from the
    >language in which you are programming. We can tout object-oriented,
    >structured programming, test-driven development or other software
    >engineering techniques, but there is a body of knowledge out there which is
    >orthogonal to the language in which the code is written. People who are not
    >professional programmers often lack those skills and their code shows it.
    >
    >Are there any good online resources for this "software structure" axis?


    While this doesn't really directly address your question, I think that
    anyone who wants to do serious programming of any sort really should read
    _The Mythical Man-Month_ by Fred Brooks -- make sure to get the 25th
    anniversary edition.
    --
    Aahz () <*> http://www.pythoncraft.com/

    Adopt A Process -- stop killing all your children!
     
    Aahz, Jul 23, 2008
    #4
    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. Ilias Lazaridis
    Replies:
    0
    Views:
    454
    Ilias Lazaridis
    Jan 16, 2005
  2. Replies:
    0
    Views:
    892
  3. ACM SIGSOFT 2004 Publicity Chair
    Replies:
    0
    Views:
    331
    ACM SIGSOFT 2004 Publicity Chair
    Jan 21, 2004
  4. Replies:
    0
    Views:
    646
  5. Replies:
    4
    Views:
    342
Loading...

Share This Page