(dws)Re: Perl in school
by dws (Chancellor) on Mar 03, 2001 at 12:08 UTC
|
Perl is a great tool. Someone can teach you about a great tool, but to really master it, you're going to have to learn it. Learning doesn't necessarily follow from teaching.
Schools try to teach at a pace designed to fit a fixed amount of material into a fixed amount of time, and the content is often designed to satisfy some arbitrary goal (such as passing an AP exam). It's an attempt at a one-size-fits-all solution.
Is Perl the best language to teach CS? I don't think so. It's too easy to get sidetracking into nifty features, losing the essense of what's being taught. (C++ isn't any better as a teaching language, though with C++ you're trying to get past the language to solve a problem, as opposed to having lots of ways to solve a problem, each one a bit shorter than the previous.)
Better, I think, to treat Perl as a self-paced, independent study project. Pick a problem to solve that interests you, and learn enough Perl to solve it. Then learn a bit more Perl to solve it better. Then study how others have solved similar problems, and try again. Read articles. (merlyn has some great ones to study on his site.) Learn about benchmarking and profiling, profile your code. Find a good Perl programmer and ask them to review your code. Post it here. Take in the feedback.
That's the way to learn.
| [reply] |
Re: Perl in school
by Chmrr (Vicar) on Mar 03, 2001 at 08:08 UTC
|
As a Senior in High School currently taking the AP Computer Science course, I can readily associate with the above sentiments.
My biggest beef with the course is that, despite being called AP computer science, that's not what they're teaching. They're teaching "advanced -- but crippled -- C++ using the AP board's crutches." For those that arn't familiar with the course, it depends very heavily on a group of "AP classes" such as apstring, apvector, apmatrix, apqueue, and so on. Thus, people learn to write code which depends on classes they'll never see again. This is, needless to say, a Bad Thing.
My other problem follows directly from this. The course does teach how to use these structures -- but not why and when to use them, nor how they are done "behind the scenes." It is my belief that programming depends not just on how to twiddle the dials on the black box -- but more importantly, on knowing when to use which dial, and how each one works. Unfortunatly, this is apparently the last thing on the college board's mind..
This leads me to their recent decision to switch the course over to Java, starting in 2003-2004. The parts of Java left out also seem to be fairly off-the-wall -- still not talking about the values of pre- and post-increment?
</rant>
Getting back to the point, I think that AP CS is fairly fundamentally broken. Furthermore, given the size and ponderousness of the organization behind it, it is unlikely to change. Thus, I would join with others in suggesting that we try to bring Perl into the school systems; but one reason would be to help fill the mental gap left by other computer science courses. Given that Perl is rather high level (compared to some others, at least), as well as being fast to write short snippets in, I would think it a perfect fit for this problem. Plus, I happen to think Perl is cool. ;>
perl -e 'print "I love $^X$\"$]!$/"#$&V"+@( NO CARRIER'
| [reply] |
|
I would like to speak in support of Chmrr's position here not because I've taken AP Computer Science, but because I have seen its consequences.
I'm a junior in college now and past most of the basic CSci courses required for the major. Now in my classes I'm starting to see a lot of people who never had to take the beginning courses that I did because they got out of them through AP....and it seems to me that a lot of these people didn't get the same fundamentals that I got through my first university CSci classes. This slows the pace of the class down and prevents my professors from covering all their material. Now this obviously isn't AP's fault completely, but I think their curriculum has had a noticeable effect.
I am all for getting people started in the fundamentals of programming the best way that we can find, and if that means independently encouraging young people to take up Perl, then that's definitely something worth considering.
| [reply] |
|
I'm not sure if the downfall of grasping the fundamentals is having AP computer
science courses (which allow students to actually skip the intro to CS in college)
in high schools today or if it is just a failure
on the part of the schools finding qualified teachers to
teach this type of subject to the students with the right curriculum. The main
problem seems to be is that the teachers are not
teaching the fundamentals or teaching them correctly of the languages to the students.
It could be for several reasons:
- not qualified teachers
- the school board misunderstanding of what should be taught and tested
- Or just a terrible curriculum of the courses
In these cases, it's almost not worth having the actual course
taught to H.S. students - if what they learn is incorrect or outdated.
Not having the basics down is a major downfall to many who
try to learn a programming language. Often times, they do not
realize that the basics or fundamentals are missing or highly misunderstood
until they try to produce an actual program - in which they have severe
problems with. So, I guess my thoughts are if they have a program at
this level(h.s. and below)..perl, c/c++, or java should not even be taught
until they(school administration) have a firm grasp as to what the students are going to be
achieving from taking the class, as well as understanding that their course
is substituting the intro to cs courses (if the ap tests are passed).
Other than that, I think it'd be a
great idea to add perl to the languages being taught in schools.
| [reply] |
Re: Perl in school
by Beatnik (Parson) on Mar 03, 2001 at 19:10 UTC
|
When I was in High School, all I got was VB (and the teacher nearly flunked me for using events).
In Uni it's kinda hard to motivate the school to teach Perl, since they're kinda stuck on Java. Most teachers that do Java, are newbies themselves (and used to teach COBOL *shiver*).
My math professor looked at Perl briefly and decided to go for Python to teach freshmen the concepts of programming (altho I pointed out that the matrix computations he wanted to do, were not THAT hard in Perl :) ).
The only people really aware of what Perl is, are the Sys Admins, and I doubt they have time to teach.
Greetz
Beatnik
... Quidquid perl dictum sit, altum viditur. | [reply] |
Re: Perl in school
by bladx (Chaplain) on Mar 03, 2001 at 08:50 UTC
|
Hey guys... i'm a junior in High School heh... so I think i'm in the same boat here. I take as many computer programming classes at my school as I can... but they only really teach Java currently... and Java is not really that fun of a language to learn since it doesn't really contain any features I will be utilizing in the future for internet related scripting stuff that I will be doing instead. My computer teacher is pretty smart in this area, don't get me wrong... but still nonetheless uneducated in the ways of Perl. I third the motion that school systems should start teaching Perl as an option in schools as well as have *qualified* teaching staff there as well :) That's all the beef I have on this subject...
bladx ~ ¡muchas veces tengo preguntas! | [reply] |
Re: Perl in school
by gopher (Monk) on Mar 03, 2001 at 23:16 UTC
|
yeah, im a sophomore in high school, and perl classes would be a great aide in my learning. however, i dont think this is going to happen. the only thing in my whole school that relates to computer programming is one book in the library on how to write fortran 77 code. ive been trying to get a perl class, but there isnt enough support at my school. well, at least you guys are making some progress.
also, in regards to *nix in schools, my admin said they didnt have the time/capabilities to setup *nix boxes, but i brought up the possibility of using *nix bootdisks, such as DLX or Coyote. he said if i wanted to, that was fine, so you could possibly ask your admins about this.
Mr. Zoothornrollo, hit that long lunar note, and let it float.
| [reply] |