What's a good programming language to start with?
SwellJoe: Python, Ruby, JavaScript and Perl are all fantastic learning languages.  They have good books (Perl probably wins on this count and JavaScript probably loses), good communities (again Perl is awesome with PerlMonks.org, but all of them have good communities), lots of interesting features that will bend your brain in pleasant ways (all are dynamic multi-paradigm languages allowing OO, functional, and imperative programming techniques), while automatically handling all of the stupid tedious stuff that C and Java and C++ and Objective C impose on you, and they are useful real world languages that people use to build real software every day.For sheer ubiquity, JavaScript can't be beat.  In five years, I suspect we will all be writing a lot more JavaScript, no matter whether we are frontend web developers or not.  But, for now, the backend is still better written in one of the other languages I've mentioned (or PHP).gdp mentioned HTDP and SICP.  He's right, though you have to phrase your question differently...because the language of those books is not a language most real world programmers would suggest you learn.  And yet, if you want to be a good programmer, there are probably no better resources.  The books and lectures are available for free from various (legal) sources, and provide a really solid foundation on which to build your programming skills.  I strongly suspect spending 3-6 months on these two resources and learning Scheme would accelerate your development in any other language enough to repay the upfront cost within a year or two.  Becoming a programmer is a multi-year investment, so that's a really good deal, even if it looks like the long way around.