I'm going to start getting into programming on my own time and I'm wondering which one will start me out with a strong foundation? Which one will help me out the most to get a strong grasp on CODING (darn you Dr. of Dunk) language? If it helps, I know how to code HTML very well; but that probably shouldn't count. :grin: Rep for all helpful answers, or at least those that show effort.
C++ probably will give you the best foundation if you're serious about it. Java or Python are also very viable options for starting up though.
C. Without C, there is "JavaS ript" (or "E_MA S_ript), "_#", "_obol", "_++", and "Visual Basi ". Ooops. I'll wait until the 5th sar_asti_ reply. :_ool:
Alright. I'll start with C++, that's what seems to be the starting point from some people I talked to.
Cobol and Basic are not similar or related to C at all. That said, C is the one language that gives you the best foundation. C++ and C# are direct descendants of C. Perl, PHP and JavaScript derive a good deal of their syntactical structure from C, and these are three of the most important/widely used languages as far as web applications are concerned. If you know C, you can easily learn any other language. Except for Scheme, of course.
Learning SQL is extremely helpful. People with even foundational SQL knowledge can do good work in Business Intelligence organizations.
If you really want to have a good FOUNDATION, you should start with assembly language machine code using binary 1's and 0's
I started with C and I found it very useful when I later tried to learn other languages (including Perl, Java, C++).
learn c then the nuances of object oriented languages like c++ and java,android development is java oriented if you have any interest in that.
I would not start with a low level, procedural, or scripting language - C, Javascript, PHP, Assembly, etc. I would start with a language that provides a good object-oriented programming (OOP) foundation. The two choices are C# or Java. I think you could get a well paying job doing either, but I think C# probably has the slight edge. Microsoft is always improving C# - so it is always on the cutting edge, whereas Java is never going to change. Once you know C#, then you can go into ASP.NET (be a web programmer), or learn DirectX (be a game developer), or learn desktop application programming. Learning C# allows you to go into a lot of different areas. I would not start with C++. C++ is a legacy programming language. Yes, it is still used everywhere. However, if you want to be on the cutting edge - C# is the future.
I would start w/OOP as mentioned above also. Java is relatively easy to understand, but C++ will allow you to learn some things like memory allocation that become necessary at times. Personally I thought pseudocode gave me the best foundation. Understanding concepts without being able to just randomly write something and check and see if it worked forced me to really understand the basics. At the same time, there's something to the "art" of being able to quickly iterate through possibilities because you'll never know anything. But that's something you can learn on the fly regardless.. so I think you should learn the basics conceptually well. Of course, you either need a good online course with solutions (that you don't look at until you force yourself to think through possibilities for a long time) or an instructor who can grade for you
If I were you, I'd start with java, C++ or C# for OOP. I'd also learn design patterns. Most good programmers can hop from language to language relatively easily if they apply themselves and aren't biased toward one language or another - it's just a matter of learning syntax. If you just want to find out if you like programming or not or you just want to goof off, you may want to try something like Python or VB .Net. You can get into web programming with these as well. My choice if I were to start programming right now? C#. With it I can make fat clients, thin clients, web pages, etc., and I have all the power of the .Net Framework and being able to branch off into other .Net languages if wanted/needed. I also become employable instead of some backroom hack looking for jobs in Afghanistan where the only people hiring your skillset are the Taliban.