Comment Re:assembly (Score 1) 759
I mostly agree with you. However, as an adjunct professor at a local college, I find that students "get it" more easily and more completely when I start with the free-form conceptual and work down to the physical. For instance, I teach a simple scripting language or simple BASIC first, then a procedural language (C), then compiler theory (which incorporates assembly language). This takes them from the "what do I want to do" stage down to the "how the iron does it" stage.
In the process, the students learn that the language is less important than understanding what you want the system to do. And, they learn that all languages are *NOT* alike: they each have their strong and weak points. For instance, I wouldn't want to write a SCSI disk device driver using C++ templates and virtual classes (although the idea has merit). By the same token, I wouldn't want to write a high-level web-based stock valuation and numerical analysis program using BASIC.
What language should you learn next?
The real question is: do you have enough skill to pick up a language spec and work your way from "hello, world" to advanced techniques? Do you have the time, desire, and "drive" to learn the new language?
If you answer "yes"... you'll do fine.
In the process, the students learn that the language is less important than understanding what you want the system to do. And, they learn that all languages are *NOT* alike: they each have their strong and weak points. For instance, I wouldn't want to write a SCSI disk device driver using C++ templates and virtual classes (although the idea has merit). By the same token, I wouldn't want to write a high-level web-based stock valuation and numerical analysis program using BASIC.
What language should you learn next?
The real question is: do you have enough skill to pick up a language spec and work your way from "hello, world" to advanced techniques? Do you have the time, desire, and "drive" to learn the new language?
If you answer "yes"... you'll do fine.