First of all there is no "best" language to learn first, the best thing to learn first are the concepts of software design. I would even go as far as saying it is important to understand hardware architecture, number base systems, logic and bit manipulation before delving in to languages and syntax (although you can skip these but you might end up wishing you hadnt)
Now C is my favourite language, once you get your head around pointers the rest of the language is childs play. If you know C you can easilly adapt to C++ and Java as the syntax is very similar.
Now what language is best to learn? First ask yourself how to get from A to B, more specifically what A and B are? In other words, why do you want to learn to program? What are your objectives? Do you want to write web applications, games, desktop applications, embedded applications? What you want to do with your program is dependant on what language you will write it in.
For the Web, you might as well learn the concepts and structure of HTML, XML, Java, Javascrip and PHP for starters.
For games, well you are best learning C and C++
For applications, you are best learning C and C++ (unless you want to write for mobile devices then Java will help too)
For embedded systems you will need to know C,C++ and assembler and any language dependencies on the system you are writing for.
Assembler I hear you gasp? I love it, it is essential if you want to debug at a low level.
So much information, so many choices. Sorry its the best I can do with the limited information I have about what you want to do.
__________________
Thyme wounds all heals
|