

What is a Good First Programming Language? - parenthesis
http://www.acm.org/crossroads/xrds10-4/firstlang.html

======
silentbicycle
I still think Python is a good choice. The syntax is relatively clean and
forgiving, it has a self-documenting interpreter, you can _dive in_ * without
having to understand a whole build system (e.g. make, linking, etc.) upfront,
and it has an excellent standard library, so you can actually try to do real
stuff with it even as a beginner.

* _Dive into Python_ (<http://diveintopython.org>) is a good introduction, and is available free online.

------
ninguem1
This article sounds as if it was written sometime last century. In 2008, there
is no excuse for a programming language in which "hello world" is longer than:

print "hello world"

The compiler/interpreter should handle the rest. Edit: This is especially true
if the language is used as a teaching tool for first time programmers.

~~~
pjspereira
or "hello world"

------
AndyKelley
A beginner should start with a language in which they can see instant results
and quickly build applications. This way, if they get a cool idea they want to
try, they are eager to dive in and pump out that program rather than struggle
with syntax, compilers, and GUIs. I'm hinting at Visual Basic 6.

------
scott_s
If the first time you have sex is bad, you're not doomed to bad sex for the
rest of your life.

The topic of what makes a good teaching language is valid and deserves
consideration, but we should be careful to give it too much weight. In the
end, teaching someone how to program requires teaching them new concepts. They
will be required to learn a new way of thinking. Any time you do that, you
will screw up, confuse issues, and get frustrated. No programming language can
prevent this completely.

As with sex, the more you're exposed to programming, the less important your
first experience becomes.

------
mattyfo
I've just started programing myself and I'd love a more concise answer then
this article. (it rambled and didn't answer the question!)

For the most part I want to design webpages and mashup social networking
API's. Of course I've been picking up my HTML and CSS, should I jump straight
into PHP at this point or should I go another route? (Python/LISP/etc)

------
Tichy
I think I would let a beginner start with HTML (semi-programming) and then toy
around with JavaScript.

At least with JavaScript I can see some use for the average person (spice up
homepage, Greasemonkey, Mashups), whereas otherwise I am not sure what an
average user would want to program.

------
trenchfever
Install Logo.

And read this. <http://www.cs.berkeley.edu/~bh/v1-toc2.html>

Then get DrScheme. And read the little schemer.

Thank me later.

------
daniel-cussen
I tried starting with lisp, and...well, that was a year and a half ago.

