First of all, I couldn't decide the right words for title after reading How old is "too old"? question. I still can't decide with old, middle-aged, expert or professional.
As you know, there are a lot of developers over 35-40 years old in StackExchange. They are helping to beginners and having less experience people. They are so valuable users. And mostly, their some answers are awesome becauase of good analyzing and adding their experience to answers.
When I see this kind of users, they all started programming with kind of Lisp, Pascal, Cobol or Basic type programming language. These are the first modern programming languages. And I think these people are so lucky learning programming with them first because of they are close to machine language. Maybe they learn the basics of programming better. Now it looks they are working easly with object orianted programming.
I'm graduated from computer engineering a year ago . First year, we superficial learned C programming language. Second year, there are C# and Java course. But when I try to learn this languages in colluage, I always feel like I missed something. Learning languages, structures, libraries.. if fine but teachers never teach us "How the codes working in machine?". They teach us the programming language which is popular in software market. So kind of they prepare us for companies. They think If we learn assembly or fortran, we can't easly find a job according to Java or C#. Unfortunately, at these days, this is kind of true.
Could be better learning first Assembly, Fortran, Cobol instead of Java and C#? Are we unlucky?