You are here:

C++/Beginning a Programming language

Advertisement


Question
I am still in High School and would like to learn a programming language.  I feel it would help me to get a jump start on my future.  My question is:  What programming language should I learn?  There are so many languages out there.  What should I start with, and how should I learn it?  Thanks for any help!  I appreciate your time and energy very much!!!

Answer
I would recommend lisp.

You are still in high school, you would get an opportunity to learn mainstream languages like C++ or java as part of your normal education. So why not learn a language which may not be taught in school, but would help making you a better programmer in *any* language?

Eric Raymond has written an essay called "How to Become a Hacker", and in it, among other things, he tells would-be hackers what languages they should learn. He suggests starting with Python and Java, because they are easy to learn. A hacker will also want to learn C/C++ and Perl. Finally, the truly serious hacker should consider learning Lisp:
"Lisp is worth learning for the profound enlightenment experience you will have when you finally get it; that experience will make you a better programmer for the rest of your days, even if you never actually use Lisp itself".

"The question is not whether Lisp..but rather 'when'" - Paul Graham

"..Lisp, and Haskell are the only programming languages that I've seen where one spends more time thinking than typing." - Philip Greenspun

to have a first look at what lisp is like, see:
http://www.ibm.com/developerworks/java/library/j-cb02067.html

and have a look at this lisp FAQ:
http://www.paulgraham.com/lispfaq1.html

free common lisp implementations:
windows: http://www.eurodownload.com/download-software/86577/Ufasoft-Common-Lisp.html
unix: http://sourceforge.net/projects/clisp/

many more: http://www.thefreecountry.com/compilers/commonlisp.shtml  

C++

All Answers


Answers by Expert:


Ask Experts

Volunteer


vijayan

Expertise

my primary areas of interest are generic and template metaprogramming, STL, algorithms, design patterns and c++11. i would not answer questions about gui and web programming.

Experience

about 15 years or so

Education/Credentials
post graduate engineer

©2016 About.com. All rights reserved.