The programming languages I recommend are:
- Java (for most applications including business or enterprise applications)
- Python (for any small application for computer administration)
- C/C++ (only for low level or computing intensive code)
- PHP is a specialized programming language for web applications that is currently powering huge sites like Facebook, Flickr and Wikipedia. It still lacks unicode support among other things, but it is quite easy to deploy since most commercial web application servers support PHP. As a weak typed programming language you may get lots of problems like PHP's handling of numeric values in strings. Anyway PHP has lots of design errors so you may want to skip it for any important website. PHP Sucks, But It Doesn't Matter. I just do not use PHP because I do not feel safe with a weak typed language and so many design errors.
- Ruby with its Ruby on Rails and great OO syntax it is a language that might have a bright future. It was used for sites like Twitter but ruby on rails has scalability problems that make it not ready for large sites. Twitter changed its core from Ruby to Scala. Ruby 1.8 lacks a bytecode interpreter, Ruby 1.9 transition will take some time as there are important changes and lacks Unicode support. These Ruby problems might get fixed in the future, but right now Ruby's not ready.
- C# is a Java clone so it is also quite a good alternative but lacks lots of opensource frameworks to base your software on. So it is only an option if you do not mind the Microsoft only lock-in.