Tôi đã giảng dạy lập trình được vài năm, vì vậy tôi có thể chia sẻ kinh nghiệm của mình với bạn. Tôi cho rằng C # là ngôn ngữ đầu tiên của bạn, vì vậy kinh nghiệm của tôi khi dạy lập trình cho những người chưa từng lập trình trước đây có thể hữu ích.
Trước hết, để tôi nói với bạn rằng học nhiều hơn một ngôn ngữ là điều mà mọi lập trình viên dày dạn nên làm. Nhưng điều này không có nghĩa là bạn nên học nhiều ngôn ngữ cùng một lúc nếu bạn chỉ mới bắt đầu.
Trong nhiều năm, các sinh viên đã chỉ ra rằng phải mất khoảng một năm để một ngôn ngữ được củng cố trong tâm trí (ít nhất là ngôn ngữ đầu tiên), đôi khi nhiều hơn một chút, đôi khi ít hơn một chút. Nếu bạn cố gắng dạy nhiều hơn một ngôn ngữ trong một năm, sinh viên có xu hướng trộn lẫn chúng và nhầm lẫn giữa các khái niệm và ngôn ngữ. Mặc dù các sinh viên tiến bộ, họ có rất nhiều thói quen xấu khó có thể loại bỏ sau này. Nếu bạn đang tự học, nguy cơ này cao hơn.
Tuy nhiên, tôi đã nhận thấy rằng nó hữu ích nếu bạn dạy hai ngôn ngữ với một cú pháp rất khác nhau. Khi hai ngôn ngữ lập trình trông thực sự khác nhau, nó giúp tâm trí thấy chúng là những thực thể thực sự khác nhau mà không gây ô nhiễm lẫn nhau. (Khi một ngôn ngữ lập trình giúp bạn hiểu các khái niệm khó trong ngôn ngữ khác, điều đó là tốt; khi một ngôn ngữ khiến bạn viết mã xấu bằng ngôn ngữ khác, điều đó thật tệ).
Do đó, khuyến nghị của tôi là nên sử dụng một ngôn ngữ lập trình cho năm đầu tiên của bạn. Ngoài ra, có thể là một ý tưởng tốt để học hai ngôn ngữ cùng một lúc miễn là chúng / trông rất khác nhau. Nếu ngôn ngữ đầu tiên của bạn là C #, chắc chắn tôi sẽ tránh xa C, C ++, Objective C và Java; và có lẽ là Python, Ruby và Javascript. Tôi sẽ khuyên bạn nên kết hợp C # với một ngôn ngữ chức năng như Haskell, Scheme, F #, Erlang, Clojure hoặc có thể là Scala.