RNS Logo

rns.recipes

Community Forum

Forum / General / Re: Discontinuing the GitHub Mirror

Re: Discontinuing the GitHub Mirror

Locked

Started by LinuxinaBit 2b4116b574e3a4f3... ·

joakim b918e659eeedac9a...
edited

welo wrote:

in my uninformed opinion the main thing lacking from reticulum is the documentation (be it of the implementation and how to build ontop of it)

You're right, that is an uninformed opinion :) Because the manual is really comprehensive and does include examples. Reticulum is very complex network software, it requires a good understanding and a mininum of skills in order to build upon it. But it's all there in the manual, if you take the time to read it.

It is possible to contribute to Reticulum, the old school way with communication and patches. Heck, even I have. But the bar is relatively high, as it should be for a project like this.

I know people often react to the way that this project is run. It's not your typical open source project. I could list some reasons why I think that's a good thing, instead I'll quote E. F. Schumacher:

The modern industrial system has a built-in tendency to grow; it cannot really work unless it is growing. The word “stability” has been struck from its dictionary and replaced by “stagnation”. Its continuous growth pursues no particular aims or objectives: it is growth for the sake of growing. No one even enquires after its final shape. There is none; there is no “saturation point”.

That is the mentality of our society, and by extension of open source. For a project like Reticulum, I believe stability and integrity are much more important than metrics like speed of growth or numbers of contributors.

That said, I think some kind of bug/issue tracker would be good. Users need a way to report issues for developers to be aware of them.

Mark bc7291552be7a58f...

Instead of answering comments individually here, I'll just say that Joakim's reply pretty much sums it up. The E. F. Schumacher quote perfectly illustrates the ontological schism that makes it so tiresome to deal with stuff like this.

There is, in this day and age, between different people, widely different base conceptual integrations of what "open source" means. For many people, "open source" has become synonymous not with skilled people working together in a coordinated and careful way on complex engineering challenges, but a sort of growth- and attention-focused "free-for-all" behavioral codex that must be followed above all else; a social modus operandi of fake inclusivity where everyone "should have their voice heard", and adherence to the process is weighed much higher than the final results.

I do not subscribe to, and consequently do not operate the Reticulum project under any versions of this idea.

Here's the statistical, boring reality:

  • Around 90% of pull requests and "recommendations" I received when people could just submit stuff via GitHub would have severely broken things, introduced bugs or security issues, created roadblocks for future work, or otherwise damaged the software. Usually just for the sake of satisfying a random newcomers "idea" or personal preference.
  • Similarly, around 90% "bug reports" were actually people asking for help, because of having failed to read even the most basic parts of the documentation.
  • The people with the least amount of understanding, skill and effort invested tend to be loudest and most vocal. When all you have is "opinions", those are iterated upon ad infinitum, apparently.

Can you imagine how much time that wasted? Can you imagine what we could have accomplished with that time instead?

The only thing that this creates is noise and confusion. Clogging up the mental and physical workspaces, of people who are actually investing time and effort on the project with stuff like that is objectively just taking time that could have been used on development, and replacing it with nothing.

Even this thread is, in some regards, an example of this phenomenon. In the time I have used to read, carefully consider, and formulate a reply to this, I could have gotten a good deal of the way with implementing fork and mirroring support in rngit. What do you think would have been best for the actual users of Reticulum? What has really happened here, other than stating personal opinions?

Mark bc7291552be7a58f...

I was receiving actual bug reports, pull requests, proper technical investigations and patches via methods outside GitHub and "public" internet-based channels way before GitHub interaction and similar was closed down. That was were almost all of the real contributions were coming from, anyway. Apparently, and not unsurprisingly, the people who has invested the time and effort to understand Reticulum also prefer to collaborate in this way. Since leaving that madhouse behind, the signal-to-noise ratio has significantly increased.

Managing a public "issue" tracker with global read/write access is a futile and useless endeavor. Consider this:

  • User A reports a "bug" that is really just a failure of understanding.
  • User B sees this and seconds is, proposing a "fix" that in continued failure of understanding would actually break functionality X.
  • User C joins the bandwagon and asks why this hasn't already been implemented like that? It's obvious!

The sensible response here from the developer is closing the issue with "No. Go RTFM". Today, though, this usually results in hurt feelings, animosity towards the developer and in some cases (as experienced and documented in the case of RNS), months of perfidious personal vendetta against the developer for being so brazen as to suggest the user was wrong and wasting people's time.

When this pattern repeats, over and over, the only sensible, measured and constructive course of action is to shrug your shoulders and say:

"This system is fundamentally broken. It ain't working. I can give up here, or I can go build something better that has a chance of working."

So, now it's your turn. Go look at the diffs for the last six months. What does it look like I have been doing?

But I will be damned straight with you all, and say that part of that solution is absolutely to erect barriers to entry. You can fucking bet your arse on that. I don't want opinionated man-babies running around in my living-room at 3am. I don't want to clean up the floor after a wannabe "dev-ops stars" with LLMs and a peripheral case of influencitis has puked all over the office.

  • If you want to join the fun of changing core networking code that thousands of people rely on for communication daily, you better know what the fuck you're doing.
  • I'm not here to provide validation and hugs to random strangers. I'm here to make sure the reference implementation of Reticulum works.
  • If you cannot figure out how to submit a patch or valid bug investigation over RNS, you cannot expect I will take you seriously. At all.

If someone can't handle that, they should find their entertainment elsewhere.

