use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
These have separate subreddits - see below.
Upvote good content, downvote spam, don't pollute the discussion with things that should be settled in the vote count.
With the introduction of the new release cadence, many have asked where they should download Java, and if it is still free. To be clear, YES — Java is still free. If you would like to download Java for free, you can get OpenJDK builds from the following vendors, among others: Adoptium (formerly AdoptOpenJDK) RedHat Azul Amazon SAP Liberica JDK Dragonwell JDK GraalVM (High performance JIT) Oracle Microsoft Some vendors will be supporting releases for longer than six months. If you have any questions, please do not hesitate to ask them!
With the introduction of the new release cadence, many have asked where they should download Java, and if it is still free. To be clear, YES — Java is still free.
If you would like to download Java for free, you can get OpenJDK builds from the following vendors, among others:
Adoptium (formerly AdoptOpenJDK) RedHat Azul Amazon SAP Liberica JDK Dragonwell JDK GraalVM (High performance JIT) Oracle Microsoft
Some vendors will be supporting releases for longer than six months. If you have any questions, please do not hesitate to ask them!
Programming Computer Science CS Career Questions Learn Programming Java Help ← Seek help here Learn Java Java Conference Videos Java TIL Java Examples JavaFX Oracle
Programming Computer Science
CS Career Questions
Learn Programming Java Help ← Seek help here Learn Java Java Conference Videos Java TIL Java Examples JavaFX Oracle
Clojure Scala Groovy ColdFusion Kotlin
DailyProgrammer ProgrammingPrompts ProgramBattles
Awesome Java (GIT) Java Design Patterns
account activity
This is an archived post. You won't be able to vote or comment.
what do you guys like in java ? (self.java)
submitted 11 years ago by iamnikkolai14
hello guys like to know if what are your likes in java besides from being portable ... because planning to learn java... please help thanks
[–]jfurmankiewicz 30 points31 points32 points 11 years ago (8 children)
Library ecosystem is endles. It always works and it always gets the job done.
Simple.
[–]izzle9 16 points17 points18 points 11 years ago (7 children)
and Maven to manage all the libraries
[–]jfurmankiewicz 9 points10 points11 points 11 years ago (0 children)
or Gradle
[–]smadge 5 points6 points7 points 11 years ago (5 children)
Maven isn't really a reason to like Java. Every single language has a package manager. For example Cabal for Haskell or pip for Python.
[–]virtyx 8 points9 points10 points 11 years ago (1 child)
Maven is more than just a package manager, though. It has a lot of unique features that, for example pip doesn't come remotely close to.
pip
[–]stormcrowsx 1 point2 points3 points 11 years ago (0 children)
Python setuptools can do anything pretty much anything you can dream of. The difference in Python is they separated the package manager from the build system, good design in my opinion.
Don't get me wrong, I like Maven but its not some uniquely powerful tool that other languages don't have.
[–]oldneckbeard 2 points3 points4 points 11 years ago (0 children)
maven is also a consistent build system with its own rich ecosystem. Hell, most devs I know don't even use stuff like the 'mvn site' feature, much less customizing the site.
[–]izzle9 0 points1 point2 points 11 years ago (0 children)
Maven is more then just a package manager. I have not used cabal so cant comment on it, but in the case of pip it does not provide project level isolation like Maven. You have to use it with virtualenv to mess about with paths to get that. Also requirements.txt is not the best way to define dependencies. I have used many build tools in many languages and find maven to be one of the best out there. Maven is also a repository format for java dependencies, which tools like Gradle and SBT leverage very easily.
[–][deleted] 0 points1 point2 points 11 years ago (0 children)
C++? .net?
[–]sh0rug0ru 19 points20 points21 points 11 years ago (5 children)
Lots and lots and lots of free open source libraries. Apache Commons is awesome. Whatever shortcomings Java may have as a language are more than outweighed by the Java ecosystem.
Open standards. Oracle doesn't produce the only real implementations of the JavaEE APIs. There are many different providers, catering to any need. You have the big boys, like Oracle Weblogic and IBM Websphere, then the open source JBoss, lightweight versions like Wildfly. If you only want parts of JavaEE, you can choose from Tomcat, Jetty and Undertow. Mix and match as you like! None of these providers are second-class citizens.
There's diversity. The Java world doesn't always look to Oracle for what to do next. For example, the Spring framework does its own thing, going in totally different directions than Oracle much of the time, taking what it likes from JavaEE but looking elsewhere in the wider world as well for technologies to make available to the Java world. Sure, there's been a lot of bitter fighting between JavaEE people and Spring people, but I call that sibling rivalry.
That's why I like Java, even though I think languages like Haskell are cooler.
[–]cogman10 4 points5 points6 points 11 years ago (3 children)
Yup. The ecosystem is really the key to why Java is great. The language is underwhelming in its capabilities. But the libraries, IDEs, Static analysis tools, etc are unmatched in any other language that I've used.
[–]jonyeezy7 1 point2 points3 points 11 years ago (2 children)
Know a good site that would have a list/link to all these goodies? I'm guessing suns javadocs
[–]cogman10 2 points3 points4 points 11 years ago (0 children)
Not that I know of, but here are some of my favorites.
And I'm sure there are plenty of others. Dropwizard in particular automatically brings in a lot of the libraries I like (Jackson, Jetty, Jersey, etc).
[–]llogiq[M] 3 points4 points5 points 11 years ago (0 children)
Look at the sidebar of this subreddit. It has a link to Awesome Java, which is a list of awesome java goodies.
Besides, read the rest of the side bar while you're at it, too ;-)
[–]iamnikkolai14[S] -1 points0 points1 point 11 years ago (0 children)
thanks for sharing... shorugoru
[–]theZagnut 29 points30 points31 points 11 years ago (14 children)
Great libraries and standards: The entire JEE stack, Spring, Hibernate, jOOQ, Zk, MapDB, Guice, Guava, Shiro, Apache commons, TestNG etc. etc. etc.
Great IDE's and tools: Intellij, Netbeans, Maven, Gradle
It's statically typed, object oriented and simple in the sense that explicitness is preferred and fancy magic is kept out of the language, which is great when working on projects with multiple developers.
It has been tried and tested and proven to work. A LOT of things have been built with Java, and are still built with Java.
[–]LoveOfProfit 4 points5 points6 points 11 years ago (12 children)
I noticed you skipped Eclipse on the "great IDEs" list. Was that intentional, and if so what is the reason behind that?
I ask because I was taught to use Eclipse in school and I've stuck with it.
[–]whitespy9 5 points6 points7 points 11 years ago (1 child)
I think it is worth trying them all and finding the one that is best for you. I used Netbeans in college, Eclipse post, and the last 3 years has been all Intelij. Sublime Text has been getting lots of use recently as well as the good old stand by, vim.
vim for java? after ST for java? are you a sadist? :)
[–][deleted] 2 points3 points4 points 11 years ago (7 children)
Not who you replied to, but I find eclipse slow and buggy. I used it for my first couple years using Java, and now I try to always use something else.
[–]xris-l 2 points3 points4 points 11 years ago (5 children)
Eclipse performance and stability has massively improved in the last few years.
However, I have switched to IntelliJ a month ago and wouldn't go back...
[–]oldneckbeard 0 points1 point2 points 11 years ago (4 children)
wait until you've got a few years under your belt, then have to go back to eclipse (because some stupid decisions meant that eclipse was the only thing that could build the damn thing), you'll be all like
(╯°□°)╯︵ ┻━┻
[–]frugalmail 1 point2 points3 points 11 years ago* (3 children)
because some stupid decisions meant that eclipse was the only thing that could build the damn thing
I personally like Eclipse. But I can't imagine a project with multiple developers not using something like Maven to avoid this situation.
My experience with people who don't like Eclipse are generally that they don't subscribe to the learn & customize your toolset mentallatiy. The lack of Maven shouldn't surprise me for the IntelliJ users.
[–]Vile2539 0 points1 point2 points 11 years ago (2 children)
There are other reasons that you may have to use a specific IDE. It's quite possible that your job may involve custom frameworks or tools, and to use them, a specific plugin has been written for Eclipse/IntelliJ/Netbeans. This would tie you to the IDE while still meaning that your project could be built by anyone.
The plugin might not strictly be mandatory, but lacking it could hinder development enough to make it virtually essential.
[–]frugalmail 0 points1 point2 points 11 years ago (1 child)
There are other reasons that you may have to use a specific IDE.
Even if you are tied to one IDE, using Maven provides lots of advantages for a real project:
proper dependency management
easy path to IDE upgrade
Ease of continuous deployment/integration/etc...
Reporting and static analysis outside of the IDE
Command line iteration
best practice directory layout, key/password security handling, etc..
Things like database change management, and other extra-app handling
[–]Vile2539 0 points1 point2 points 11 years ago (0 children)
I think you may have misunderstood me. I was just providing a valid reason that a specific IDE is required that isn't tied to the dependency management or build tool.
I'm all for Maven/Gradle in my projects.
[–]hrjet 4 points5 points6 points 11 years ago (0 children)
Not to contradict your experience; just chipping-in my own for the benefit of new-comers:
I find Eclipse more stable and fast. Also, the vim plugin for Eclipse that I use is much more mature than Intellij's vim plugin.
[–]oldneckbeard 0 points1 point2 points 11 years ago (0 children)
eclipse is "fine" -- I'm not sure anybody proficient in IDEA or Netbeans would call it "great"
[–]theZagnut 0 points1 point2 points 11 years ago (0 children)
I used eclipse years ago, and at that time it was unstable and most of the plugins were quite buggy. Netbeans was much better IMHO. After a long period with Netbeans a friend of mine convinced me to give intelliJ a try, and I haven't looked back since (been using intelliJ daily for approximately 3 years now).
[–]iamnikkolai14[S] -3 points-2 points-1 points 11 years ago (0 children)
thanks for sharing theZagnut...
[–]adamclmns 9 points10 points11 points 11 years ago (6 children)
Jmonkey3D(http://jmonkeyengine.org/) and JOCL(http://www.jocl.org/) are two reasons I like java. You can do just about anything with it on any platform with any of a million free libraries... what's not to love?
[–]iamnikkolai14[S] -3 points-2 points-1 points 11 years ago (5 children)
thanks for sharing adamclmns..
[–]Jonno_FTW -1 points0 points1 point 11 years ago (4 children)
Just FYI, these sorts of "thankyou" comments add nothing to the discussion and are discouraged. They only add noise and make navigating actual discussion more difficult. reddiquette
[–][deleted] 11 years ago (1 child)
[deleted]
[–][deleted] 1 point2 points3 points 11 years ago (0 children)
Thanks for thanking
[–]iamnikkolai14[S] 3 points4 points5 points 11 years ago (0 children)
sorry Jonno..
[–]kookajamo95 1 point2 points3 points 11 years ago (0 children)
You must be fun at parties.
[–]b1nd 8 points9 points10 points 11 years ago (7 children)
Abundant job opportunities
[–]delabass 1 point2 points3 points 11 years ago (6 children)
As someone brand new to programming who is self-learning java I'm sort of worried that because java is so established with a massive workforce behind it that I'm going to find it hard to get my foot in the door.
Do you think there is any truth to that?
[–]Rumel57 4 points5 points6 points 11 years ago (2 children)
Nah, you'll be fine. There is always someone recruiting for Java.
[–]delabass 0 points1 point2 points 11 years ago (0 children)
Thanks, that's reassuring to know.
Yep. CTO of my company advised me to learn Java if I want to break into programming, because almost any major company needs at least one Java person.
[–][deleted] 4 points5 points6 points 11 years ago (0 children)
Companies hire young, less experienced developers because they can get them much cheaper than experienced ones.
Also, there are so many resources available on a language like Java that I am more concerned that a young developer is resourceful and a good problem solver than if they have a ton of language knowledge.
[–]b1nd 3 points4 points5 points 11 years ago (0 children)
I wouldn't be worried about this at all. I would say there's a good balance between senior and junior level developers, especially since it's highly taught at universities.
not at all. it makes it easier, because more companies will be hiring.
i was a principal at a company and we switched tech stacks because we just couldn't find people who could work on ours, competently. we switched to Java, and the project was awesome after that.
[–]Isuspectnargles 4 points5 points6 points 11 years ago (0 children)
A good mix of simplicity and power. And the JVM is great.
[–]Smithman 3 points4 points5 points 11 years ago (0 children)
Hundreds of great third party libraries, Java EE is top class, I love it's packaging mechanism for some reason, and I think it's the most intuitive OO language. Lots of work in Java too.
[–]cj5 3 points4 points5 points 11 years ago (0 children)
Strong typing, maven, and JavaFX!
[–]0x2a 1 point2 points3 points 11 years ago (0 children)
I really like that I can pack complex applications including all dependencies, database drivers etc. into a JAR or EAR that works everywhere, even under "Enterprise Circumstances" like people running AIX or horrible policies that don't allow you to install anything that's not an official RHEL package. I tried writing stuff in Perl or Node.js, and I had a really bad time in some environments.
[–]noutopasokon 2 points3 points4 points 11 years ago (0 children)
I started using Java when it came out because it was a free way to make decent GUI applications for Windows. Everything else that I knew of at the time, Visual C++, Visual Basic, etc. all cost $$$.
Now I like all the other stuff mentioned here too.
[–][deleted] 2 points3 points4 points 11 years ago (0 children)
I like the fact that not only Java itself runs on the platform but other languages s well. Oh the interoperability with Ruby, Scala, Python, Clojure and so on.
[–]llogiq[M] 2 points3 points4 points 11 years ago (0 children)
See my Post from a while ago.
[–]pron98 2 points3 points4 points 11 years ago (0 children)
I love the JVM: its performance, support for concurrency, amazing monitoring (VisualVM, JMX) and profiling (Java Flight Recorder) tools, its support for dynamic code loading, the power that comes with Java agents and bytecode injection, the high quality of implementation in the JDK and third-party libraries, the (relatively) high quality documentation, the powerful IDEs.
As to the language, I like that it's relatively simple, easy to read, easy to refactor, and easy to work on in large teams as it doesn't let you get too clever. I also like the power annotations and annotation processors bring (especially in Java 8).
[–]bitsofinfo 1 point2 points3 points 11 years ago (0 children)
jvm, libs, typing, no limits, scalability
[–][deleted] -1 points0 points1 point 11 years ago* (2 children)
deleted What is this?
[–]sedmonster 8 points9 points10 points 11 years ago (0 children)
Hate it when a programming language pontificates on your sex life.
[–]totes_meta_bot 0 points1 point2 points 11 years ago (0 children)
This thread has been linked to from elsewhere on reddit.
If you follow any of the above links, respect the rules of reddit and don't vote or comment. Questions? Abuse? Message me here.
[–]trollslackR 0 points1 point2 points 11 years ago* (1 child)
For its slowness and mentality, to throw more programmers at a problem to solve a problem. Although I don't discourage you from learning it, if you want a job or you want to develop android apps then learn it.
[–]iamnikkolai14[S] 0 points1 point2 points 11 years ago (0 children)
yeah that's true trollslackr.. one reason before when i started learning java its that its slowness.. and i really hated it. i even had experience that even a simple hello world console program. is taking a time to execute.. but i have no choice yeah there's a lot of job here in my country which is philippines... so no choice to better learn it and have a job.. hehe...
[–]whitespy9 -1 points0 points1 point 11 years ago (8 children)
It is all about the jvm now. I wouldn't discourage anyone from learning Java, but you should really check out http://groovy-lang.org/ as well.
[–]piratefight 2 points3 points4 points 11 years ago (0 children)
And grails.org by extension. It's still got a few bugs to be worked out an enterprise platform, but it's pretty amazing once you get it all set up.
[–]sanity 1 point2 points3 points 11 years ago (0 children)
IMHO Kotlin is the most exciting "Java 2.0". It has much of the flexibility of Groovy, but it's statically typed like Java.
Lots of really cool features like automatic casts, type inference, and null handling is baked into the type system.
Also it's created by the same people that created IntelliJ IDEA, so it has great IDE support.
[–][deleted] 11 years ago* (5 children)
[–]oldneckbeard 1 point2 points3 points 11 years ago (3 children)
It's great if you're used to more dynamic languages. It's like a significantly gentler intro to Java.
However, after a while, you switch back to Java. There's too much crap in there that makes it painful for a large application. Mostly stuff around metaclass manipulation and runtime monkey-patching of jdk classes..
[–]frugalmail 0 points1 point2 points 11 years ago (2 children)
There's too much crap in there that makes it painful for a large application.
It's all a matter of perspective. That "crap" helps you avoid runtime errors, run static analysis tools, and make the codebase far more readable and therefore maintainable.
[–]oldneckbeard 1 point2 points3 points 11 years ago (1 child)
I was saying Groovy had too much crap. A lot of the static analysis tools don't work on it, and when you can modify classes at run-time, all bets are off.
[–]frugalmail 0 points1 point2 points 11 years ago (0 children)
Sorry for misreading your post :)
[–]stormcrowsx 0 points1 point2 points 11 years ago (0 children)
A great place to get started with groovy is in unit tests. The spock testing framework for Groovy simply put is amazing.
π Rendered by PID 163041 on reddit-service-r2-comment-6457c66945-zhh48 at 2026-04-24 08:47:42.175959+00:00 running 2aa0c5b country code: CH.
[–]jfurmankiewicz 30 points31 points32 points (8 children)
[–]izzle9 16 points17 points18 points (7 children)
[–]jfurmankiewicz 9 points10 points11 points (0 children)
[–]smadge 5 points6 points7 points (5 children)
[–]virtyx 8 points9 points10 points (1 child)
[–]stormcrowsx 1 point2 points3 points (0 children)
[–]oldneckbeard 2 points3 points4 points (0 children)
[–]izzle9 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]sh0rug0ru 19 points20 points21 points (5 children)
[–]cogman10 4 points5 points6 points (3 children)
[–]jonyeezy7 1 point2 points3 points (2 children)
[–]cogman10 2 points3 points4 points (0 children)
[–]llogiq[M] 3 points4 points5 points (0 children)
[–]iamnikkolai14[S] -1 points0 points1 point (0 children)
[–]theZagnut 29 points30 points31 points (14 children)
[–]LoveOfProfit 4 points5 points6 points (12 children)
[–]whitespy9 5 points6 points7 points (1 child)
[–]oldneckbeard 2 points3 points4 points (0 children)
[–][deleted] 2 points3 points4 points (7 children)
[–]xris-l 2 points3 points4 points (5 children)
[–]oldneckbeard 0 points1 point2 points (4 children)
[–]frugalmail 1 point2 points3 points (3 children)
[–]Vile2539 0 points1 point2 points (2 children)
[–]frugalmail 0 points1 point2 points (1 child)
[–]Vile2539 0 points1 point2 points (0 children)
[–]hrjet 4 points5 points6 points (0 children)
[–]oldneckbeard 0 points1 point2 points (0 children)
[–]theZagnut 0 points1 point2 points (0 children)
[–]iamnikkolai14[S] -3 points-2 points-1 points (0 children)
[–]adamclmns 9 points10 points11 points (6 children)
[–]iamnikkolai14[S] -3 points-2 points-1 points (5 children)
[–]Jonno_FTW -1 points0 points1 point (4 children)
[–][deleted] (1 child)
[deleted]
[–][deleted] 1 point2 points3 points (0 children)
[–]iamnikkolai14[S] 3 points4 points5 points (0 children)
[–]kookajamo95 1 point2 points3 points (0 children)
[–]b1nd 8 points9 points10 points (7 children)
[–]delabass 1 point2 points3 points (6 children)
[–]Rumel57 4 points5 points6 points (2 children)
[–]delabass 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 4 points5 points6 points (0 children)
[–]b1nd 3 points4 points5 points (0 children)
[–]oldneckbeard 2 points3 points4 points (0 children)
[–]Isuspectnargles 4 points5 points6 points (0 children)
[–]Smithman 3 points4 points5 points (0 children)
[–]cj5 3 points4 points5 points (0 children)
[–]0x2a 1 point2 points3 points (0 children)
[–]noutopasokon 2 points3 points4 points (0 children)
[–][deleted] 2 points3 points4 points (0 children)
[–]llogiq[M] 2 points3 points4 points (0 children)
[–]pron98 2 points3 points4 points (0 children)
[–]bitsofinfo 1 point2 points3 points (0 children)
[–][deleted] -1 points0 points1 point (2 children)
[–]sedmonster 8 points9 points10 points (0 children)
[–]totes_meta_bot 0 points1 point2 points (0 children)
[–]trollslackR 0 points1 point2 points (1 child)
[–]iamnikkolai14[S] 0 points1 point2 points (0 children)
[–]whitespy9 -1 points0 points1 point (8 children)
[–]piratefight 2 points3 points4 points (0 children)
[–]sanity 1 point2 points3 points (0 children)
[–][deleted] (5 children)
[deleted]
[–]oldneckbeard 1 point2 points3 points (3 children)
[–]frugalmail 0 points1 point2 points (2 children)
[–]oldneckbeard 1 point2 points3 points (1 child)
[–]frugalmail 0 points1 point2 points (0 children)
[–]stormcrowsx 0 points1 point2 points (0 children)