I would recommend that the beginning programmer start with C. C is a relatively simple language at the beginning stages. However, despite its simplicity, it teaches the beginning programmer many ideas that can be used in further studies in different languages. While C itself might not serve the needs of a given programmer in his or her career, C is a good first-step on the path to learning programming in general.
For example, a beginning programmer will probably know little about variables and functions beyond what is taught in a typical mathematics course. C allows the programmer to understand the process of defining variables as a certain type, and it allows the programmer to see the idea of calling a function. Java certainly does make writing simple code just as easy, but the syntax is confusing at first. For example:
CODE
int main(void) // C
public static void main(String[] args) // Java
The knowledge of C need not be very deep. Some brief teaching on variables, functions, if-else statements, and loops is all that is needed. In fact, the C that needs to be taught can be just a few lessons long. However, a programmer who already understands these things will be less intimidated by longer method headers and such things in Java.
Of course, I'm a huge assembly fan, but that's not exactly what this poll is asking
=P
Reply