# first programming language

## Recommended Posts

What would be a good first programming language? I am leaning towards python. Would this be a good idea. I cant afford any micro$oft products though. #### Share this post ##### Link to post ##### Share on other sites Html is fairly simple. It was my first programming language, and I went on to learn actionscript, java, and a bit of c++. #### Share this post ##### Link to post ##### Share on other sites HTML is no programming language, it's a markup language. It's like LaTeX for websites. If you want to learn micro$oft stuff, you don't have to spend a dollar, because you already have everything you need . The webserver comes with Windows.

If you don't want that, I recommend learning PHP, because it's fairly easy to pick up. Python may be tough for a beginner.

##### Share on other sites

I started with C then C++ then C#

Leant Java too .. These all are fairly related to each other so its easy if u start with C then go on ..

##### Share on other sites

I started with BASIC. Moved on to ALGOL, FORTRAN, PASCAL, C, and

eventually Visual C++. Did some ALC along the way. This is in the span

of 32 years.

##### Share on other sites

Python is just fine for a start. It´s easy to use (it´s more or less like basic) and powerfull enough to even write advanced programs with it (unless performance is a real issue, but the bottleneck usually is the programmer, not the language used). And most importantly it´s an interpreter language which allows you to test things (and you´ll need to do a lot of testing even on small things like "what´s the result of a*b for vectors a and b" whenever you learn a new language) in command-line mode. So you don´t need to write an executable to test this like you have to do in C.

On the other hand, programming languages (those I know at least) do not differ much anyways. They are just a tool to write programs. The "real" programming is done in your head or on a piece of paper (using some pseudo-code), anyways. So the question which programming language to chose is a bit like asking which language learn to become a journalist.

If you´re really going to use Python: It´s some time since I last used it but I remember that I liked the "SciPy" (scientific python) package a lot so you might want to check it out. Depends on what you´re going to do, of course.

##### Share on other sites
What would be a good first programming language? I am leaning towards python. Would this be a good idea. I cant afford any micro\$oft products though.

The essential question (which nobody has thought to ask yet) is: what do you want to use it for?

Installable software? Web applications?

##### Share on other sites
The essential question (which nobody has thought to ask yet) is: what do you want to use it for?

Installable software? Web applications?

I aggree. But when I was young, Spectrum BASIC was the first computer language that I learnt, then eventually migrated to GW-BASIC, Commodore BAISC and just touched on FORTH and LOGO.

Then as I grow older, I need to learn Fortran, because I need to make use of the supecomputer parallelism features, of which Fortran is well-established. It is not the most elegant language I suppose, especially the Fortran-77.

For purposes of intensive mathematical calculations, Java or any cross-platform and web languages are pathetic. For single processor application, I will go for C or C++.

By the way, is anyone still using FORTH? What is it use for nowadays?

##### Share on other sites
The essential question (which nobody has thought to ask yet) is: what do you want to use it for?

Installable software? Web applications?

I was thinking the same thing before getting to your post.

If you just want to learn a language for the hell of it, java is harder than some BUT will teach you very strict programing methods which are good for the less strict languages...

##### Share on other sites

I rem (way back in the days when....)

long before we ever saw a programing lang, we learned how to structure our thoughts firstly.

we used pencil and paper and we drew Flow Charts.

we were given an arbitrary task like make a cup of tea, and then we had to "Flow Chart" the procedure.

and THEN we were given the Words (commands) in which to do it, the Syntax for these and the parameters became apparent as time went on.

