I'm assuming here that it is programming concepts you're trying to learn, not some specific job requirement. If your prospective job requires C or Icon or LISP, you don't have much choice. Welcome to the language wars!
But for learning general programming concepts, I suggest Modula 2. There ae several freely available compilers (for Linux and other *nixen, as well as for Windows; see the Wikipeida article for many pointers). It is a language which avoids features tending to teach bad thinking habits (important, for garden paths are to be avoided by all but are harder to see for beginners), but is compete enough to do most anything from systems programming to high level applications (important because partial toy languages are misleading and confusing). Yet is't small enough (the Report is something like 50 pages long) that you can master the entire language, which is a non trivial issue. There are C++ features unknown to even experienced programmers -- everyone, including them, learns a subset of it and not the same subset either. Very annoying.
Assorted older languages will be suggested (and have by other answers). I suggest you look up the "How do we tell unpleasant truths?" essay by Edgars W Djikstra (one of the 'EWD' series available on line from several sources). EWD was a pioneering mathematician and computer scientist who designed one of the (if not the) first multi-programming system in the Netherlands. T.H.E. Mulitprogramming System, in fact. A sharp and clear thinker with a gift for polemic. The mentioned essay is sharply polemical and sarcastic too, but is nevertheless gets things just about right.
There are some 'advanced' variants of Modula 2 with nice features, but they're larger and somewhat harder to learn. If you want an advanced verison after you learn Modula 2, try one of hte Oberons, which add in full object oriented programming and simplify still further. Also several freely available compilers. See the Wikipeida article on Oberon.
Modula 2 is blessed by having an extraordinary teaching text available. It's K N King's Modula 2 (imaginative title, isn't it?). Read it, attempt all the exercises (you won't be able to solve them all), and when you finish (maybe 5-6 weeks if you get really serious, 3 months if you take your time, and forever if you're easily discouraged), you'll be a programmer. Most of what you have learned will immediately apply to other languages you will have to use, and they'll be much easier to pick up. And quickly too. And you'll write better code in them, which is non trivial point.
The best programming language text I've ever come across, and still in print all these years later.
If you must start with C (I can't agree that you should as it's a very odd and tricky language, especially for a beginner), King's book C Programming is about as good as they get. Make it your second language or your third. You might imagine what Dijkstra would say about it (after you learn it).
If you're truly masochistic, you might want to start with Intercal, the language which has nothing in common with any other. At least one version has implemented the Come From statement, unstead of the GOTO statement. And NTERCAL compilers suport the IGNORE statement as one of its control structures. And it teaches manners in this casual age; programs must say PLEASE. One of its infernal developers, Woods, is infamous as, in the early years of the Internet, he wrote a good bit of the very first Internet software stack, and is furthermore the Woods of Crowther_and_Woods, "you are in a dark room..." fame. If you learn Intercal, your brain will likley be damaged beyond repair, just as Dijkstra suggested was true of BASIC as a first language, only more so. See Eric S Raymond's Retrocomputing Museum site for a couple of freely available compilers, along with some even more deranged languages.
2006-06-14 08:31:01
·
answer #1
·
answered by ww_je 4
·
8⤊
1⤋
The most suitable language for a computer beginner would probably be Visual Basic
2006-06-14 07:55:34
·
answer #2
·
answered by luckiefee 1
·
0⤊
0⤋
Back when i started, it was VB and Pascal. Nowadays, trying to make it so you understand the logic of each language, Java would be a great start, and from there, you can look at the syntax of each language and decide which one you would like to program with.
2006-06-14 08:27:00
·
answer #3
·
answered by DarkWolf_1st 4
·
0⤊
0⤋
Visual basic or C (not C++), both will be useful (kinda) and will give you a good basis in programming and how to think like the computer does.
2006-06-14 07:51:38
·
answer #4
·
answered by Brian 3
·
0⤊
0⤋
In the past BASIC and Pascal was the easiest to learn, But nobody uses it anymore. I think that you should learn Java. Its not easy to learn, but will be the most useful to you.
2006-06-14 07:54:27
·
answer #5
·
answered by Mojo Jojo 3
·
0⤊
0⤋
Basic.
Don't go with C, it is hard.
Look at my nickname, I know what I am talking about.
2006-06-14 07:52:44
·
answer #6
·
answered by geekgirl 4
·
0⤊
0⤋
the ms office
2006-06-14 07:51:08
·
answer #7
·
answered by john 2
·
0⤊
0⤋
english?, naa, fox pro i think, or visual basic, it's easy to use.
2006-06-14 07:53:31
·
answer #8
·
answered by mexathug 1
·
0⤊
0⤋