Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Why do Java invoke such a strong negative emotion from people? It is not like a gun put on the head to make them use it.


Because a lot of people have been exposed to Java, and a lot of people have been exposed to bad Java. There's not a lot of "good Java" (at least that I know of) that's publicly available for reading and understanding. Couple that with the infuriating environment (whoever came up with the 'application server' as exists in Java EE should just feel terrible about themselves) and it's easy to see why it gets people's hackles up.

Me, I don't mind Java so much, but the loads and loads of ceremonious bullshit that Java forces upon me is annoying and I absolutely despise web development in any of the existing tools[1]. I'd love something more friendly for what I do. (I would punt many adorable helpless kittens for a working C# on the JVM.)

[1] - Please don't reply to this to tell me I need to try Play. I have. It's not much better to work with, its developers are absentee and don't seem to want outside contributions, and it has no community to speak of. Not good.


The problem is that this is not Java specific, rather enterprise specific.

Before Java EE, I was coding similar type of applications with CORBA frameworks, and before that RPC frameworks.

Now I am doing .NET, and we have to use a Java EE like framework as well.

Enterprise architecture has a Midas touch to make everything complex.


That's definitely true, but when you say "Java", most people immediately think "Java EE", and that for things that should be simple (like a blog web app), you're forced into "enterprise" stuff.

It's largely cultural (and though they aren't doing a great job the Play guys should be commended for trying), but no less a problem.


Sometimes, if you want to put money on the table, you have to write in Java. (I'm in this boat. I don't hate Java, but I feel it's aggressively mediocre.)

IOW: not everybody is in charge of what technology they use. Further, not everybody has the resources nor the inclination to rearrange their entire life (and that of their dependents) in order to start their own company, all because of Java.

And sometimes it's just kibitzing or venting or what have you.


" It is not like a gun put on the head to make them use it."

From what I understand, a lot of universities do force students to use Java for many introductory courses, mine included (though we're migrating to Python.)


University's job is to expose students to variety of subjects even if they don't like it. It's part of the education.


Exposure to different subjects is good, but there are better, cleaner languages to use for introducing concepts of programming such as variables, functions, algorithms, and data structures without taking up students' attention with syntax and boilerplate that has nothing to do with the lesson being taught.

Compare these hello world programs for instance:

Java:

    public class HelloWorld {
         public static void main(String[] args) {
              System.out.println("Hello, world!");
         }
    }
Python:

    print "Hello, world!"
Ruby:

    puts 'Hello, world!'


Showing a contrived example for a selected case doesn't show the benefit of a language.

In that case, why not teach Basic? Its hello world is just, print "Hello World"


Gun, management, it's all the same




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: