Il n'y a pas de meilleur langage, il y a des langages couvrant des domaines différents
Il y a plusieurs types de langage. Un seul langage ne sert pas en grand chose. On risque de ne pas posséder les concepts non traités par le langage en question.
C'est pourquoi je verrais bien une obligation pour tout programmeur en herbe de s'initier à plusieurs langages, et ensuite de développer ses connaissances sur un langage particulier.
par exemple:
- un assembleur : sinon comment comprendre comment une machine fonctionne ? Comment produire des programmes performant si on ne connait rien à l'architecture d'un CPU?
- C : car c'est obligatoire.... beaucoup de langages s'interface avec c.
- Java (ou à la rigueur c++ ?): pour le côté objet, très formateur de part les concepts supportés.
- Forth ou Postscript ou un autre langage de type "à pile" : c'est un premier pas vers les langages fonctionnels.