The problem isn't that GitHub isn't free, the problem is that for some reason the open source community collectively decided that all development must occur on GitHub: a proprietary platform.
There are several alternatives to GitHub that you are able to self-host that would not be subject to US law (hosted out of countries that don't sanction Iran), and even though it might be too much for a solo developer to do on their own the open source community should band together and fund efforts to spin up GitLab/Gogs/Gitea/Sourcehut instances in places that aren't subject to these sanctions.
This issue will happen with any service hosted out of the US, it's the laws that are broken in this case. Not GitHub.
Totally this. A website isn't even necessary for collaborative development, all you need is git software and a group email!
For issue tracking, you can use something like self-hosted bugzilla (or one of the several free instances out there). And for discussions, there are always things like mailing lists, forums, IRC, social networks, reddit, etc. That's how it used to be in the good old days. I don't understand why one even needs a code hosting facility.
That's a step back, Github and Gitlab did lower the barrier of accessing and then getting started to contribute to open source.
The old days is not that good. Mailing lists solve the problem of group communication, but with a twisting mental model. In my opinion, email should just be for announcements, doing public communication by email is like writing embedded software in JS, it works, but not great. Another fuss, we can't modify email that has been sent, it let people think more before posting, but people will be more afraid of posting. Forum is just better for every communication.
Bugzilla is ugly. I think issue tracker should just be a git repo with hooks to enforce its integrity. Then we can have many front-ends for it (GUI, CLI, web).
Github and Gitlab glue things up, they work on integrations so we developer have better experience, that's why we use them
GitLab, Gogs, and Gitea are all self-hostable and offer the same tools that GitHub does, if it's the convenient packaging you're after.
Sourcehut can also be self-hosted but they promote a mailing list based workflow, which I think is less of a problem than you make it out to be but then we don't have to agree on this point either :) That's the beauty of FOSS, we're free to choose for ourselves.
In an ideal world, decentralization would be the best solution.
But as how as you know, GitHub is not a simple Git hosting these days.
All of the options I mentioned offer everything github does, and they're all open source too and you can self host them.
I know github isn't just git, but we don't need github to do exactly what we are doing today.
None of the solutions mentioned are decentralized. Git is decentralized but those services are not, even if self hosted. There are very early projects like codeonchain.network/ and others starting out that are.
Different instances of X can replicate between each other, so you're not siloing your development, and by decentralisation I was referring more to the fact that not all open source development has to happen on a single platform.
It's OK if some projects are on GitLab, some on Gitea, and others on Sourcehut.
True decentralisation can be a worthwhile goal down the road, but right now we can solve the problem using the tools we already have.
Then we agree 😄
I spin my own git server with raspberry pi and I also use gitea. Github has nothing to do with this restrictions they're merely following US laws they don't have a say in that. All US companies have to comply with trade restrictions. Whatever you do please do not host all your code in one single point of failure.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.