3 ms·
First Language's Don't Matter
- pashields 15y agoI can't agree with this. It's true that many languages work well as starters, but there are certainly some that don't. I think java is a classicly bad first language. There is a lot of ceremony which will take you a considerable amount of time to understand (public static void main) and it's also heavy handed on object orientation. Whether these things are useful in long run is debatable, but it's an amazing amount of conceptual overhead. Worse, unlike the overhead of low-level language like C, the pain in a language like Java comes from complex abstractions. Understanding pointers is difficult for many people, but it's mostly based on whether you understand how in memory storage works. There's a more straight forward path to that than to understanding the how/why of OO.
- kls 15y agoOver my career I have taught a lot of people to program and in doing so I have found that the number one factor in someone learning to program is easy set up of the languadge and the number 2 is quick feedback. In my experience Lingo in Macromedia Director was probably the fastest language that I saw people pick up, Visual Basic was another good one for quickly grasping concepts and finally modern JavaScript is a good choice. I do believe that first languages do matter as ones that impart a lot of rules and constructs seem to require more abstract concepts to click before a student can produce in said language. I personally would not teach a first language to an individual if it did not have some form of REPL type development pattern. In saying so, I generally try to teach people languages that are widely uses as most people that I have taught where learning as a job function and would be using their skills commercially. That being said, I tend to opt for JavaScript as a teaching languadge because it fulfills my main two requirements (easy set-up and quick feedback). It is also a skill in high demand.