What programming language should be learned first? And what was your first programming language?
Some articles on the topic
- Introductory Computer Programming Education by Philip Guo. The proposed curriculum is: Python and Unix command line, then Java within the Eclipse IDE, and then C and Scheme.
- Thoughts about the Best Introductory Language by Shlomi Fish. The author advocates teaching Perl as the first language.
- LOGO. The programming language created for teaching. Procedures and recursion can be learned in a graphical environment (see sample programs). Papert's book includes several success stories, e.g. the history of Logo in Russia.
- Alice is a 3D programming environment for novices. The programming language supports loops, conditions, and some OOP stuff (objects, properties, methods, events). 3D animations and even simple 3D games can be made with Alice. The program is written by dragging properties and selecting methods/arguments from menu. Should be attractive for the kids who dream of creating their own 3D game!
- Ruby – best introductory programming language by Tony Targonski.
- Seven Deadly Sins of Introductory Programming Language Design by Linda McIver and Damian Conway. The paper also contains recommendations for choosing a more "teachable" language.
- Teaching programming to kids. Discussion on Reddit.
- Just Let BASIC Die by Albert Sweigart. The author argues for using Python as a modern introductory language.
What are the criteria for choosing the first programming language? What language would you use if you wanted to teach programming to your kid? Why? And what was your own first programming language?
Your feedback is welcomed. Please use the comment form below.