What programming language should I learn first?

Gramma se voet. I quoted the page title as the thread title, so say what/which you want. :p

I have to agree with the general COBOL sentiment. I learned it during my 4 months of hell at VZAP - and forgot how to use it as quickly as I could!
 
In the OP a list of proposed languages was supplied making this second example the applicable one and my correction... correct.
You know, normally I'd agree, but because it's Friday, and I'm in the mood...

The opening post is an excerpt from the linked page, in which a general question was posed to a forum :What programming language should I learn first? The response was what you see in this thread's OP - therefore in context the grammar is correct - the question was posed with no list, and the response was the list you see (which I posted because it was funny - not because I had any particular beef about how the question was posed).

I agree with some of the posters though - trolling (and I see this as such in this particular forum, where the average regular writes in code far more often than in English, or any other language :D) for grammar is a bit over-the-top for what was posted as a bit of fun, wot?

EDIT: Oh, it's Friday all right! :) I see now I quoted the question incorrectly for the title! :erm: The rant above stands for the post, though.
 
Last edited:
Who's the grammar nazi now...? :p

lol I was wondering if you'd see this thread :whistle:

I have to agree with the general COBOL sentiment. I learned it during my 4 months of hell at VZAP - and forgot how to use it as quickly as I could!

If you're going to get all sentimental what about Lisp & Small Talk.

I think it's difficult to say something funny about COBOL, how about:

To still be fixing Y2K bugs: COBOL
 
LISP and Prolog are not programming - they are heresy and tools of the devil. I can do anything LISP or Prolog can do 10x better in C#. Some of it even 10x better in COBOL.
 
Why not C++? I teaches you discipline thats for sure.

EDIT: Also once you know C++, other languages like C# and Java will really easy to grasp.
 
Last edited:
I agree - if you do the three principles of OO (encapsulation, inheritance and polymorphism) in C++ then you are ready for anything.
Plus it gets that urge to complicate things right out of your system before you do it in business systems where it become a maintenance nightmare for those after you.
 
Interesting article that I'm more inclined to believe: http://writing.bryanwoods4e.com/

The section about choosing a first language states:
Language does matter.

You're lucky to have stumbled across a very good first language, but you're likely to encounter developers who will tell you that this decision doesn't matter. These people are wrong, plain and simple.

Your first programming language provides you with a base vocabulary through which you begin to understand all other computer programs. As a linguistics major, you're no stranger to the idea that a person is only capable of having thoughts and ideas that can be expressed in their language, and there is no reason to expect programming languages to differ from spoken languages in this area. It is absolutely crucial to pick a first language with a deep, expressive vocabulary for this reason, and all programming languages are not created equal.

Furthermore, the first language you become comfortable with will influence the way you learn other languages in the future. You'll notice that programming books will often say things like "this might be strange if you're coming from Java or C++". This is for the obvious reason that people learn new ideas and concepts by relating them to other ideas and concepts they are already familiar with. Picking a first language that doesn't smoothly transition into your second or third will cause you unnecessary headaches.

Finally, since you currently don't know a whole lot about the vocabularies and intricacies of different programming languages, see if you can feel out a language's community. I'm sure I don't need to elaborate on why picking a language with a vibrant community of helpful and intelligent people who share code, have regular local meetings, and seem up-to-date on emerging technologies will have a positive impact on your learning as opposed to the alternative. Here again, all programming languages are not created equal.
 
I dont agree with that. Programming languages are tools, nothing more. You generally dont learn enough about your first language for it to influence your perception of other languages.

Its far more important that you develop your critical thinking and problem solvings skills than whether you start with C++ or Java. Most languages can be used to teach the basic concepts, and from there you can learn any language.
 
I started with Pascal, then moved on to Delphi and in University the majority of my first year courses were in Java and in 2nd year we moved towards C++.

I wish I had started with C++ however purely because I probably learned the most around memory management and keeping code simple and clear in C++.
 
+1 on the response in the OP:

(C)++;

:)

Technically SQL isn't a programming language, it's a query language... but it definitely depresses me to work in SQL.

And evidently the author of that post is a diehard C programmer - I'd disagree completely, as I found C/C++ absolutely painful to program in. Why work with pointers and do manual garbage collection when you can let a managed language take care of all that for you?

Because sometimes you NEED control over such things.

An off-topic gripe: why is it that so many people seem to think that working with pointers and managing memory is so bad? It's not THAT much of an effort.
 
Agree with the above poster. Never understood why people find pointers so intimidating and scary. Also a lot of programs that need to be as efficient as possible require you to manipulate lots of extra stuff cause the generic components a managed language uses to do it just aren't efficient enough.
 
An off-topic gripe: why is it that so many people seem to think that working with pointers and managing memory is so bad? It's not THAT much of an effort.

Because 90% of people write Line Of Business applications, not mission critical stuff like you.

If very easy to make mistakes doing custom memory management/reference counting and the like. Just read Raymond Chen's The Old New Thing and you'll see the effort required by the Windows Shell team to cater for the mistakes people make.

If you take that out of the equation you can concentrate on the part of the program that makes you money => functionality.

At the end of the day it's all about using the right tool for the job. And for the majority of people out there that's not unmanaged C++.
 
Also a lot of programs that need to be as efficient as possible require you to manipulate lots of extra stuff cause the generic components a managed language uses to do it just aren't efficient enough.

I disagree that there a "a lot" of programs that require this extra efficiency, I agree say "some" but not "many". There's also a misconception on the inefficiencies of managed code. The JITer has been known to be just as efficient as unmanaged code in a large portion of scenarios.

i'm not saying managed code is just as fast or faster than unmanaged, but by so how much that it makes all the extra effort worth it?
 
I think you may have misread my sentence.

Odom said:
Also a lot of programs that need to be as efficient as possible require you to manipulate lots of extra stuff cause the generic components a managed language uses to do it just aren't efficient enough.

I'm not saying every application has to be as efficient as possible but in instances where it is required a managed language might not be up to the task. I'll agree that with most business applications you'd be pretty mad to want to go developing in C++ when there are much faster and easier alternatives.

I also concede with regard to managed languages getting better at house keeping tasks like garbage control and memory management. I don't think they're quite on par in certain instances but they are getting there.
 
Top
Sign up to the MyBroadband newsletter
X