Structured Thought is Key to ANY programing lang, after that it`s just a case of learning the "words"

##### Share on other sites

Indeed. Most modern computer science courses will teach a variety of methods and common algorithms (quick sort, heaps, linked lists etc) in pseudo-code and then get students to implement these things in a fairly simple language like Java.

However, if you're just looking to mess around I would again recommend PHP. Whilst it's primarily a "web language" (if there is such a thing), you can get executable versions which will run from the command line, a la perl.

##### Share on other sites

Ideally I want to make installable programs.

##### Share on other sites

Just don't start with VB. It teaches you bad habits. I started with C, moved on to C++, then Perl, then PHP. C is great. I love it. Best programming language ever. Dev-C++ is a good free compiler for Windows, and so is lcc-win32. If you run Linux, Anjuta is an awesome IDE, then you can make GUI's with Glade and Anjuta.

##### Share on other sites

Ideally, you'd start simple. PHP is quite easy to learn (it's a "loose" language) and it's similar to C in syntax. After PHP you could easily work on C.

##### Share on other sites

most people start programing with basic

qbasic is free but dos based

visual basic cost money but is windows based

then move up to maby c or c++

Which is much, much faster, more expandable ect...

however, If you want to lurn php or python then It may be best to start with html then move on to php, python or javasript. they are not fast lagueges, you will not create the next killer game engine or powerfull office sute, however you could create some great interactive web pages.

html is diffrent from most other langueges, I can program well in visual basic, a bit in c++ (my faverote laguege) but im bewildered by html even though its suposed to be unbilivably simple

##### Share on other sites

I recommend downloading JBuilder or Eclipse and grabbing a book the most recent book about Java you can find at the library. It's the best general-purpose language around, and it covers all the programming fundamentals just fine, so you really can't go wrong, and you haven't spent a dime. And you can find a bazillion web pages over the Internet to help you if you run into trouble.

##### Share on other sites

Have fun. PHP, C, C++, Perl, COBOL, JAVA, Bash scripting, etc...

##### Share on other sites

however, If you want to lurn php or python then It may be best to start with html then move on to php, python or javasript. they are not fast lagueges

What is a very fast language? and how is that determined?

##### Share on other sites

I think he might have meant "fast to learn". But in terms of performance, C++ is the generally-acknowledged speed champion. It gives you almost direct access to hardware, whereas other popular languages (such as VB) tend to make calls to a "managed" code base (the .NET Framework) or an interpreter (Java in web pages), which slows things down but provides support aimed at avoiding and managing bugs.

Believe it or not, execution speed is often (some would say "most of the time") the least important factor in good programming. It makes no difference if it takes 0.2 seconds to execute a command instead of 0.4 seconds if you're going to sit there idle for several seconds anyway while you wait on information to be transmitted over the Internet or culled from the DBMS. So the extra benefits of managed code are much more valuable than the difference in execution speed.

##### Share on other sites

I would suggest C first. C++ is more object-oriented than C and can teach some bad habits. With C, you actually learn how to code things by yourself.

##### Share on other sites

I'm not sure why you'd ever want to learn C/C++, unless you happen to be writing operating systems or high-performance video games.

I really don't understand why so many people recommend it for a first-time programmer. That just strikes me as a really horrible idea, unless of course you want them to run away from the computer as fast as they possibly can and never touch it again in their lifetimes. ;-)

##### Share on other sites

I wrote a program that did my English homework for me in C...

After I did that, I learned some VB and made a small calculator. It's calculations were very dirty. I don't think it's really that great of a language. Plus, C is just a great language all around. It's fast, makes small programs, etc...

It's not meant for OS's or games, though it's great to program them in.

##### Share on other sites
I'm not sure why you'd ever[/i'] want to learn C/C++, unless you happen to be writing operating systems or high-performance video games.

I guess I am biased as I write mostly high-performance video games.

c or c++ are "speed champions" and also efficant with memory ect...

However, they are also tedious for beginners.

I agree with pangloss that if you are not writing code for games java may be a better languge.

http://www.qbasic.com/c1.shtml

Qbasic (verry simple to code and free, also verry slow and limeted)

A great starting point for the absolute beginer.

##### Share on other sites

Pangloss, i think alot of people suggest C/C++ as a starting language as, although they're hard to start, they teach you the fundamentals and don't do very much for you (ie memory management, pointers etc). Some people don't like this but it prevents you getting the wrong idea about how a computer does something.

There are alot of programmers now days who learnt their trade from the higher level languages (not "high" as C/C++ are high level) and they are often worse programmers because of it as they simply dont know the computational cost of what they are doing as most of the time there are alot of functions and methods that will do it for them and they will use without taking the time to consider whether that function will use alot of resources etc. There are even articles that suggest you should start yourself off on assembler/assembly, so that you really have a good idea of what is going on behind the scenes before you start having it all done for you, although that might be a little extreme for some.

I'm not saying I suggest that they learn C/C++ or any other language, I think they'll be ok whatever language they choose (ok maybe not ANY but whatever), just pointing out why some might advocate C/C++ or similar.

##### Share on other sites

I'm running out the door, but just a quick reply:

I think that's a good point, and I imagine that works well for computer science majors. But one of the big changes in the computer industry the last few years has been that now only a small percentage of people who learn programming today are going into computer science. Even those who plan to program full time often (mostly?) have no need to learn fundamentals of memory management or machine code.

Let's put it this way: If your goal is to write web applications or business programs, such as a typical client/server program with a database back end, you really have no need for C/C++. It's just not something you will ever use, and it won't teach you anything you need to know.

If you look around at what the schools are teaching today, it's all Java, all the time. Nobody gets C/C++ except in pure computer science majors (and not always there either). IT, CIS, IS, any kind of applied major, they're going to learn Java.

Anyway, yeah I see your point though.

## Create an account

Register a new account