in reply to Essential skills for any software developer

The more I know on programming, the more I like Tom Christiansen's cite:

A programmer who hasn't been exposed to all four of the imperative, functional, objective, and logical programming styles has one or more conceptual blindspots. It's like knowing how to boil but not fry.

-Tom Christiansen

citromatik

  • Comment on Re: Essential skills for any software developer

Replies are listed 'Best First'.
Re^2: Essential skills for any software developer
by Fletch (Bishop) on Aug 08, 2007 at 17:00 UTC

    Similar but orthogonal: get exposure to some sort of event driven environment (like a GUI environment, or POE). Getting used to something outside your code dictating the sequence in which things happen provides more natural solutions for some problem domains.

      This may be somewhat Heretical, but POE is so complex and hard to get started with that I wouldn't recommend it as an intro to event-driven programming. Even Visual BASIC or some Java GUI thing would be a better choice.
Re^2: Essential skills for any software developer
by gam3 (Curate) on Aug 10, 2007 at 13:52 UTC
    A programmer who hasn't been exposed to all four of the imperative, functional, objective, and logical programming styles has one or more conceptual blindspots. It's like knowing how to boil but not fry.

    -Tom Christiansen

    I did some research on this and thought that what I found my be of help to others:

    Examples of functional programming languages:
    * APL, Erlang, Haskell, Lisp, ML, Oz and Scheme.

    Examples of Imperative programming languages:
    * Fortran and Algol. Others include Pascal, C, and Ada, Perl.

    Examples of objective programming languages:
    * C++, ruby, python, perl.

    Examples of logical programming languages:
    * Prolog

    See also 34786.

    -- gam3
    A picture is worth a thousand words, but takes 200K.