One of the ‘How to tell if someone is a programmer’ jokes is to ask someone what languages they know. These would be popular answers.
I’m not really a programmer, but I know a fair number of these.
I went to a C class in 1988 but never had a reason to use it. I really learned C one summer a few years ago when I had some kids to help me, but I’ve never used it. It’s pretty good at making you think.
I can read and debug Java but can’t write it.
No reason to use C++.
I use PHP all the time and I’m at the point where I think I need to start using classes.
Absolutely no reason to go anywhere near C# or Visual Basic.
Python and Perl seem like they would be useful, especially for some of the string manipulations I do with sed.
I’ve played with Python a bit and it looks like something I’d like if I had the time to learn it. Perl is {$}}@##}}
Learning JavaScript.
Spent an hour today figuring out that <> is not used in JavaScript—it’s !=
Upgrading to the latest ActionScript.
Haven’t used SAS for 20 years but liked it a lot when I used it.
Of course I use SQL all the time—how else do you get to your data?
Update: Spring 2014
I learned Objective-C—so I can convert some programs to the iPad. It’s a really nice language and Apple has lots of API that make it easy to develop apps.
Not on the list, but I just spent a while learning Bash shell scripting. It comes in handy when maintaining Linux boxen.
Update: Winter 2016
I’ve heard all of the jokes about Perl being an unreadable mess, but I have been updating a site that is built with Perl and I must say that it isn’t bad. The language has some quirks but I have been able to read the code without much trouble and make changes to the web pages without spending a whole lot of time learning a completely new language. I even wrote a couple of new scripts that worked the first time.
Update: Fall 2016
I just read The Swift Programming Language and have started watching CS193P with Paul Hegarty. The language is completely different from anything I’ve used before. It is a shining example of what a talented group of programmers can do when they do not have to maintain backward compatibility with previous languages (e.g. Objective C and C) or fit into an existing paradigm of how object oriented languages must behave. I really like working with it in the Playground and can’t wait to make real apps with it.