i'm not sure why some people here are downplaying Java and instead recommending C#?
I'm a front-end UI dev and I have to work with that garbage almost daily. I'm sure someone out there is programming in Java better than the people I have to deal with, but I'm pretty damn fed up with it.http://harmful.cat-v.org/software/java
A couple of my favorite quotes:
Java is the SUV of programming tools. A project done in Java will cost 5 times as much, take twice as long, and be harder to maintain than a project done in a scripting language such as PHP or Perl. ... But the programmers and managers using Java will feel good about themselves because they are using a tool that, in theory, has a lot of power for handling problems of tremendous complexity. Just like the suburbanite who drives his SUV to the 7-11 on a paved road but feels good because in theory he could climb a 45-degree dirt slope. -- Greenspun, Philip
Saying that Java is good because it works on all platforms is like saying anal sex is good because it works on all genders. -- Unknown