I've said it before: I've provided the information and code required to make Reticulum work, and build networked systems, protocols and applications on top of it. That information is deep, complex, and requires you to read hundreds of pages, and put in weeks of efforts to get the full picture.

This is a full networking stack, based on some pretty complex principles, for crying out loud. It's not a hello_world designed to make you feel good about yourself. It turns almost everything about networked systems on its head. That's challenging for anyone. Climb the mountain, and it will be satisfying in the end. Refuse to climb... Well, what do you think will happen?

As for barriers to entry of using RNS and related programs, utilities and clients, it's not my task to teach every single user how to do X, Y and Z. The information is out there. If it wasn't organized optimally for your way of learning, you can choose to "raise your concerns" about it, discuss "the fact of it" on a forum or chatroom, or: You can choose to remedy that, and help others along.

I sure know what I would have done.

Mark bc7291552be7a58f...

In case stuff like this comes up again, my full reply is available for referencing here:

a8d24177d946de4f1f0a0fe1af9a1338:/page/work_doc.mu`g=reticulum|r=reticulum|id=4

If future invocations of similar discussions are interested in my opinion on the matter, they are very welcome to be directed to that, since that stance is immensely unlikely to change.

Anonymous

I think issues can be posted in this forum. It will be better than the stupid github.

calebm 787304549eb14133...

Is it? Because I posted a genuine, reproducible issue that has been utterly ignored. I have been involved in open source for almost 30 years. I am not sure I have ever seen a project with such utter disdain for its actual users. Good luck with all that.

joakim b918e659eeedac9a...

@calebm You posted it 4 days ago, don't you think that's a bit early to start complaining about not receiving help from strangers for free? It hasn't been ignored, it just hasn't been seen yet by someone who has the knowledge and the time to give you a good answer. I've been in open source for about as long as you, and I've gotten used to issues being "ignored", at least for a while. That's normal.

What is it about open source that makes people feel so entitled? Someone you don't know have spent countless hours making technology that's pretty amazing, for you to use for free. Rather than gratitude and patience, there are unrealistic expectations of amazing support, having a say in development, etc.

calebm 787304549eb14133...

@joakim Who was asking for help? I ran across an error with rnode. I couldn't find a solution. So, I found a workaround. I simply want to share the issue and the workaround - firstly, because it might help someone else. Secondly, because if it is a genuine bug, I would like to see it fixed. I don't want to assume that it is a bug simply because my testing is limited. Maybe it is a quirk with the older heltecs. God knows, it has its share of issues and limitations. My frustration isn't over the issue. My frustration is figuring out the right place to share the issue, and have some sort of acknowledgement of it. And by acknowledge I don't mean Mark needs to send me a thank you card and flowers. I just mean, I need to know it is logged somewhere where it can eventually be seen when someone gets around to it. But somehow that makes me an entitled open source user? We are entitled now for finding an error, doing the actual leg work to verify the issue, documenting the versions and hardware it is reproducible with, testing it across multiple versions and then wanting to share those findings? Then spending hours tracking down where the hell to post said findings? God help us if this was something serious like a security vulnerability, instead of a vague, annoying error message. I get it. There is not a lot reticulum alternatives out there because this type network coding is hard. But this level of animosity toward people genuinely trying to help is beyond absurd.

sprell 39ca0e9212495cfe...

Well im going to attempt to solve this problem for myself and others per Mark’s suggestion. Shout out to @Ivan for all your awesome work on Reticulum-Go. What I’m experimenting with currently is modifying Gitea to be able to connect to rngit nodes thus bringing a full frontend and ‘github’ like interaction to the rngit system. I’m not 100% sure if it will work the way im hoping but at least i’ll probably learn something. I want to make it very clear I don’t feel entitled to support, a say in development, or anything of the sort. My questions posed earlier in the thread were general not specific to me and largely applied to those already contributing. I hope to get my python skills good enough to truly contribute to Reticulum, squash bugs, etc. BUT for now, this gopher will be in the Reticulum-Go codebase ;) tinkering away @Ivan if there are any tasks you need handled in your codebase I am more than happy to help to the best of my ability. @calebm if you want id happily pair up with you on fixing your rnode issue and work through the patch process and we can create some documentation for other users on how to do the same. Barriers to entry doesn’t have to equal no support documentation! ;) Also if anyone reads the above and has interest in the gitea project shoot me a message <bea9f2039196fce15995c7d760a28673> i’ll have it up on rngit sometime this evening post my work day.

joakim b918e659eeedac9a...
edited

@calebm You asked for help in the Help section of the forum, which seems to be the correct place. And yes, you do seem a little entitled by expecting acknowledgement of your issue after 4 days. As for animosity, you then said "I am not sure I have ever seen a project with such utter disdain for its actual users. Good luck with all that."

I get that it can be frustrating if you expect something like a GitHub project. Long story short, because of GitHub, it's not.

While Mark is (understandably) not a fan of issue queues, I still think it should be possible to have some sort of bug reporting functionality without all the downsides of burnout inducing issue queues. But it does seem like a hard problem to solve if the goal is to make both sides happy.

As for security vulnerabilities, I'd raise the issue in this forum or on RRC.

Anonymous

Looks like we're back to the old Matrix channel drama...

joakim b918e659eeedac9a...
edited

Yeah, I think aetherlab's gravity well theory holds :/

This thread is locked. No new replies can be posted.

Copied to clipboard