Words Of Wisdom said: Entroper said: NJ5 said: That is very good advice. I started to learn programming with lower level languages such as Pascal and C, so that's the route I'd take. Starting with Python is probably also OK, although I fear for the new generation of programmers who can go years without knowing what's actually happening behind the scenes (which is important no matter what language you use, unless you just want to whip out a couple of simple scripts). |
I'm with you on that. That's why I think starting with C++ is the best way to go (obviously get all the basics of procedural programming down before introducing classes and inheritance and all that jazz). If you begin with a lower level language like C, you will learn to "speak computer", and once you can do that, you can learn any language you want for whatever purpose you want. |
Why C++? Why not drop down even further into asm? Understanding stack logic and register processing brings one even closer to machine code than C right? ^_^ |
It's definitely possible to start with asm and then keep moving up the ladder, and I'm sure you'd get many good programmers with that approach. However, I'd say that starting with C gives you about the same results, without scaring off some of the people who wouldn't be attracted to asm as a first language.
It's a matter of finding the sweet spot, I for one think that C is a good place to start, with asm and higher level languages afterwards.