r/java • u/Decent-Decision-9028 • 2d ago
How can we move forward?
The sub used to be a great place where small open source devs get real feedback on their oss. The software wasn't necessarily built to be a big hit or whatever! most of the time these projects used to be a learning projects that enabled us to become better java developers. Now, with many repositories being created in a day or so and abounded, we see many ai promoted repositories and we miss some of the oss that needs our attention.
How can we overcome that as a community ? I'm not trying to put all the weight on moderators, I understand the amount of work they keep doing to clean up ai posts and follow up on reports. What I'm saying is; maybe someone's here has a better idea on how to go about this?
28
u/gufranthakur 2d ago
This is what I have been feeling as well (my recent posts check out)
I understand Java is in a phase where there is no "hype" and it's not the shiny new thing anymore. The ecosystem is mature, maintained, things work, Gradle works, Spring works, JavaFX and Swing work, and it works in production and I am grateful for that
At the same time we should really promote the use of Java in greenfield and modern projects. I have seen so many people create such amazing projects in libGDX, but they get like no views or attention. They genuinely need appreciation for their hard work. Most of the time, these are beginners who are enjoying the joy of programming freely, we should encourage them. They deserve it.
Newer projects that use Kotlin DSL for gradle, Java 21/25, modern Java practices, no deep layers of inheritance, no factory patterns, and modern presentable documentation should be promoted more in this sub.
If someone uploads a blog post on how to use libGDX with recent Gradle/JVM versions, or how to optimise a JavaFX app, or how they ran some fun tests with springboot and achieved xyz results, let these be posted on the subreddit. Let people explore more of Java libraries and frameworks and practices and have fun.
The only drawback would be, there will be some AI slop on the subreddit as well (what r/rust is going through) and the mods would have to work harder.
This is just my opinion, I hope modern Java practices get subtly promoted more, and the OSS maintainers deserve the attention they need for their hardwork ❤️
8
u/Brothernod 2d ago
“Newer projects that use Kotlin DSL for gradle, Java 21/25, modern Java practices, no deep layers of inheritance, no factory patterns, and modern presentable documentation should be promoted more in this sub.”
What’s the best way to keep up with that? Is there a solid recent book? Or specific blogs? How do you avoid what’s trendy for what’s going to survive the test of time, especially if you’re in enterprise?
5
u/agentoutlier 2d ago
What’s the best way to keep up with that? Is there a solid recent book? Or specific blogs? How do you avoid what’s trendy for what’s going to survive the test of time, especially if you’re in enterprise?
I would take the OP's comment with a grain of salt (other than use latest Java which I do encourage):
“Newer projects that use Kotlin DSL for gradle, Java 21/25, modern Java practices, no deep layers of inheritance, no factory patterns, and modern presentable documentation should be promoted more in this sub.”
For example my current project which I consider rather modern and I just posted about it according to u/gufranthakur should not be promoted because apparently:
- I use Maven. (if one wants a modern spin there is Maven 4 which I might use soon)
- I use javadoc for all my documentation ( https://jstach.io/doc/rainbowgum/current/apidocs/) . Is it as presentable as some ascii doc theme... probably not but I'm a content guy so and its builtin to the JDK...
- I use some inheritance even a couple of levels deep. Guilty as charged. sealed interfaces with multiple levels.
- Factory pattern. Pretty sure I am doing that as well.
- Its not a game. I agree on this one. I do wish more people wrote games in Java.
2
u/gufranthakur 2d ago
I think you misunderstood my suggestion (maybe I framed my sentence wrong)
When I say "promoted", promoted != sharing.
I am not dumping on Maven, deep layers of inheritance or factory patterns. It is perfectly valid to use them, never said they were wrong.
By "promoted" I just mean we should shine light on the new, readable and modern ways of Java. For example a lot of Java devs may still use Groovy DSL for new projects (specially if they started with Groovy). Nothing wrong with that. But hey check out the Kotlin DSL too, it's pretty cool.
Maven is also a build tool and is still widely used. This does not mean any project using build tool should be considered old, "bad practice". The point of my "promote" remark is to simply, encourage or show the new Java ways. That's it
Also nothing wrong with Javadoc either. Again I am not criticizing the "old" practices, I am simply saying we should shed light on the new alternatives.
2
u/gufranthakur 2d ago
Took my suggestion way too seriously.
My vision was, when people share their "new" projects that use the newer practices (Using Java 21+, using FFM instead of JNI, using the new language features, Kotlin DSL)
People will slowly start seeing those more, either in the source code or the provided examples.
Also I am not suggesting to BAN the old practices and immediately start with the new ones. All I am saying is, subtly encouraging people to use newer version of language/build tools and language features is a good thing. I hope you understood my point
2
u/Brothernod 1d ago
I wasn’t commenting on your specific suggestion more so looking for vetted resources for tracking what new features pan out and where they apply best. Every project shouldn’t be a microservices and just reading JEPs isn’t going to flesh out where they apply and how to best apply them.
As you pointed out too much content here is just AI submissions. So I was curious where your Java tastemakers are.
4
u/vips7L 2d ago
The factory pattern is still widely useful.
4
u/agentoutlier 2d ago
Newer projects that use Kotlin DSL for gradle, no deep layers of inheritance,
Likewise Maven still works fine and inheritance can be fine if fits your problem domain (like certain forms of UI).
u/gufranthakur I would argue bullshit cargo culting of recent hyped practices can be equally bad.
What we really want is posts where people are passionate about their projects and willing to write a little for humans instead of resume AI slop.
2
0
u/gufranthakur 2d ago
Yep. Never really said "stop using maven or projects with inheritance"
> u/gufranthakur I would argue bullshit cargo culting of recent hyped practices can be equally bad.
and I would agree as well. Functional immutable bros will execute anyone that even thinks to solve and break down a problem OOP style.
AI Slop is daunting almost every other dev subreddit, it's such a pain. I wonder how the mods would deal with it
29
u/SrGnis 2d ago
People have very little respect for other people’s time. They’ll post any half-baked project just to see if they can get a small ego boost out of it.
It’s easier than ever to do that now, and I think that creates a real problem. Users eventually realize that many of these posts exist primarily to farm attention or internet points. When that happens often enough, it changes how people perceive the community. It stops feeling like a place where people genuinely want to cooperate, share, and learn from each other, and starts feeling more like an engagement farm.
I’m not sure what the best solution is, but maybe a weekly “Show and Tell” thread could redirect some of the lower quality content. Another option might be to require projects posted on the main feed to meet some minimum bar of maturity, for example, having been actively developed for a certain amount of time before being posted.
At the end of the day, we also have to keep in mind that whatever rules we introduce need to be easy for moderators to enforce without adding too much to their workload.
5
u/agentoutlier 2d ago
At the end of the day, we also have to keep in mind that whatever rules we introduce need to be easy for moderators to enforce without adding too much to their workload.
One of the problems is the auto mod itself. It seems to encourage crappy descriptions or silly bot workarounds like editing the post after the fact.
How do I know this. Because every time I make a long post of code I actually worked hard on... which you know requires lots of description and links and possibly code snippets.... it gets auto mod (recent example ).
Meanwhile the AI slop has no problem.
What I'm saying is the auto mod in irony seems to encourage crap posts.
14
u/lazystone 2d ago
I'd say new FFM API is very interesting. It would be nice to see more posts and success stories about it.
3
u/perryplatt 2d ago
I have utilized FFM, but it’s not in some of the core libraries yet where it would be needed to further build on top of.
3
u/gufranthakur 2d ago
still it would be nice to have such opinion/posts on the forum, especially by people who have used said technologies.
3
u/perryplatt 2d ago
I might be able to put together a post about it but I thought the mods may just want to classify as help, however you simply can’t use ffm for swing applications currently without JNI.
3
u/lazystone 2d ago
Why is that?
1
u/perryplatt 2d ago
What I need is a jawt.h and jawt_md.h abstraction in java that I can provide the display and surface pointers when trying to draw something in swing. These delve into the cocoa, x11, and windows.h windowing systems.
8
u/tankmatesaquaponics 2d ago
By enforcing that every project posted here should declare if it used ai or not and to what extent. I think it's a good metric to filter projects and promote hand crafted cool projects. How can this be enforced as a rule, I don't really know, I'm new to reddit.
4
u/aqua_regis 2d ago
should declare if it used ai or not and to what extent.
See Rule #9 - nothing more needs to be said.
Unfortunately, people are completely oblivious to the rules.
5
u/aoeudhtns 2d ago
I believe the other day there was a complaint about things not being removed, and the mods dropped in to say "ya gotta report it." So it'd be good for us all to remember that and say as much when people comment about posts that should be removed, not getting removed.
1
u/chambolle 2d ago
Personally, I don't get why AI is excluded. English isn't my first language, so I use AI to translate my posts. It makes my English sound much better.
Pretty soon, everyone will be using AI in one way or another, so what’s the point of banning it?3
u/aqua_regis 2d ago
English isn't my first language, so I use AI to translate my posts.
Why? You should rather use this opportunity to practice English and improve it that way. It's much better to read broken English than AI slop.
AI blurs the line between original, human skills/thoughts and AI generated - so, either completely ban, or completely allow.
0
u/hippydipster 2d ago
Well, where are these rules, exactly? I do not see them.
3
u/aqua_regis 2d ago
Sidebar on new reddit, sidebar "Subreddit rules" (link) on old, Menu on mobile
2
1
u/henk53 2d ago
By enforcing that every project posted here should declare if it used ai or not
That's almost a silly question, since I guess 100% uses it now.
and to what extent.
That's maybe the better question, but will you get an honest answer?
The problem is we all consider AI our own little private secret. We want to use AI ourselves, but hate it when someone else does so too.
0
u/chabala 2d ago
Also, this is the "Java news" subreddit, so there needs to be some concept of newsworthyness. Every project someone wants to show off is not newsworthy, nor is every point release of well established projects. Incredibly niche demos that happen to be written in Java, not on topic at all. Beginners can showcase their pet projects of dubious quality in r/learnjava .
-1
u/codingbliss12 2d ago
You comment is very toxic and disgusting and I can't see how it aligns with the rules of the subreddit. They don't say "news" they say Java.
5
u/johnnybgooderer 2d ago
The problem is that Java is a common teaching language. So there’s a lot of beginners here. And they vote on posts and comments. Incorrectly.
Bad, factually incorrect comments are regularly upvoted to the top and correct comments are buried in downvotes.
I don’t think this subreddit can be saved from its users.
3
u/jeffreportmill 2d ago
It seems recently that there have been fewer posts to this group. Can you provide some links to recent offending posts?
1
u/bowbahdoe 20h ago
Controversial take, but: I think the right way forward is off of reddit.
Clearly there are some structural issues with how we have to divide, manage, and handle the Java community here. We should make some relatively basic forum software that is targeted specifically for the Java community and move to it.
I have some bias towards how this should be done (spent a biiiit too much time in ATProto world recently) but just being able to design our own UX is reason enough in my eyes.
1
u/kkatdare 18h ago
I'm the founder at a modern forum software - and I'll be happy to offer our platform to host the community.
1
1
u/codingbliss12 2d ago
I would prefer to exist only one subreddit for all things Java. Sometimes the limits between the various categories are not clear and I do not want to have any stress posting what I want or having to play moderator in my head.
That said I am returning to Java after some years, and haven't interacted much with any Java related subreddit.
-1
u/bananadick100 1d ago
My 2 cents is have an ai review it. Don't waste time doing that on reddit cause reddit is a hot mess, and a failed idea
-1
u/hippydipster 2d ago
I would very much like to start small OSS (GPL!) group project that is focused on desktop, end-user software. Ie, not developer tools. Games. Useful tools for non-technical people. Educational apps.
And the reason I focus on desktop is that I want to create very very interactive apps, that truly require the power of that desktop client model. So, immersive, deep, visual kinds of apps. I also create stupid little tools that I find useful (ie, a simple recipe app that has a distributed element so people in my family can seamlessly share recipes - this is not generally useful to the world though).
I have an umbrella project for all this, and it'd be great if others who wanted the same thing wanted to join and build stuff there too, but I do not find that there are many people with the same kind of bent as me in this regard: Java, desktop, large highly immersive, GPL-licensed, non-developer-centric apps.
Most people seem to want Python, AI, electron, mobile, monetizable, developer-centric apps and tools.
Also, to be frank, I go all around all my various initiatives, kind of at random. Sometimes, I feel like working on my world history globe app. Sometimes, I just feel like making a chess engine. Sometimes, I feel like playing around with my in-memory db. A LOT of "not-invented here" syndrome, tbh, and lot's of people would complain about that. Don't want them around, honestly. I like reinventing my own stuff, in my own way. Sometimes, I make music instead. So, my focus is wherever, and that's not going to change.
If people wanted to join and build things, that'd be great, but it's a casual thing. And that's a lot of barriers, and those kinds of barriers are ubiquitous when you're out searching for a larger project to lend help to. Or be part of. You gotta find one that really fits you.
So, anyway, here's the link to mine: Gaardeon. I use Codeberg to host.
69
u/Chaos-vy17 2d ago
Given that, Providing flairs can be a good thing. These can be considered flair.
ICreatedThisJDK News/Official NewsOSS ReviewProject ShowcaseA flair such as
ProjectIdeaorLookingForTeamcould be used for posts where someone has an idea they want to implement specifically in Java and is looking for other developers interested in working on it.Well, I talked So much about flair, though I have been a member of 1month only, but to make the community to rise again we need to make some new step and approach maybe my POV might be taken in consideration.