|Think about Loose Coupling|
I worked with BASIC, C++, Java, 8086 assembly, architecture, Yacc/Lex, Concurrent Pascal, COBOL (shudder), and VB6 before i really starting using Perl. I was very slow at grokking Perl, but now that i have fairly good knowledge of the language, i feel that other languages (except Lisp and Scheme) are a piece of cake. Programming itself is still hard though. :)
I have always believed that Perl is just not a good first language to start with, but that really depends on the person learning. Some people just have a better understanding of problem solving than others. For example, when i worked at the unnamed Microsoft shop coding VB, one of my peers (who was older, but very green) asked me to come up with a small project for him while he studied for his certification. I suggested a calculator program with a GUI - after all, VB makes GUI's a breeze. I was not surprised to see that his code did not make use of an array for the buttons. Instead he had assigned each button to variables like Button1, Button2, etc.
What i was surprised to see, was his cubicle-mate, who was studying to be a project manager. This guy had no real programming experience either, but had decided that he was tired of studying manager-type material and wanted to have a go at a calculator. He had used an array - instinctively. Two years later maverick and myself visited the office just to say hello. I was again surprised to see the second co-worker reading a Perl book. :)
I guess the best way to introduce someone to programming is to give them a tour of the different languages and let them decided which one(s) they want to program in. If they don't like any of them, they probably don't like programming. If they choose Lisp, leave 'em alone! ;)
L-LL-L--L-LL-L--L-LL-L-- -R--R-RR-R--R-RR-R--R-RR B--B--B--B--B--B--B--B-- H---H---H---H---H---H--- (the triplet paradiddle with high-hat)
In reply to (jeffa) Re: Learning Perl as a First (programming) language