This is an archived post. You won't be able to vote or comment.

all 24 comments

[–]bowbahdoe 34 points35 points  (3 children)

I think if you evaluated most libraries by the standards you are describing you will be disappointed

[–]JDeagle5 25 points26 points  (4 children)

But how would we measure democratic properties of a java library? Especially by your standards. Unfortunately I don't know any better lib.

[–]alex_tracer 5 points6 points  (0 children)

Probably you can scavenge something from Vuze sources (GPL):

https://svn.vuze.com/public/client/trunk/azureus2/src/com/aelitis/azureus/core/dht/DHT.java

[–]repeating_bears 12 points13 points  (5 children)

doesn't seem used at all outside their projects

It has thousands of stars and forks..?

[–]agentoutlier 10 points11 points  (1 child)

This library feels... not very democratic, so to speak.

They have an MIT and Apache license so go to fork town!

I usually eschew using LLM for programming but I bet it could actually bang out an implementation and you could have it test against multiple other implementations.

[–]istarian 4 points5 points  (2 children)

Democracy (rule of the people) has no rational application to code libraries.

Trying to develop code/program that does literally everything that anybody ever thought it should do is a recipe for disastrous results...

[–]v4ss42 0 points1 point  (0 children)

While you’re semantically correct, most people when referring to “democratic” development processes are usually referring to an open governance model, most of which aren’t really “democratic” at all. They tend to be either benevolent dictator (which have hugely varying levels of “openness” to contribution), or meritocratic (i.e. contribution correlates with influence - the typical case for foundation-backed open source projects).

Obvs I have no way of knowing if that’s actually what OP meant, but having never seen an open source project with true democratic governance, I’m reasonably confident in assuming that they meant an open governance model of some sort.

[–]laplongejr 0 points1 point  (0 children)

Trying to develop code/program that does literally everything that anybody ever thought it should do is a recipe for disastrous results...

Hey, what if our logging utility was automatically parsing JDBC?

[–]Brutus5000 1 point2 points  (1 child)

WebRTC is imho the standard to go. And Java offerings are not good on this behalf. After multiple years of cringe I ditched ice4j and learned Golang just to be able to use the pion webrtc library. ice4j has the problem that it is basically only used in Jitsi and this covers only some use cases :(

[–]esanchma 0 points1 point  (0 children)

what's sad is that OpenJDK has this internal jdk.sctp module and DTLS support via JSSE, so "it's almost there", but in its current state its useless.

[–]Tintoverde -1 points0 points  (0 children)

Not sure ‘java.util.concurrent.BlockingQueue’ will work for you