Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

RE: Perl as a first language

by tenatious (Beadle)
on Aug 22, 2000 at 06:03 UTC ( #28957=note: print w/replies, xml ) Need Help??

in reply to Perl as a first language

The language is not the issue, or it shouldn't be. The thought processes, the discipline, and the math are what really count.

When I was first learning basic on an apple II (Ctrl-b got you into basic, from assembler or some other equally useless language), I had a math teacher who told me, "Pursue algebra and it will make you a better programmer, pursue programming and it will make you a better mathematician." It's true enough... How many times do you perform a simple assignment or a join/grep/split that you couldn't have done without algebra?

When you are first starting out, it's critical that you predeclare your variables and comment your work. If you don't, you don't think about what you are doing long enough to remember it. Putting into plain English what you are doing makes it clear to yourself what you have to do with a given sub or function. It's particularly useful when you start to do OO stuff where you've got to be really careful about what each class and object does.

The other idea is the thought processes. I have noticed that some people just do not understand that a computer only does what you tell it to do. How often have you heard the complaint, "My computer is possessed!" ... (ehem... except when it really was, by BO...) The point is that all the frustration with "teaching" a computer to do what you want it to do, can be avoided if you sit down and think through each step calmly realizing that each statement is telling the machine to do something in a particular way to a particular thing.

In my opinion, these are all things that can be taught before a child starts to program. If your children are old enough to begin using numbers, spend time with them drawing clock faces with one hand, ask them to count at all times, do their math homework with them, stretch them beyond what their school is willing to teach, play them in games of chess when they get old enough, make an effort to spend time with them doing intellectual work. It is an effort that you will be rewarded from as their concentration grows. First of all, it will teach concentration and attention to detail, second of all, they will remember the time that you spend with them... and it will be a positive reinforcement kind of thing. Mostly, if you show that it matters to you, they will likely make it matter to them.

Replies are listed 'Best First'.
(jeffa) RE: RE: Perl as a first language
by jeffa (Bishop) on Aug 22, 2000 at 19:31 UTC
    "Pursue algebra and it will make you a better programmer, pursue programming and it will make you a better mathematician."

    Such an awesome insight. I remember when I first started programming on a TI-994a back in 1981 . . . I didn't really understand how strongly math tied into programming.

    On the flip side, I remember having a difficult time finding a pratical use for algebra and trig, my teachers just said "Learn it! You'll need it!" but never said WHY.

    All I needed was someone to say - "hey kid, learn this stuff and you can make video games one day!"

    All well's that end well, though, if I was good at math, I probably never would have pursued music . . .


RE: RE: Perl as a first language
by fraktalisman (Hermit) on Sep 05, 2000 at 23:54 UTC
    Well, my first language had been Commodore Basic V3.5, then I even had to downgrade to Basic V2 (CBM 64). I got me a book on assembler, too, but never really learned it. On a PC, I went on with GWBasic. This is all still in my head, and perl offered so many new horizons. A limited language tends to limit your thoughts, at least in my case. My colleage has never done any 'real programming', he is now working with Macromedia's ActionScript and had a glimpse on my perl scripts and he even understood *a little*. I guess, Perl as a first language might be a good idea. Give the people some good examples that are well documented and then let's see ...

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://28957]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (5)
As of 2022-10-06 06:18 GMT
Find Nodes?
    Voting Booth?
    My preferred way to holiday/vacation is:

    Results (26 votes). Check out past polls.