Matt Singleton on 20 Mar 2007 23:24:34 -0000


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PLUG] Educational Languages


One big problem I see with starting with a rigorously OO language like Java or (to a lesser extent) C++, is that the OO paradigm can be rather confusing to a beginner. In my opinion, the OO way of thinking is best eased into after the student is already familiar with the more basic ideas like looping and various other methods of program control. That's not to say that good OO habits can't be cultivated from the beginning, but forcing a student to type out arcane commands like:

public class Hello {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

when they haven't yet even mastered for loops can be a bit confusing. The beauty of Python is that the OO paradigm can be built up slowly and consistently. That's not to say that beginners can't learn Java or C++. The thing I like so much about Python as a first language is that it allows a gradual and logical progression without any artificial aids. No need for the frustrating "shells" that some teachers provide, which I find extremely frustrating.

public class ReallySimpleProgram {
    public static void main(String[] args) {
	// Put program code here, n00b
    }
}

Matt

Alex Launi wrote:
I have the feeling no one else on this list is going to agree with me but I'm just out of high school and the languages we were taught in our cs classes were java and C++. Currently the AP Board has java for AP computer science so for your students (I am assuming these are high or middle school students) so starting them on java could be beneficial for them later if they decide to take the ap cs exam. --Alex Launi

Matthew Rosewarne wrote:
Can anyone recommend a good programming language for teaching beginners? Currently my old school uses Pascal, but that's so unpopular that not many bindings exist for it, limiting what students can do with it. Is there any other language I might suggest they replace Pascal with that would be a decent substitute?
------------------------------------------------------------------------


___________________________________________________________________________

Philadelphia Linux Users Group -- http://www.phillylinux.org
Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
General Discussion -- http://lists.phillylinux.org/mailman/listinfo/plug
___________________________________________________________________________
Philadelphia Linux Users Group         --        http://www.phillylinux.org
Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug

___________________________________________________________________________
Philadelphia Linux Users Group         --        http://www.phillylinux.org
Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug