Live data from Hacker News

Java Is Underhyped

jackson.sh

581–590 of 808 posts

Re: Java Is Underhyped

#581
As a now old guy developer, I laughed when Microsoft released C#. I figured it was just a half-assed attempt at a Java clone. Then I used it, and realized I was wrong. Microsoft has been continuously improving the language, and .NET has support on a lot of platforms. As long as Microsoft keeps making my life easier, I am going to keep using it.

I haven't worked on a big Java project in a few years, but I would always find myself missing stuff from C#.

Re: Java Is Underhyped

#582

For my use cases, Java has all the wrong compromises: - not high level enough to compete with Python/Ruby/JS/PHP, etc - not low level enough to compete with Rust/D/Nim/Zig - not specialized enough to compete with Erlang/R/Go/Julia - not opinionated enough to compete with Lisp/Haskell So why use Java ? It's good, it's fast, it's productive, it's well supported, battle tested and documented for decades with a huge pool…

> not opinionated enough to compete with Lisp/Haskell

Interesting - you seem to be saying that Lisp is very opinionated. If that was your intent, may I ask why? Your experience doesn't jibe with my experience as a Common Lisp user, which is that Lisp isn't opinionated enough, and gives you too much flexibility (in some cases).

Re: Java Is Underhyped

#583
post #407
post #400

Earlier quoted context omitted.

I also don't understand where is the "fun to write" aspect exactly that the author insists about. "This cannot be understated: Java simply feels good to write" But why? The only explanation that follows is that "a lot of this is due to the craftsmanship JetBrains puts into IntelliJ IDEA. Everything is autocompleted, jump-to-definition is fast, find-usage works well, and refactoring is easy" . I too think that IDEA is…

> I too think that IDEA is an excellent IDE, but why should Java take the credit for it. If anything, the more it needs an excellent IDE in order to feel pleasant, the worse it says about the language itself. It actually does, the language itself makes those features possible. The reason javascript does not have as good IDE is that language itself stands in a way.

It's a bit of a "stop hitting yourself" situation. Java features make awesome tooling possible, but awesome tooling is necessary due to some really bad features of Java. So I don't care if a different language has worse tooling when it also does not have the problems that Java has that the tooling solves.

Re: Java Is Underhyped

#584
post #568
post #294

Earlier quoted context omitted.

> i dont think you need value types at all, and you can simulate it by using byte buffers with an abstraction on top of it. After all, what's the difference between value types and a byte array? The difference is a bit like coding in Java vs coding in assembler (more below in an example). > The only reason java gets poor performance is the coder doing java is too used to producing garbage (or is too inexperienced to…

Having thousand NPC objects around is no problem at all. The rendering part is the only thing critical/numerous enough that you may have to optimize to such a low level.

Not sure what you cover by "NPC objects" but they easily can participate in physics and AI as well (or at least basic scripted behavior).

Also significant game state is not only represented by renderable content.

Re: Java Is Underhyped

#585
post #325

The ultimate problem with Java (and OOP too, even in the Kay's sense) is that its philosophy represents a very paternalistic approach to software development. The idea is here are these things called objects, you can't look into them, and you only have to use them the way they are designed; under no circumstances you can break them down into internal components and remix those freely. In Java, this overall approach m…

I think you mistake general Objects, and their sub”class” data objects. Data oriented design is popular now, but it is just a subcategory. As a base, OOP is really great, class invariants and encapsulation is the only effective weapon against complexity (and software engineering is largely about managing complexity).

Data classes that expose their internals are a great way for some program logic, but let’s say a database connection is very much not a simple data class. It does have some static data, but it should not be accessible to the outside, because then it is not safe to close/use/whatever.

Re: Java Is Underhyped

#586
I completely agree with the author. When writing Java code, you get a sense of standing on a bed rock that never lets you down. You can be assured that you get everything you need. It is like a childhood friend or relative who always stands besides you and supports you. I don't get that sense when using any other languages though I have been using them for same number of years. The other languages sometimes annoy me by misguiding me or by being poor in some aspects, but never such case with Java. I have total respect to this language and I go to it whenever these more hyped languages give me a chance to do so.

Re: Java Is Underhyped

#587

Earlier quoted context omitted.

Could you clarify the point on Android and copyright issues? At least at the time in 2017 when Google blessed Kotlin as an officially supported language, it seemed like the reasoning was Kotlin was far more ergonomic than Java. How does copyright come into this?

Oracle suited Google for copying the APIs (not the implementation) of the Java standard APIs. It all started in 2010 [0] Kotlin was Google's backup if the suit went Oracle's way. [0] https://en.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_... .

I guess given the recent court ruling we should see if Google sticks with Kotlin as a hedge, sticks with Kotlin because the community has embraced it, or pulls away from Kotlin as a no longer needed source of extra work.

Re: Java Is Underhyped

#588

Java (and JVM) sure has its advantages. And I enthusiastically advocated it in the nineties, when no one seemed to see its strengths. It was simple, performed well (other than GUI and classloading sometimes took a minute) and was very portable. I even wrote some demos in it in the late nineties to show it can actually do 60 Hz realtime graphics. Over time, the ecosystem got pretty strong. JVM improved and the perform…

Actually, the JVM uses comparably less power than other high level languages.

And frankly, you simply can’t write all the software in use in low level languages. Yeah, it is theoretically possible but not feasible

Re: Java Is Underhyped

#589
post #253

I do think Java has a bad rep as a "dry, corporate, enterprise" language, but I think there is an ecosystem around Java that is pretty awesome and you can build incredible applications with Java if you want to. Java has a branding problem. Java (and Oracle) missed the wave of the last 15 years when tech became "cool." If you were new to tech/programming and wanted to pick up a language, which of these three would you…

This is a funny comparison, for sure. What is really going on here is that there isn't a " the Java website". There is no single organisation or project behind Java which could put such up a website. Similarly, where is the C++ website? The C website? java.com was originally the website aimed at end-users who need to install Java to use desktop applications written in Java. It looks like it's from 2010 because that's…

That's a good point, but the various Java JDK websites, intended for developers, really aren't any better.

- https://www.oracle.com/java/technologies/javase-downloads.ht...

- https://jdk.java.net/

- https://openjdk.java.net/

Re: Java Is Underhyped

#590
post #114

Earlier quoted context omitted.

Nobody who has ever written error handling in Go could possibly downvote this comment. Holy moly, the error checking after EVERY interesting method call. Talk about verbose.

It's useful verbosity. Java's verbosity is misplaced, which is worse.

That’s just false
Post reply on HN