Assembly
C
C++
Java
Lisp (or variants of it)
Perl
Python
Ruby
Doesn't matter really
Other
Forum DOs and DON'Ts
Please use CODE tags
Including your email address in a post is not recommended
My Blog
I put down Java, even though it wasn't technically my first programming language, however, it was the first language that I learned to a significant degree.
My first programming language was actually php. I wasn't too bad at it, but I wouldn't be comfortable doing much with it(although I was working on a bulletin board system way back when...)
I don't know about you guys, but if I was just beginning and came and saw this thread, my mind would just about explode!
I was thinking about this the other day actually.
The reason he/she came here was to get some advice and to be directed in the right path. But then they realize that not even experienced programmers agree on this topic... So who is right? Is anyone really "wrong"? I would then come to the conclusion that nobody has the right answer or that there simply was no right answer. Very nerve-racking for someone who is just starting out.
If a beginner would come to me, I would simply tell them to start out in a high level, general purpose language (not a toy language, though) and just get to work. After that, they can decide what to go after next, because after all, one will eventually have to learn more languages to suit their tasks at hand, be it out of curiosity or for work related purposes.
I was amazed at the length of this thread and hope a lot of beginners didn't run off. I know the biggest mistake I made was reading too much about what others had to say, and not enough time coding! So hit the books!
Just because a problem takes a long time, doesn't mean it's hard... It just means it takes a long time.
I learnt PHP first and am now starting on Python, although I've dabbled in C, C++, C#, and Java. I would recommend C# though.
*ducks*
Well, I'm still a beginner since I'm still learning my first programming language (I started Python three days ago), but I personally think that what language you choose doesn't really matter, as long as it fits what you want. I also know some more experienced programmers that agree with me.
What I will probably do (even if my opinion isn't very useful) is learn various programming languages, since each and every one of them is useful for something different, so I chose a simple language to learn as my first. Additionally, I recently discovered Blender, so Python would help write scripts for it...
Cheers!
Last edited by tholynch; July 31st, 2009 at 04:51 PM.
I think C/C++ is a fine language to start on. It's very easy to learn the basics (looping, if-else, variables, etc.) and then when your skill increases you can bring in the advanced stuff.
I learned on Java. One of the best advantages of learning on Java is that the syntax etc. is similar to C/PHP and other popular languages, yet Java is much more forgiving.
Linux since 2005
Ubuntu since 2007
Windows free since January 14 2011
back on that Windows crack :'( October 2011. I just love games.
No, C and C++'s (there's no "C/C++") basics also include the whole low-level stuff which is actually not easy. Without that, you don't go anywhere with those languages...
Nobody says that low-level stuff and pointers are easy. The people who propose C or C++ as first language propose them because they believe starting with the hardest and lowest-level stuff is better.
I agree that it depends on why you want to program. You should learn the language that will accommodate your immediate needs and be useful (and thus will be fun).
If you are going to become an IT specialist, then you should probably start with Scheme, C or ASM depending on the preferred angle and your requirements. These languages are good for learning the fundamentals. I think C++/Java/etc. are too heavy for the start.
For a research scientist/student it is more important to learn how to do calculations and plotting. I would opt for R or Octave (worse). Knowing how to do text processing is also a boon. You can make your pick here. I think even awk can be useful.
For an average person I think the main purpose of learning a programming language is to aid in occasional tasks. For this role I think none of the compiled and lower level languages suit. You should be able to write small and dirty scripts and not bother with issues like efficient loading of files into memory. You can make your pick here again.
And one more common reason is simple web design. This implies a yet another set of languages to try.
Bookmarks