| I always had the impression that people that say they 'hate Java', usually don't hate "Java: the language". Most people that dislike programming in Java have a negative sentiment because of: - the usage of XML (or now: annotations) to configure all of the tiny parameters that nobody really cares about - a class hierarchy in which you have to jump to 20 levels of inheritance to get to where you want to go - that a lot of Java developers aren't able to compile their application outside of Eclipse - that people build in "flexibility" in form of factory methods but at the same time only have the factory only build the same thing over and over again - that setting up java projects is usually an unpleasant experience with way to much work if you only want the basic functionality because there are no sane defaults - that there is no proper package management for libraries (similar to something like 'gems' in Ruby) - that all of the concepts that the language is missing was 'patched' in using reflection, injection and annotations - that the language just seems stuck (for how long did the Java community talk about Lambdas by now?) - that most Java libraries don't seem to be able to provide a simple example (compare to ruby, examples on the front page: nokogiri.org, sinatrarb.com) |