To this list we could also add Cassandra, ANTLR, Spring Framework, JUnit, Jetty, Tomcat, Android etc. The list continues. The beauty of Java is not Java/Programming language - but JVM. It inspired people to make other languages such as Scala or Kotlin.
I don’t know if I’d celebrate Spring... and Oracle would rather Android use “real” Java, not Dalvik. The JVM was nice at the time, but I feel that languages like Scalia and Kotlin exist because Java was too conservative - and many of Kotlin’s great features had to be implemented using hacks and tricks to work-around the JVM’s now-primitive type-system. Also note that Kotlin can now target other platforms besides the…
Greatest Java apps
151–160 of 194 posts
Re: Greatest Java apps
#152Earlier quoted context omitted.
Yes, Spring is good, and in general there's been a lot of innovation started in Java and spread elsewhere. The whole "Dependency Injection" idea started in Java, and a lot more stuff started there too, or at least was popularized AFAIK. For example, pattern languages themselves. But some great libraries like JodaTime came from there, as did Doug Lea's very nice rendering of better concurrency primitives - and both of…
Wasn't the "Gang of Four" book written entirely in C++?
Re: Greatest Java apps
#153I like to add clojure it is written in Java, so I guess it counts. But seriously what do you like about Java and why did you choose to work with it? What problem does it solve for you? I'm curious! (don't comment when you don't like it)
Re: Greatest Java apps
#154I'd nominate Bitwig for this. The UI is written in Java and is one of the nicest DAW interfaces around. The stuff they've been doing in the modular grid lately is particularly impressive. The fact that it's in Java means it works great on Linux too. https://www.bitwig.com/en/home.html
The Atlantis event display is a visualization program [1] [2] for the Atlas experiment, the largest, general-purpose particle detector experiment at the Large Hadron Collider (LHC), a particle accelerator at CERN
Re: Greatest Java apps
#155To this list we could also add Cassandra, ANTLR, Spring Framework, JUnit, Jetty, Tomcat, Android etc. The list continues. The beauty of Java is not Java/Programming language - but JVM. It inspired people to make other languages such as Scala or Kotlin.
I don't think anyone doubts that the JVM is an astounding and amazing piece of tech. But what is in doubt is whether we need such a thing in the first place.
Most new languages (Rust, Nim, Zig, etc) advertise their native code generation prominently. People are tired of the shitty start-up times, inscrutable performance profile, and ginormous memory usage.
Even Oracle realizes this, with the recent push towards GraalVM.
And I say this as someone who would probably choose the JVM, Scala specifically, for any new SaaS project.
I personally haven't really used any desktop JVM app that I was happy with. If Intellij was native, I'm sure it would be 10x better, at least performance-wise.
Re: Greatest Java apps
#156Earlier quoted context omitted.
For games, probably the worst thing about Java, especially if you're still on Java 8, is the garbage collector. Its pause times can be brutal. This won't be noticeable for games that aren't too hard on memory, or games where framerate doesn't really matter, but it was definitely noticeable (and annoying) in earlier versions of Minecraft. On Java 11 or later, I wouldn't expect it to be nearly such a big deal. At least…
The "Java is bad for games" mindset is in part just historical bias. Performance and GC are thrown around as shallow excuses for comparing idiomatic Java with game design C++. Actually applying methods to reduce memory pressure like using arenas, and accepting vectors to mutate instead of creating new ones solve most of the GC penalty you paid for not having to think about it while prototyping. Large servers in java…
Might as well just use C/C++ instead of fighting the ecosystem tooth and nail.
Re: Greatest Java apps
#157Earlier quoted context omitted.
Yeah, the game is almost source-available, thus almost infinitely moddable. Games that provide neat modding APIs (thinking Factorio, Rimworld) are, while commendable, inherently limited. If Minecraft were C++ you'd have to be able to recompile it yourself for equivalent moddability.
Could Minecraft have succeeded if it had a sub-level scripting language, like Lisp? The way that AutoCad uses it for its sub programming. Or the way Emacs uses Lisp for macro programming. Or did it need the full Java source code to re-mod the program?
Re: Greatest Java apps
#158Today I learned that almost every IDE I have ever used is written in Java.
Re: Greatest Java apps
#159Re: Greatest Java apps
#160I'd have to give Tomcat the #1 spot for killing off the worst parts of J2EE.
OMG. I've set up Confluence servers and Tomcat was the most nightmarish part of that experience. The idea that Tomcat was an actual improvement on something sends shudders up my spine.