http://www.perlmonks.org?node_id=25845


in reply to How to learn Programming
in thread Learning Programming

I would probably start off by installing a Linux box. With a normal install of linux you should have most(Minus VB) of the compilers and interperters that a programmer needs. Then decide which language you would like to learn.

I would suggest a more restrictive language at first. It will make your programs flow better and give you a better understanding of what perl is actually doing for you. This also will show you why so much of us love perl. A more stuctured language like C will also give you good code formatting skills. A compiled language like C will also give you DEBUGGING Skills (which one of my Profs at GVSU says the CS classes are missing now).

But if you want to dive into PERL get a linux box up and a copy of Learning PERL and read it. Then try the stuff in it. Then get the Perl Cookbook. Then read it.

--BigJoe

Learn patience, you must.
For a Perl Monk craves not these things.

Replies are listed 'Best First'.
Structured vs. Unstructured Languages
by gryng (Hermit) on Aug 03, 2000 at 02:47 UTC
    I want to start this post out with an "ommmmm". That's right clear your monkish spirit and relax.

    Now, we all agree that there are two parts to programming, that which is the language, and that which is beyond the language -- what you created, a part of you, and thus a mirror, and so, a problem solver.

    They key to becoming a programmer is to become a problem solver, and impart that skill into your programs and thus breath into them life.

    However, it would be easy to say that the programming language is not important, a mask or sheet that covers up the true nature of the problem solver you create -- something that hinders and hides your efforts.

    It is so that the language is a mere contrievance and hinders the unwary.

    But it is also so that each language has in itself it's own beauty, like a well adorned mask, that in some ways enhances what is behind rather than hide it.

    Therefore the choice of your programming language shapes the nature of your problem solver. Unstructured languages lend to the programmer power like the water fall and bee-hive. Structured languages lend to the programmer power like the great thinkers and craftsmen.

    And for those that start off, it may be dangerous to use the untamed power of the unstructured language, but it offers them a kind of greed that lets them further the developement of the problem solver.

    But for those that start off with structured languages a greater discipline and drive is needed, because the power of control requires more energy to develop as great of works as the unstructured languages which lend the power of titans to the initiate.

    And return to the center, breath out,
    Gryn

      I appreciated your post :)
      I'm particularly interested in answering (better, just trying to) this question:
      Do language affects intellicenge?

      I spent some time teaching programming, and I always started saying to the class: "Solve the problem using pseudo-code or other formalism, then write program. Writing the program is merely a linguistic matter."

      But I'm not truly convinced :)
      From this point of view, Perl is very interesting.

      see you
      Larsen

      If you're interested in languages, natural and artificial, I suggest reading Steven Pinker, "L'istinto del linguaggio". Sorry, I don't know original title: it could be something like "Language Instinct".
        Languages aren't just superficial. There are many that would say that a language (and here I am speaking of computer languages and spoken languages) is mearly a tool used to get a job done -- solving a problem, or communicating an idea.

        It's easy to see that while this is true, languages can be like any tool, they can get in the way of things, it is also not always the case. Once a language is created it takes a life of itself and becomes more than just a tool. Sure, it can be frustrating to use some language to solve some problems, or communicate some ideas. But look at it the other way around, most languages have an area where they shine.

        For example(s) (both IMHO) Perl shines at power programs, those that can be created quickly and easily, and work! English, shines at poetry and illustration. Perl isn't very good at tasks that need alot of structure, and similiarly English lacks a consistant structure as well (which is why both lend themselves so well to dialects).

        So if a language can enhance a particular aspect of a program, then it is the thing to use. I would consider Perl an excellent language to teach in. This is because it strips away alot of the menial (sorry, I do not mean this work in a demial way -- I mean tasks that you do not want to do, but have to in order to force structure) tasks that you have to do in other languages that are more structured. By getting rid of the "cruft" you can concentrate less on the language specific aspects of programming and focus instead on problem solving techniques and pitfalls (and I think many of you can agree with both, especially the latter, when it comes to Perl).

        Anyways, sorry for the late reply, hopefully you'll still receive it.

        Ciao,
        Gryn