I've been wanting to get back into contributing to open source projects...

The struggle, as always it seems, is that i have no idea what to contribute too... So that leads me to a question.

Anybody have any recommendations for discovering new projects that are looking for contributors?

I'd like to provide my time to smaller projects that are struggling to find contributors, rather than giant projects that have visibility already.

Show thread

@EclecticEclipse there are like 1000 projects looking for help in the fediverse. What are your skills and what would you like to work on? I can point you in some directions if you'd like. I get hundreds of messages in my feed of people asking for help with their projects here.

Follow

@liaizon hey, thanks for reaching out!

I'm a python/systens dev, with a plethora of experience in automation/devops as well as web dev. Id like to find projects that sit somewhere between web technology and network integration.

Especially if something has to do with networking. I love geeking out on networking stuff. Or music software.

I also have a personal mission to help projects meet accessibility standards where i can.

@josias @liaizon ive done enough go that i can read through a codebase and slowly come to understand it. Cant say I'm an expert or anything, but i know enough to teach myself as i go.

Rust on the other hand is not something I know well enough to provide anything meaningful.

@EclecticEclipse @liaizon
I have worked with Go a lot over the last few months.
This project is very interesting in my opinion (and needs contributors):
github.com/muesli/telephant

@gudenau @liaizon I cant say I'm very familiar, but im already extremely interested.

Ive started making my way through this whitepaper to familiarize myself:

bford.info/pub/net/p2pnat/inde

I'd love to see your codebase. Im already very interested in the technology, and want to try to implement it myself regardless of any contributions to other projects.

@EclecticEclipse @liaizon I get why it works, I just can't seem to wrap my head around how to implement the IP/port exchange correctly. I don't really have code for it, this project won't get going until I have a working example in Java.

@gudenau

Hmmm... Its been years since I've done any Java so I might not be too much help.

I'll make my way through the aforementioned white paper and try to implement it in Python (and brush up on my java), then get ahold of you for more.

@liaizon

@EclecticEclipse The TCP stack is probably going to get replaced soon anyway, but I can try and port it.

Not 100% sure how I could test it with a single NAT though.

@gudenau I'm more than happy to do testing for you. I've got my own subnet, as well as makers and hackers out the wazoo to test with.

Might not be a good variety in NAT tech, but still. Good place to start!

@EclecticEclipse The only way you can't establish a connection (as far as I know) is if both client NATs use random port mappings.

But I'm not an expert.

@gudenau I'm pretty OS agnostic, but primarily use Debian/ubuntu.

I have one machine running basically every major os type (macos, windows, linux, etc), im just missing BSD.

@EclecticEclipse I have Windows and Arch myself, so I can throw a Linux binary at you that can run my stuff and setup it's own Java environment, good to know.

Could send as source when the time comes if you would like.

@gudenau Both formats are great for testing.

I trust myself to compile from source, but not the makers/hackers that I know.

You should also try to set up some amount of automated logging & reporting for said testing. In that case, I can ask a maker to "run this code and email me the text file it makes".

Windows and linux binaries are things I can easily circulate for testing in the wild.

@EclecticEclipse Once I can get a system working that could handle the P2P stuff I would be good for a while as I build of the rest of the app before I needed more testing.

I have some interesting ideas on how to only share peer details with trusted peers. The biggest issue I can forsee with this is requiring an out of band channel for the initial connection. I am sure there would be a way to do "fix" this issue but I am not good enough with crypto to design such a system.

@gudenau not that i really know much of anything, but i doubt you have to stay on random ports.

one of the examples i found (stackoverflow.com/questions/26) was using regular/non-randomized ports...

Sign in to participate in the conversation
Fosstodon

Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.